#include <stdio.h>
#include <stdlib.h>
int main()
{
char response,c;
int guess=50,a=0,b=100;
printf("please give me a number y which is from 0 to 100 to guess\n");
printf("if my guess is big piease say b,");
printf("if my guess is small please say s\n");
printf("your number is %d?",guess);
while((response=getchar())!='y')
{
if(response=='n')
{
printf("Is it big or small?\n");
if((c=getchar())=='s')
{
printf("%c",c);
a=guess;
guess=(b-a)/2+a;
printf("%d",guess);
}
if((c=getchar())=='b')
{
b=guess;
guess=(b-a)/2+a;
printf("%d",guess);
}
printf("%d",guess);
printf("%c",c);
}
else
{
printf("sb I don't know what you say.\n");
}
//printf("your number is %d?\n",guess);
//printf("%c",c);
while(getchar()!='\n')
continue;
}
return 0;
}
为什么当我输入s的时候他不会进行if的判断而输入b才会呢?
为什么能只有一个if可以进行
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
2条回答 默认 最新
- CSDN专家-赖老师(软件之家) 2021-11-02 19:51关注
#include <stdio.h> #include <stdlib.h> int main() { char response,c; int guess=50,a=0,b=100; printf("please give me a number y which is from 0 to 100 to guess\n"); printf("if my guess is big piease say b,"); printf("if my guess is small please say s\n"); printf("your number is %d?",guess); while((response=getchar())!='y') { if(response=='n') { printf("Is it big or small?\n"); fflush(stdin); c=getchar(); if(c=='s') { printf("%c",c); a=guess; guess=(b-a)/2+a; printf("%d",guess); } if(c=='b') { b=guess; guess=(b-a)/2+a; printf("%d",guess); } printf("%d",guess); printf("%c",c); } else { printf("sb I don't know what you say.\n"); } //printf("your number is %d?\n",guess); //printf("%c",c); while(getchar()!='\n') continue; } return 0; }
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥15 在获取boss直聘的聊天的时候只能获取到前40条聊天数据
- ¥20 关于URL获取的参数,无法执行二选一查询
- ¥15 液位控制,当液位超过高限时常开触点59闭合,直到液位低于低限时,断开
- ¥15 marlin编译错误,如何解决?
- ¥15 有偿四位数,节约算法和扫描算法
- ¥15 VUE项目怎么运行,系统打不开
- ¥50 pointpillars等目标检测算法怎么融合注意力机制
- ¥20 Vs code Mac系统 PHP Debug调试环境配置
- ¥60 大一项目课,微信小程序
- ¥15 求视频摘要youtube和ovp数据集