第一题:
要求循环输入玩家的年龄,如果年龄为负则停止输入,提示输入错误,一旦输入为负,使用break跳出循环。
思路:
1.定义玩家的年龄变量
2.循环输入年龄,循环几次?
3.如果输入的年龄为负,每输入完毕后就需要立即判断变量的值
4.此题并未表示循环次数,所以为死循环,死循环用while(1),或for( ; ; )
C代码如下:
int age;//玩家年龄
for( ; ; )
{
printf("玩家的年龄为:");
scanf("%d",&age);
//判断
if(age<0)
{
printf("年龄不能为负数!程序强制退出\n");
break;
}
}
第二题:
书写一个猜商品价格的小游戏
思路:
1.我们设定一个商品价格,让用户去猜
2.用户输入猜到的价格后,系统给出大、小的提示
3.如果在5轮内就猜到正确的价格,给出奖励提示
4.goodprice?循环次数是多少?(猜几次,每猜一次,猜测总次数加一)
5.若使用随机函数,则需增加头文件#include<time.h>
C代码如下:
int price=7890;//要用户猜的商品价格,也可以使用随机数生成
int guessPrice;//用户猜的商品价格
int count=0;//用来记录猜的次数
//srand((unsigned)time(NULL));//将price写成随机数字
//price=rand()%10000;//rand是0-65535的一个整型,
printf("%d",price);
for(;;)//for(;;count++),此时不要for循环最下方的count++
{
printf("请输入猜测的商品价格:");
scanf("%d",&guessPrice);
if(guessPrice>price)//满足第一种情况
{
printf("大了!\n");
}
else if(guessPrice<price)//满足第二种情况
{
printf("小了!\n");
}
else//否则
{
printf("恭喜!猜对啦!\n");
count++;//如果直接break,则猜对的那一次未计入猜测次数内
break;//如果猜对了,就跳出循环
}
count++;
}
printf("共猜了%d次\n",count);
if(count<=5)
{
printf("精彩!,您真是天才!\n");
}
第三题:
循环录入用户性别,只能使用m/M(男)或f/F(女).一旦输入错误,结束录入,要求统计录入正确的次数
思路:
1.声明性别变量
2.声明计数器
3.获取性别,判断性别
4.计数器自增操作,打印正确次数
C代码如下:
char sex;//用户性别
int count=0;
for(;;)
{
sex=getchar();//输入性别
//fflush(stdin);//把标准输入空间清零,记得清空缓冲区,避免错误
if(sex!='m'||sex!='M'||sex!='f'||sex!='F')
{
break;
}
count++;
}
printf("一共录入正确%d次\n",count);