当前位置: 代码迷 >> C语言 >> [原创]怎么判断呢
  详细解决方案

[原创]怎么判断呢

热度:159   发布时间:2006-04-14 20:16:00.0
[原创]怎么判断呢

main()
{
int i=0;
int a[3];
SCAN:
clrscr();
printf("Input 3 digiths:\n");
for(i=0;i<3;i++)
{
scanf("%1d",a[i]);
}

getch();
}

怎么判断当输入的不是3个数,又回到SCAN位置;即当我输入连续12两个数时,按回车健又回到SCAN:位置,或者输入1234四个数也回到SCAN位置,只有当输入正好3个数为止!


哪位可以帮我呀

搜索更多相关的解决方案: 判断  

----------------解决方案--------------------------------------------------------
用goto语句,还有,建议用getchar()再设置个记数,最后再进行数字转换,用scanf在这里会出现问题.
----------------解决方案--------------------------------------------------------

怎么记数呀,还是不懂ING


----------------解决方案--------------------------------------------------------
main()
{
int i=0,count=0;
int a[3];
SCAN:
clrscr();
printf("Input 3 digiths:\n");
for(i=0;i<3;i++)
{
scanf("%1d",a[i]);
count++;
}
if(count%3==0)
goto SCAN;

getch();
}

----------------解决方案--------------------------------------------------------
楼上的
a[i]前面的取地址符号没有加.....而且你这样可以实现吗。.
----------------解决方案--------------------------------------------------------
这样来。...大家表笑啊~~``嘿
main()
{int a;
SCAN:
clrscr();
printf("Input 3 digiths:\n");
scanf("%d",&a);
if(a<100||a>999)goto SCAN;
getch();
}
这样就一定是3位数啦

----------------解决方案--------------------------------------------------------
  相关解决方案