怎么用循环结构编写
输入一个不超过6位的正整数,分别输出该数的每一位,并用逗号分隔,如果该数是一位数,则输出该数。然后再输出该数是几位数。程序需要对输入的数进行合法性检查,对小于0和大于6位的数要有提示。X=123
1,2,3
N=3
X=-2
Error
X<0
X=1234567
Error
N>6
只会用if做,循环怎么做啊?
程序代码:#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;
}