楼主你好!
根据你的要求,我已经将代码实现如下,不知道符合你的要求不?
#include
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 A(n); break; } if(n>999){ printf("该数字位数超过三位\n"); } if(n<0){ printf("该数字为负数\n"); } } return 0; } 希望我的回答对你有帮助!望采纳!