C语言实现整数逆序输出 - 完整代码及详解

本程序实现了一个reverse函数,该函数接受一个整数参数number,并返回其逆序数。

源代码:

#include <stdio.h>

int reverse(int number)
{
    int flag, res = 0;
    flag = number < 0 ? -1 : 1; /* flag标志正负数 */
    if (number < 0)
        number = -number;
    while (number != 0)
    {
        res = res * 10 + number % 10;
        number = number / 10;
    }
    return flag * res;
}

int main()
{
    int in, m;
    printf("输入整数:");
    scanf("%d", &in);
    m = reverse(in);
    printf("逆序后:%d\n", m);
    return 0;
}

代码解释:

  • reverse(int number) 函数:

    • 定义变量flag记录输入数字的正负号,res用于存储逆序后的结果。
    • 判断number是否为负数,如果是,将其取反。
    • 使用while循环遍历数字的各位,并逐位进行逆序操作,并将结果累加到res变量中。
    • 最后,根据flag的值,返回最终的逆序结果,确保符号正确。
  • main 函数:

    • 声明变量in存储输入的整数,m存储reverse函数的返回值。
    • 使用scanf函数获取用户输入的整数。
    • 调用reverse函数,将in作为参数传递,并将返回值赋给m
    • 使用printf函数输出逆序后的结果。

运行示例:

输入整数: -1230

逆序后: -321

注意事项:

  • 本程序使用了 flag 变量来记录输入数字的正负号,并在返回最终结果时进行乘法运算,以确保符号的正确性。
  • 代码中的注释详细解释了每个步骤的含义,方便读者理解程序逻辑。
  • 本程序可以扩展到处理更复杂的整数逆序操作,例如处理带小数的数字,或者处理超长整数。

总结:

本程序提供了一个简单的 C 语言代码示例,实现了将输入的整数逆序输出的功能,并附有详细的注释,方便读者理解和学习。该程序可以作为学习C语言编程的基础示例,也可以作为进一步研究整数逆序操作的参考。


原文地址: https://www.cveoy.top/t/topic/sf1 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录