求大神帮我做一道c语言题目:给一个不多于三位的正整数,要求:1求出他是几位数。2分别打印出每一位数字。

3按逆序打印出各位数字。除此之外,程序还应当对不合法的输入做必要的处理,例如输入负数,输入的数超过三位急求这道题目的c语言代码,谢谢了!!!!急求啊!!!!!!如果现在立... 3按逆序打印出各位数字。 除此之外,程序还应当对不合法的输入做必要的处理,例如输入负数,输入的数超过三位
急求这道题目的c语言代码,谢谢了!!!!
急求啊!!!!!!如果现在立刻做出来可以提高悬赏。。。。。。。
展开
 我来答
BrotherGao
推荐于2017-12-16 · TA获得超过1536个赞
知道小有建树答主
回答量:334
采纳率:0%
帮助的人:400万
展开全部

楼主你好!

根据你的要求,我已经将代码实现如下,不知道符合你的要求不?

#include<stdio.h>

void A(int n){

 int sum=n,i,j,k,m=1;

 while((sum=sum/10)!=0)m++;

 printf("该数字为%d位数\n",m);

 sum=n;

 printf("个位:%d\n",i=sum%10);

 sum=sum/10;

 printf("十位:%d\n",j=sum%10);

 sum=sum/10;

 printf("百位:%d\n",k=sum%10);

 if(m==3) sum=i*100+j*10+k;

 else if(m==2) sum=i*10+j;

 else sum=i;

 printf("该数字逆序为:%d\n",sum);

}

 

int main(){

 int n;

 while(1){

 printf("请输入一个不多于三位的正整数:");

 fflush(stdin);

 scanf("%d",&n);

 if(0<n&&n<=999){

  A(n);

  break;

 }

 if(n>999){

  printf("该数字位数超过三位\n"); 

 }

 if(n<0){

  printf("该数字为负数\n");

 }

 }

 return 0;

}

 

 

希望我的回答对你有帮助!望采纳!

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式