这个程序为什么不继续往下运行了。。。
#include <stdio.h>#include <stdlib.h>
#define ALL_NUMBER_OF_PEOPLE 2
int check(void)
{
int password;
printf("*******************\n");
printf("*请输入4位密码开始游戏*\n");
printf("*******************\n");
scanf("%d",&password);
return password;
}
int outcome(int a,int b)
{
int time,flat=1;
int m = 0;
while(flat)
{
scanf("%d %d",&a,&b);
if(a<10&&b<10){
m = (a + b)/ALL_NUMBER_OF_PEOPLE;
flat = 0;
}
else{
printf("输入错误\n");
time++;
}
if (time == 3)
{
printf("你输出错误三次了");
exit(0);
}
}
return m;
}
int main(){
printf("欢迎来到猜数字的游戏! 规则如下:\n");
printf("游戏需要输入两个一位数,并求平均数\n");
printf("小数部分会被省略 eg:(4+5)/2 = 4\n");
printf("那么游戏开始\n");
int password,i = 0;
do{
if (i == 3) {
printf("你输出错误3次了,游戏结束");
exit(0);
}
password = check();
i++;
}while(password != 1022);
int a,b,right = 4;
char n;
printf("是否需要自定义答案(y/n)\n");
//fflush(stdin);
scanf(" %c",&n);
switch (n)
{
case'Y':
case'y':
printf("请输入一个一位数数作为答案\n");
scanf("%d",&right);
printf("请输入两个零到九的整数\n");
scanf(" %d %d",&a,&b);
while(right != outcome(a,b)){
if(right - outcome(a,b) > 0)
{
printf("你输出的太小了\n");
}
else
{
printf("你输入的太大了\n");
}
}
break;
case'n':
case'N':
printf("请输入两个零到九的整数\n");
while(right != outcome(a,b)){
if(right > outcome(a,b))
{
printf("你输出的太小了\n");
}
else
{
printf("你输入的太大了\n");
}
break;
default:
printf("输入有误\n");
break;
}
printf("恭喜你回答正确");
}
return 0;
}
一个猜数字的小代码 我想要加上一个自己设置答案的功能 但是每次运行到“请输入两个零到九的整数”这个位置 我输入完后就没有反映了 程序就停在这里了 这个是什么问题? 编译没错误 不知道需要怎么改。。