码迷,mamicode.com
首页 > 其他好文 > 详细

5、输入一个不超过5位的正整数,编程实现:求出它是几位数,分别输出每位数字。

时间:2019-11-30 13:20:11      阅读:899      评论:0      收藏:0      [点我收藏+]

标签:mat   oid   pre   nbsp   i++   --   ++   方法   超过   

 1 #include<stdio.h>
 2 #include<math.h>
 3 int flws(int);
 4 void main()
 5 {
 6     int n,j,k=0;
 7     printf("请输入一个正整数:\n");
 8     scanf("%d",&n);
 9     j=n;
10     while(j!=0)  //取位
11     {
12         j/=10;
13         k++;
14     }
15     if(k<=5)
16         flws(n,k);
17     else
18         printf("这个数的位数大于5位。\n");
19 }
20 int flws(int n,int k) 
21 {
22     int b,fl,i=1;
23     while(k!=0)
24     {    
25         b=pow(10,k-1); //利用pow函数取n-1位的位权
26         fl=n/b;
27         n%=b;
28         printf("这个数的第%d位为%d\n",i,fl);
29         k--,i++;
30     }
31     return 0;
32 }



 1 //5、输入一个不超过5位的正整数,编程实现:求出它是几位数,分别输出每位数字。
 2 #include<stdio.h>
 3 #include<math.h>
 4 void main()
 5 {
 6     int n,i,j,k,b,f;
 7     k=0;
 8     scanf("%d",&n);
 9     j=n;
10     while(j!=0)  //先取位数给k
11     {
12         k++;
13        j/=10;
14     }
15     f=pow(10,k-1);  //取最高位位权
16     printf("这个数有%d位\n",k);
17     if(k>5||n<=0) printf("该数不是小于5位的正整数\n");
18         else for(i=1;i<=k;i++) //从高到低取位
19         {
20             b=n/f; //取每一次最高位
21             n=n%f; //去掉最高位
22             f/=10;  //改变位权
23             printf("这个数的第%d位为%d\n",i,b);
24         }
25 
26 }

还有一个很笨比的方法:

 1 /*5、输入一个不超过5位的正整数,
 2 编程实现:求出它是几位数,
 3 分别输出每位数字。*/
 4 #include<stdio.h>
 5 void main()
 6 {
 7     int n,j,i,k,count,f;
 8     k=0;
 9     scanf("%d",&n);
10     j=n;
11     while(j!=0)  //先取位数给k
12     {
13         k++;
14        j/=10;
15     }
16     printf("这个数有%d位\n",k);
17     if(k>5||n<=0) printf("该数不是小于5位的正整数\n");
18     else for(i=1;i<=k;i++) //从高到低取位
19     {
20         f=n;
21         for(count=i;count<=k;count++)
22         {
23                 j=f%10;
24                 f/=10;
25     
26         }
27         printf("这个数的第%d为%d\n",i,j);
28     }
29 
30 }

 

 

 

 

5、输入一个不超过5位的正整数,编程实现:求出它是几位数,分别输出每位数字。

标签:mat   oid   pre   nbsp   i++   --   ++   方法   超过   

原文地址:https://www.cnblogs.com/BK-yushen/p/11961866.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!