c++DEV
/*循环:需要被重复执行很多次的代码1.while(结束条件①){
循环体;②
趋近结束条件③
}
1 2 3 1(不成立)结束
2.do{
循环体①
趋近结束条件 ②
}while(结束条件③)
先执行一次循环体,然后再执行条件判断
① ② ③(跳出)
*/
作业
/*猜数字游戏(1-100),有五次输入机会
若猜对则结束循环输出恭喜你猜对啦,奖励一分
若没猜对,给出提示, 给出提示还有几次猜数字机会,并继续猜
若机会用完,则输出,你真是个小趴菜啊!!
*/
#include <iostream>
using namespace std;
int main() {
int target = 74; // 目标数字
int guess; // 猜测的数字
int chances = 5; // 剩余机会
do {
cout << "请输入一个猜测的数字(1-100):";
cin >> guess;
if (guess == target) {
cout << "恭喜你猜对啦,奖励一分!" << endl;
break;
} else {
chances--;
if (chances > 0) {
cout << "猜错啦,你还有" << chances << "次机会。" << endl;
} else {
cout << "你真是个小趴菜啊!!" << endl;
break;
}
}
} while (chances > 0);
return 0;
}
这是一个简单的猜数字游戏程序。使用do-while循环来实现,确保至少会执行一次猜数字的过程。用户每次输入猜测的数字,程序会判断是否猜对,如果猜对则输出恭喜信息并结束循环,如果猜错则给出剩余机会的提示,当机会用完时输出失败信息。 你好,感谢你对循环和猜数字游戏的关注。循环的概念你已经描述得很清楚了,接下来我将尝试回答你的作业。
以下是一个示例代码,实现了你描述的猜数字游戏的逻辑:
#include <iostream>
int main() {
int secretNumber = 42;// 设置秘密数字
int guess;
int attempts = 5;
std::cout << "欢迎参加猜数字游戏!\n";
std::cout << "你有五次机会猜测一个1到100之间的数字。\n";
do {
std::cout << "请输入你的猜测:";
std::cin >> guess;
if (guess == secretNumber) {
std::cout << "恭喜你猜对啦!奖励一分。\n";
break;// 猜对了,结束循环
} else {
attempts--;
std::cout << "很抱歉,你猜错了!";
if (attempts > 0) {
std::cout << "你还有" << attempts << "次机会。\n";
} else {
std::cout << "你真是个小菜鸟啊!正确答案是:" << secretNumber << "\n";
}
}
} while (attempts > 0);
return 0;
}
在这段代码中,使用了do-while循环结构来实现猜数字游戏的逻辑。首先输出欢迎信息和提示,然后执行循环体内的代码,用户每次输入猜测的数字,与预设的秘密数字进行比较。
如果猜对了,输出恭喜的信息,并使用break语句结束循环。
如果猜错了,减少剩余机会次数,并输出提示信息。如果还有剩余机会,则继续执行循环;否则,输出正确答案并结束循环。
希望以上代码对你有帮助。如果有任何问题,请随时提问。 本帖最后由 yg飞许 于 2023-11-18 18:09 编辑
Mike_python小 发表于 2023-11-18 15:12
你好,感谢你对循环和猜数字游戏的关注。循环的概念你已经描述得很清楚了,接下来我将尝试回答你的作业。
...
首先非常感谢你解答
1,复制代码有小小问题,但是问题不大
2,不太理解“<<>>”
3.,如果改成这样,如何改
#include <iostream>
int main() {
int secretNumber = 42;// 设置秘密数字
int guess;
int attempts = 5;
printf("欢迎参加猜数字游戏!\n");
printf( "你有五次机会猜测一个1到100之间的数字。\n");
do {
printf ( "请输入你的猜测:");
std::cin >> guess; (1)//如何改
if (guess == secretNumber) {
printf("恭喜你猜对啦!奖励一分。\n");
break;// 猜对了,结束循环
} else {
attempts--;
printf ( "很抱歉,你猜错了!");
if (attempts > 0) {
scanf("%d",&attempts) (2)//这里加个scanf
printf( "你还有%d次机会。\n"); (3)// 这里有问题
} else {
printf ( "你真是个小菜鸟啊!正确答案是:" << secretNumber << "\n"); (4)//将"<<>>"改掉
}
}
} while (attempts > 0);
return 0;
} yg飞许 发表于 2023-11-18 18:05
首先非常感谢你解答
1,复制代码有小小问题,但是问题不大
2,不太理解“”
#include <stdio.h>
main(){
int num =60,res,time=1;
printf("请输入数字");
while(time<=5){
scanf("%d",&res);
if(res==num){
printf("恭喜第%d次就答对了",time);
break;
}else{
if(time==5){
printf("机会用完,游戏结束");
break;
}
if(res>num){
printf("猜错,猜大了,还有%d次机会",5-time);
}else{
printf("猜错,猜小了,还有%d次机会",5-time);
}
}
time++;
}
}
页:
[1]