c语言,任意输入一个五位正整数,逆序输出每一位上的数

c语言,任意输入一个五位正整数,逆序输出每一位上的数如输入54321 输出12345输入12300
输出321

#include <stdio.h>
void main()
{
int i,n,a[5];
scanf("%d",&n);
for(i=0;i<5;i++)
{a[i]=n%10;n=n/10;}
for(i=0;i<5;i++)
if(a[i])
{
for(;i<5;i++)
printf("%1d",a[i]);
break;
}
}

运行示例:

温馨提示:答案为网友推荐,仅供参考
第1个回答  2023-03-11
这是一个用C语言编写的程序,可以实现任意输入一个五位正整数,逆序输出每一位上的数。程序的思路是用一个变量n存储输入的数,然后用一个循环和取余运算依次获取n的个位、十位、百位、千位和万位,并输出到屏幕上。
//引入stdio.h头文件,用于输入输出#include <stdio.h>//定义主函数int main(){ //声明一个变量n,用于存储输入的数
int n; //声明一个变量i,用于循环控制
int i; //提示用户输入一个五位正整数,并将其赋值给n
printf("请输入一个五位正整数:\n"); scanf("%d", &n); //判断n是否为五位正整数,如果不是,则提示错误并退出程序
if (n < 10000 || n > 99999)
{ printf("输入错误!\n"); return 0;
} //输出逆序后的结果
printf("逆序后的结果为:\n"); //用For循环遍历5次,每次获取并输出n的最低一位,并将其去掉
for (i = 0; i < 5; i++)
{ printf("%d", n % 10); //取余运算得到最低一位
n /= 10; //除以10去掉最低一位
} printf("\n"); //换行

return 0;
}
第2个回答  2023-03-12
可以通过对输入的数字不断地进行除和取余运算,来逆序输出每一位上的数。

以下是 C 语言代码示例:

```c
#include <stdio.h>

int main() {
int num, digit;

printf("请输入一个五位正整数:");
scanf("%d", &num);

printf("逆序输出每一位上的数:");
while (num > 0) {
digit = num % 10; // 取个位数字
printf("%d", digit);
num /= 10; // 去掉个位数字
}

return 0;
}
```

该代码中,首先使用 `scanf` 函数读入一个五位正整数。然后使用循环从该数的个位开始,依次取出每一位数字并逆序输出。在循环中,使用 `%` 运算符取出个位数字,使用 `/` 运算符去掉个位数字。注意,为了避免输出中的前导零,需要判断数字是否为零。
第3个回答  2017-04-13
除以10000就是万位的数字,以此类推进行输出,望采纳
第4个回答  2017-04-13
#include<stdio.h>
void main() { int a,b;
scanf("%d",&a); b=0;
while ( a ) { b*=10; b+=a%10; a/=10; }
printf("%d\n",b);
}
相似回答