• 智能AI问答!更聪明、更完整、原创作!
  • 一款基于GPT的超级AI机器人,可以回答问题、聊天、创作、写文案!

用c语言编写并用for语句实现(1)输入一个三位整数n,求n的三位数码之和。(2)输入一个三位整数n,把n逆序输出

发布于 2023-12-15 10:28:27

下面是一个用C语言编写的程序,其中实现了上述两个功能:

#include <stdio.h>

int main() {
    int n, sum = 0, reverse = 0, digit;

    // 输入一个三位整数n
    printf("请输入一个三位整数: ");
    scanf("%d", &n);

    // 判断输入是否为三位数
    if (n < 100 || n > 999) {
        printf("输入的不是三位整数,请重新输入。\n");
        return 1; // 非法输入时退出程序
    }

    // (1)求n的三位数码之和
    for (int temp = n; temp > 0; temp /= 10) {
        digit = temp % 10; // 获取当前最低位的数字
        sum += digit;      // 将其加到sum中
    }
    printf("数字%d的数码之和为: %d\n", n, sum);

    // (2)把n逆序输出
    for (int temp = n; temp > 0; temp /= 10) {
        digit = temp % 10;       // 获取当前最低位的数字
        reverse = reverse * 10 + digit; // 将数字逆序
    }
    printf("数字%d逆序输出为: %d\n", n, reverse);

    return 0;
}

在这段代码中,我们首先让用户输入一个三位整数n,然后通过循环提取n的每一位来计算数码之和并逆序输出这个数字。在第一个循环中,我们每次通过除以10将n的最低位数码提取出来,并累加到sum变量中。在第二个循环中,我们使用类似的方法,但是在提取每一位数码时,我们将其添加到reverse变量中,每次乘以10以保持逆序。

注意:这段代码没有进行详细的错误处理,比如检查输入是否确实是整数或者处理非法输入。这些额外的检查可以根据实际需求添加。

0 条评论

发布
问题

在线
客服