C语言问题.编写程序,输入一个长整型正数,判断该数是几位数源程序:#include#includemain(){\x05long int x;\x05double y;\x05int z=1,i=0;\x05printf("输入长整型正数:");\x05scanf("%ld",&x);do{\x05\x05z=z*10;\x05\x05y=x/z;\x0
来源:学生作业帮助网 编辑:六六作业网 时间:2024/11/17 01:48:13
C语言问题.编写程序,输入一个长整型正数,判断该数是几位数源程序:#include#includemain(){\x05long int x;\x05double y;\x05int z=1,i=0;\x05printf("输入长整型正数:");\x05scanf("%ld",&x);do{\x05\x05z=z*10;\x05\x05y=x/z;\x0
C语言问题.编写程序,输入一个长整型正数,判断该数是几位数
源程序:
#include
#include
main()
{
\x05long int x;
\x05double y;
\x05int z=1,i=0;
\x05printf("输入长整型正数:");
\x05scanf("%ld",&x);
do{
\x05\x05z=z*10;
\x05\x05y=x/z;
\x05\x05i++;
\x05}while(y>0);
\x05printf("位数:%d\n",i);
}
--------------
这个程序有错吗?如果没错的话,我想问下为什么是while(y>0)?不是y>1?如果错了要怎么改.
C语言问题.编写程序,输入一个长整型正数,判断该数是几位数源程序:#include#includemain(){\x05long int x;\x05double y;\x05int z=1,i=0;\x05printf("输入长整型正数:");\x05scanf("%ld",&x);do{\x05\x05z=z*10;\x05\x05y=x/z;\x0
#include
#include
main()
{
\x09long int x;
\x09int i=0;
printf("input:");
\x09scanf("%ld",&x);
do{
x=x/10;
i++;
\x09}while(x>0);
printf("the nubmer is:%d\n",i);
}
这样就正确了,你自己运行下^_^
注: 除法运算符“/”:双目运算具有左结合性.参与运算量均为整型时,结果也为整型,舍去小数.例如,你输入123456 先执行123456/10 结果为12345 在继续执行12345/10 结果为1234.最后为1/10 结果为0 不满足条件x>0 结束循环,打印i的值^_^