C语言--正序、逆序输出为奇数的位。

题目:

采用正序和逆序分别输出为奇数的位。例如输入12345,正序输出135,逆序输出531

代码:

c 复制代码
#include <stdio.h>

void printOddDigits(int num) {
    int res = 0;
    int divider = 10;
    while (num / divider >= 10) {
        divider *= 10;
    }
    while (divider > 0) {
        int digit = num / divider;
        if (digit % 2 != 0) {
            res = res * 10 + digit;
        }
        num = num % divider;
        divider /= 10;
    }
    printf("%d\n", res);
}

void printReverseOddDigits(int num) {
    int res = 0;
    while (num > 0) {
        int digit = num % 10;
        if (digit % 2 != 0) {
            res = res * 10 + digit;
        }
        num /= 10;
    }
    printf("%d\n", res);
}

int main() {
    int num;
    scanf("%d", &num);
    printOddDigits(num);
    printReverseOddDigits(num);
    return 0;
}

结果

相关推荐
异步的告白3 小时前
C语言-数据结构-1-动态数组
c语言·数据结构·c++
想唱rap4 小时前
Linux开发工具(4)
linux·运维·服务器·开发语言·算法
前端炒粉4 小时前
21.搜索二维矩阵 II
前端·javascript·算法·矩阵
奔跑吧邓邓子4 小时前
【C语言实战(78)】C语言进阶:筑牢数据安全防线,密码学实战探秘
c语言·密码学·数据安全·开发实战
星释4 小时前
Rust 练习册 :Rail Fence Cipher与栅栏密码
开发语言·算法·rust
东方隐侠安全团队-千里4 小时前
第3节 RSA算法开启公钥加密时代
网络·人工智能·算法
Herbert_hwt4 小时前
C语言循环结构完全指南:掌握for、while、do-while循环及实战应用
c语言
7澄15 小时前
深入解析 LeetCode 1:两数之和
算法·leetcode·职场和发展·arraylist
奔跑吧邓邓子5 小时前
【C语言实战(79)】深入C语言单元测试:基于CUnit框架的实战指南
c语言·单元测试·实战·cunit