#include<stdio.h>
int main()
{
char t;
int a,b,c;
printf("Please enter s:\n");
r1: t=getchar();
if (t=='s')
{
printf("Please enter a,b,c:\n");
scanf("%d%d%d",&a,&b,&c);
printf("a=%f,b=%d,c=%d",&a,&b,&c);
}
else
{
printf("Please enter s:\n");
goto r1;
}
return 0;
}
当输入不是s的时候,程序会出现两个Please enter s:
我只想要一个。如果goto前面那一句删去就没有了。
恳请各位大侠帮助,小弟在此有礼了。
执行结果是这样的:
Please Enter s:
f
Please Enter s:
Please Enter s:
我想要的结果是:
Please Enter s:
f
Please Enter s:
研究数日,终于找到了解决办法
将getchar一句改为scanf("%s",t)就可以了
分析原因应该是那个回车的问题。
再次感谢帮助我的大侠们
Cats萌萌
RISEBY
牧羊人nacy