c语言中continue和break的用法

#include <stdio.h>
main()
{
int a,b,c,d;
printf("请输入一个不多于五位的正整数:");
scanf("%d",&a);

for(b=10000,d=5;b>=0,d>=0;b/10,d--)
{
c = a/b;
if(c!=0)
{
printf("输入的数为%d位数\n",d);
break;
}
}
getch();
}

哪里有错误…………大神求解…………

for循环条件一塌糊涂。for(初始化表达式;条件表达式;表达式)
初始化一般是类似于 i=10; 这类赋值方式 。
条件表达式必须能判断真假(True or False 0 或1)
类似 a>0; 或a>b; 或 a>0 && b>a 等等
表达式一般是改变循环因子的居多
比如i++; i+=10 ; i/=10;
这类 一般无关循环因子的,最好写在for循环里面。
你这道题是想判断输入的是几位数。给个写法给你:
#include <stdio.h>

main()
{
int a,b;
printf("请输入一个不多于五位的正整数:");
scanf("%d",&a);
while(a)
{
a/=10;
b++;
if(b>5)
{

printf("大于五位了");
break;

}
}
if(b<=5) printf("你输入了一个 %d 位的数",b);
getch();
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-03-27
for(b=10000,d=5;b>=0,d>=0;b/10,d--)
这个循环中b的值并没有发生改变,只是用到了b而已
可改为for(b=10000,d=5;b>=0,d>=0;b=b/10,d--)
第2个回答  2014-03-27
continue:结束本次循环,继续下一次循环
break:结束循环
第3个回答  2014-03-27
程序设计注重格式,同学不求答案,给你个建议,FOR循环按照格式来
相似回答