#include <stdio.h> #include <string.h> void main () { int a, b; int c; char digit[10] = { "end" }; char number[10] = { "again" }; char str[10]; do { printf ( "请输入两个数:\n" ); scanf ( "%d%d", &a, &b); //这里改成gets ( str );为啥会多输出一行字 c = a+b; printf ( "这两个数字的和是%d\n", c ); loop: printf ( "输入end结束again重试:\n" ); scanf ( "%s", &str ); if ( strcmp ( digit, str ) == 0 ) { break; } else if ( strcmp ( number, str ) == 0 ) { continue; } else { goto loop; //想实现这一步的功能还有没有其他办法,老师说不要用loop } } while (1); }