程序随机给出A~Z之间的字母。让用户猜测这个字母
答案:2 悬赏:0 手机版
解决时间 2021-03-24 04:29
- 提问者网友:捧腹剧
- 2021-03-23 06:11
#include "stdio.h"
#include "time.h"
#include "stdlib.h"
main()
{
char guess,m;
int cout=0;
srand((unsigned)time(NULL));
m=rand()%26+'A';
do
{
printf("猜A~Z的字符\n");
scanf("%d",&guess);
if(guess<'A'||guess>'Z')
printf("输的数没A~Z的在范围内");
if(guess>m)
printf("猜大了");
if(guess printf("猜xiao了");
if(guess==m)
printf("恩恩");
cout++;
}
while(guess!=m);
printf("你共猜了%d次才猜对,正确的为%c",cout,m);
return 0;
}
请问这个程序错在哪里啊。。。谢谢
那个scanf("%d",&guess);
改为scanf("%c",&guess);
最佳答案
- 五星知识达人网友:荒野風
- 2021-03-23 06:23
这样写就可以了
#include "stdio.h"
#include "time.h"
#include "stdlib.h"
void main()
{
char guess,m;
int count=0;
srand((unsigned)time(NULL));
m=rand()%26+'A';
do
{
printf("猜A~Z的字符\n");
fflush(stdin);
scanf("%c",&guess);
if(guess < 'A'||guess > 'Z')
{
printf("输的数没A~Z的在范围内\n");
continue;
}
if(guess > m)
{
printf("猜大了");
continue;
}
if(guess < m)
{
printf("猜xiao了");
continue;
}
if(guess == m)
{
printf("恩恩");
}
}while(++count, guess != m);
printf("你共猜了%d次才猜对,正确的为%c", count, m);
return;
}
全部回答
- 1楼网友:三千妖杀
- 2021-03-23 06:54
#include
#include
#include
#include
void main()
{
char c;
char d;
printf("请按任意键产生一个随机字母\n");
getch();
srand((unsigned)time(null));
d = rand()%26+97;
printf("请输入你猜想的字母\n");
scanf("%c", &c);
if (d == c)
printf("恭喜你猜对了!\n");
else
printf("很遗憾猜错了!正确答案是:%c\n", d
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯