《C语言输入一个不多于5位的正整数.docx》由会员分享,可在线阅读,更多相关《C语言输入一个不多于5位的正整数.docx(4页珍藏版)》请在三一办公上搜索。
1、C语言输入一个不多于5位的正整数5.7 输入一个不多于5位的正整数,要求:1 求它是几位数;2 分别求出每一位数字;3 按逆序输出各位数字.#include<stdio.h>int mainint a,b,wan,qian,bai,shi,ge,c;printf(请输入一个不多于五位的正整数:);scanf(%d,&a);if(a>9999)b=5;wan=a/10000;qian=a%10000/1000;bai=a%10000%1000/100;shi=a%10000%1000%100/10;ge=a%10000%1000%100%10;c=ge*10000+shi*1000+
2、bai*100+qian*10+wan;printf(这个数的位数为:%dn,b);printf(每位数字为:);printf(%d,%d,%d,%d,%dn,wan,qian,bai,shi,ge);printf(反序数字为:);printf(%.5d,c);else if(a>999)b=4;qian=a/1000;bai=a%1000/100;shi=a%1000%100/10;ge=a%1000%100%10;c=ge*1000+shi*100+bai*10+qian;printf(这个数的位数为:%dn,b);printf(每位数字为:);printf(%d,%d,%d,%dn,
3、qian,bai,shi,ge);printf(反序数字为:);printf(%.4d,c);else if(a>99)b=3;bai=a/100;shi=a%100/10;ge=a%100%10;c=ge*100+shi*10+bai;printf(这个数的位数为:%dn,b);printf(每位数字为:);printf(%d,%d,%dn,bai,shi,ge);printf(反序数字为:);printf(%.3d,c);else if(a>9)b=2;shi=a/10;ge=a%10;c=ge*10+shi;printf(这个数的位数为:%dn,b);printf(每位数字为:);printf(%d,%dn,shi,ge);printf(反序数字为:);printf(%.2d,c);else b=1;ge=a%10;c=ge;printf(这个数的位数为:%dn,b);printf(每位数字为:);printf(%dn,ge);printf(反序数字为:);printf(%.1d,c);