c語言練習29——輸入一個不超過5位的數字,判斷共幾位數字,並逆序輸出


#include<stdio.h>
#include<stdlib.h>
/*題目:給出一個不超過5位的正整數,要求:一、求它是幾位數,二、逆序打印出各位數字。*/
int main(){
int a,a1,a2,a3,a4,a5;
while(1){
printf("請輸入一個5位以內的數字:");
scanf("%d",&a);
if(a<=9)
printf("共1位數,逆序:%d\n",a);
else if(a<=99){
a1=a%10;
a2=a/10;
printf("共2位數,逆序:%d%d\n",a1,a2);}
else if(a<=999){
a1=a%10;
a2=a/10%10;
a3=a/100;
printf("共3位數,逆序:%d%d%d\n",a1,a2,a3);}
else if(a<=9999){
a1=a%10;
a2=a/10%10;
a3=a/100%10;
a4=a/1000;
printf("共4位數,逆序:%d%d%d%d\n",a1,a2,a3,a4);}
else if(a<=99999){
a1=a%10;
a2=a/10%10;
a3=a/100%10;
a4=a/1000%10;
a5=a/10000;
printf("共5位數,逆序:%d%d%d%d%d\n",a1,a2,a3,a4,a5);}
else 
printf("輸入錯誤,請重新輸入\n");
}
return 0;
}
   

 方法二

#include<stdio.h>
#include<stdlib.h>

int main(){
int i,l;
char a[100];
while(1){
printf("請輸入數字:");
for(i=0;i<100;i++){
scanf("%c",&a[i]);
if(a[i]=='\n')
break;}
l=i;
printf("共%d位數,倒序輸出結果為:",l);
for(i=l-1;i>=0;i--)       //a[l]
printf("%c",a[i]);
printf("\n________________________________\n");
}
return 0;
}

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM