我正在玩C并写下这段代码:
1 #include<stdio.h>
2 #define ASK_PROMPT printf("\nDo you want to continue(Y/N):");
3 main()
4 {
5 char main[20], i;
6 start:
7 printf("Please enter your string:\n");
8 gets(main);
9 printf("\nstring entered was:\n \n%s\n", main);
10 ASK_PROMPT;
11 scanf("%c",&i);
12
13 if(i=='Y'||i=='y')
14 goto start;
15 getch();
16 return;
17 }
执行此代码时,goto loop
无法正常运行。在对来自第10行的问题提供y
或Y
响应时,循环确实有效,第7行再次执行/打印但跳过第8行(不等待提供输入)。