[入门]是否可以将下面这个程序改写成循环程序?

这个是获取五位数每个十进制位上是什么数的程序,其中 十位、百位、千位 的部分是否可以改写成循环结构?

/#include<stdio.h>

int main(void)
{
int x= 0;
short x0,x1,x2,x3,x4;
printf("\n请输入一个5位整数:");
scanf("%d",&x);

x0=x%10;
x1=x%100/10;
x2=x%1000/100;
x3=x%10000/1000;
x4=x/10000;

printf("\n个位=%d\n十位=%d\n百位=%d\n千位=%d\n万位=%d\n\n",x0,x1,x2,x3,x4);
return 0;
}

阅读 1.7k
2 个回答

一定可以啊, 不过也不一定要用循环
如用 sprintf 就可以

char res[6];
sprintf(res, "%5d", x);
printf("\n个位=%c\n十位=%c\n百位=%c\n千位=%c\n万位=%c\n\n",res[4],res[3],res[2],res[1],res[0]);

楼上正解,获取五位数的每一位用char数组更方便一些

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进