求大佬看下,大一有点不懂,最近刚学了循环想做个猜数字的游戏试下。
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a = rand() % 101, b,d;
char c;
printf("*****要来一把猜数字游戏吗?(yes/no)\n");
scanf_s("%c", &c);
if(c="yes");
printf("*****好的,游戏开始………………\n");
printf("小花正在出题中…………\n");
printf("请猜一个0-100的数:\n");
scanf_s("%d", &b);
for (d = 0; d < 100; d++)
if (b < a)
printf("哎哟,你猜的太小啦!\n");
printf("再试一次吧");
scanf_s("%d", &b);
if (b > a)
printf("哎哟,你猜的太大啦!\n");
if (b == a)
printf("恭喜你,猜对啦!!!\n");
printf("你一共猜了%d次", d);
printf("还要再玩一次吗?(yes/no)");
scanf_s("%c", &c);
return 0;
}
if(c="yes");这条语句是错误的,要用==,还有c是字符型变量,只能输入一个字符,比如y,n
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a = rand() % 101, b,d;
char c;
printf("*****要来一把猜数字游戏吗?(y/n)\n");
scanf("%c", &c);
if(c=='y')
{
printf("*****好的,游戏开始………………\n");
printf("小花正在出题中…………\n");
printf("请猜一个0-100的数:\n");
scanf("%d", &b);
for (d = 0; d < 100; d++)
{
if (b < a)
printf("哎哟,你猜的太小啦!\n");
printf("再试一次吧");
scanf("%d", &b);
if (b > a)
printf("哎哟,你猜的太大啦!\n");
if (b == a)
printf("恭喜你,猜对啦!!!\n");
printf("你一共猜了%d次", d);
printf("还要再玩一次吗?(y/n)");
scanf("%c", &c);
}
}
return 0;
}
if判断句,==
char是字符,最好把yes/no换成y/n
scanf_s("%c", &c);----既然是%c,能读入"yes"串吗?
if(c="yes");---if里面赋值吗?完全看不出这句要干啥,太乱了
应该是 if(c=="yes")
{
printf("*****好的,游戏开始………………\n");
printf("小花正在出题中…………\n");
printf("请猜一个0-100的数:\n");
scanf_s("%d", &b);
}
吧?
for循环连大括号都没有
if(c="yes");这条语句是错误的,c是字符型变量,只能输入一个字符,比如y,n
#include<stdio.h>
#include<stdlib.h>
int main()
{
int a = rand() % 101, b,d;
char c[30];
printf("*****要来一把猜数字游戏吗?(yes/no)\n");
scanf_s("%s", &c);
while(c=="yes") {
printf("*****好的,游戏开始………………\n");
printf("小花正在出题中…………\n");
printf("请猜一个0-100的数:\n");
scanf_s("%d", &b);
for (d = 0; d < 100; d++) {
if (b < a)
printf("哎哟,你猜的太小啦!\n");
if (b > a)
printf("哎哟,你猜的太大啦!\n");
if (b == a) {
printf("恭喜你,猜对啦!!!\n");
break;
}
printf("再试一次吧");
scanf_s("%d", &b);
}
printf("你一共猜了%d次", d);
printf("还要再玩一次吗?(yes/no)");
canf_s("%s", &c);
}
return 0;
}
int main()
{
int b,d;
char c;
printf("*****要来一把猜数字游戏吗?(y/n)\n");
scanf_s("%c", &c);
while(c=='y')
{
printf("*****好的,游戏开始………………\n");
printf("小花正在出题中…………\n");
printf("请猜一个0-100的数:\n");
int a = rand() % 101;
scanf_s("%d", &b);
for (d = 0; d < 100; d++)
{
if(b==a)
{
printf("恭喜你,猜对啦!!!\n");
break;
}
else
{
if (b < a)
{
printf("哎哟,你猜的太小啦!\n");
}
else
{
printf("哎哟,你猜的太大啦!\n");
}
printf("你一共猜了%d次", d);
}
printf("还要再玩一次吗?(y/n)");
scanf_s("%c", &c);
}
return 0;
}
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632
非常感谢您使用有问必答服务,为了后续更快速的帮您解决问题,现诚邀您参与有问必答体验反馈。您的建议将会运用到我们的产品优化中,希望能得到您的支持与协助!
速戳参与调研>>>https://t.csdnimg.cn/Kf0y