#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; }