
求一个正整数n的位数可以先定义一个变量num,并初始化为0,依次把该整数n除以10,直到其为0为止,并且每除一次10,变量num的个数就自加1,最后num的值就是该整数n的位数。
#include <stdio.h>
int main()
{
int n,num=0
scanf("%d",&n)
while(n){
num++
n/=10
}
printf("%d\n",num)
return 0
}
/*
输出:
123456
6
*/
扩展资料:
正整数,即大于0的整数,如,1,2,3…
0既不是正整数,也不是负整数(0是整数)。
负整数,即小于0的整数,如,-1,-2,-3…
知道正整数的一种分类办法是按照其约数或积因子的多少来划分的,比如仅仅有两个的(当然我们总是多余地强调这两个是1和其本身),就称之为质数或素数,而多于两个的就称之为合数。
参考资料来源:百度百科-正整数
/* 写程序用输出一个由用户输入的正整数的位数,例如26的位数为22341的位数为4。*/
#include "stdio.h"
void main()
{
int sum,i=0
printf("please input a sum (sum>=0 &&整数)")
scanf("%d",&sum)
while(sum!=0)
{
sum=sum/10
i++
}
printf("sum是%d位数\n",i)
}
正确的
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)