怎么用循环结构编写
输入一个不超过6位的正整数,分别输出该数的每一位,并用逗号分隔,如果该数是一位数,则输出该数。然后再输出该数是几位数。程序需要对输入的数进行合法性检查,对小于0和大于6位的数要有提示。X=123
1,2,3
N=3
X=-2
Error
X<0
X=1234567
Error
N>6
只会用if做,循环怎么做啊?
2011-04-03 15:53
没人睬我。。。。
2011-04-05 13:49
程序代码:
#include <iostream.h>
void main()
{
int a = 123456,i = 0;
int temp = a;
while(0 != a)
{
i++;
temp = a % 10;
cout<<temp<<",";
a /= 10;
}
cout<<endl<<"N="<<i<<endl;
}这个东西只是大致的写一下 对于那些边缘数据楼主自己根据这个思路完成

2011-04-05 14:09
程序代码:#include <stdio.h>
int main(int argc, char *argv[])
{
int x,n;
printf("X=");
scanf("%d",&x);
if(x<0)
printf("Error\nX<0");
else if(x>0&&x<10)
printf("%d\nN=1",x);
else if(x>=10&&x<100)
printf("%d,%d\nN=2",x/10,x%10);
else if(x>=100&&x<1000)
printf("%d,%d,%d\nN=3",x/100,x/10%10,x%10);
else if(x>=1000&&x<10000)
printf("%d,%d,%d,%d\nN=4",x/1000,x/100%10,x/10%10,x%10);
else if(x>=10000&&x<100000)
printf("%d,%d,%d,%d,%d\nN=5",x/10000,x/1000%10,x/100%10,x/10%10,x%10);
else if(x>=100000&&x<1000000)
printf("%d,%d,%d,%d,%d,%d\nN=6",x/100000,x/10000%10,x/1000%10,x/100%10,x/10%10,x%10);
else
printf("Error\nN>6");
return 0;
}
2011-04-05 14:17
2011-04-05 18:25
2011-04-06 00:23