目录
只用一个scanf输出一串数,不可以一个一个的输入并计数,那样太浪费时间了。
C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发,使用C语言可以以简易的方式编译、处理低级存储器。
这道题的思路在于,如果想要判断一个整数的位数,那么就必须要用循环语句一位一位的计算,当x大于0时,进入循环。x除以10取整,如果x取整之后大于0,说明x不止一位,那么继续进行循环,循环一次i+1,直到x=0时,说明已经除到最高位了,那么我们就可以退出循环,输出次数i了,这样的方法比较简便快捷,性能最好。
- #include
- int main()
- {
- int x,i,n,t=0;
- printf("请输入一个整数");
- scanf("%d",&x);
- t=x;
- for(i=0;x>0;i++)
- {
- x=x/10;
- }
- printf("%d是%d位数",t,i);
- return 0;
-
- }
代码进行拆分讲解:
首先对main函数进行初始化定义和赋值(进行输入):
- int x,i,n,t=0;
- printf("请输入一个整数");
- scanf("%d",&x);
然后 用t记录输入数值的原始最初值,然后进入循环体,用i++来记录x的位数,最后对t也就是x和 其 位 数 进 行 输 出:
- t=x;
- for(i=0;x>0;i++)
- {
- x=x/10;
- }
- printf("%d是%d位数",t,i);
这个方法较简便,建议亲自尝试敲代码进行尝试。
如果 有对 循环不懂的,可以进我主页去看看趣编程系列,比如说有
别玩别学吧,学中掌握知识,学知识过程 中玩 。
感谢各位的阅读,以上就是“C语言怎么输入一个整数,判断其有几位”的内容了,经过本文的学习后,相信大家对C语言这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是CSDN杰克尼,小编将为大家推送更多相关知识点的文章,欢迎关注!