猜数字游戏的实现在文章最后面
C语言的循环好比这张图,不仅有循环也可以有选择
一 while 语句
如下图while 语句基本结构是 while后面加一个表达式,如果表达式为真则执行循环语句
如下图while语句,程序运行到这个while语句时;只要 i 的值小于 5 就会执行次循环,每循环 一次打印一次 诸葛斌 ,并且 i++; 直至 i 等于或者大于 5 时就会结束循环;结果如图所示,打印出了5个诸葛斌,所以循环了5次;
二 do while 语句
如下图 do while 语句的基本结构 ,由 do 后面加 循环语句,再加 while 和他的表达式组成;
当程序运行到do 时,先执行 循环语句中的内容 ,然后再进行表达式的判断,如果为真将继续循环,为假则结束循环。
下面是程序演示
当程序到do 时直接进入循环,每循环一次结束表达式判断,只要 i 的值小于 5 就会执行次循环,每循环 一次打印一次 诸葛斌 ,并且 i++; 直至 i 等于或者大于 5 时就会结束循环;结果如图所示,打印出了5个诸葛斌,所以循环了5次;
do while 语句特点是先执行后判断(至少执行一次),与其他循环语句主要区别;
三 for语句
下面是for语句的基本结构,其中
表达式1为初始化部分,用于初始化循环变量的。
表达式2为条件判断部分,用于判断循环时候终止。
表达式3为调整部分,用于循环条件的调整(如i++)。
直接程序演示:
程序第一次到达 for 时,先执行表达式1初始化部分(i= 0);然后判断表达式 2 判断部分,如果为真 则输出 i 的值。每次结束循环后,先执行表达式 3(i++),然后执行表达式 2 判断如果为真继续输出 i 的值,直至 i 等于或者大于 5 时就会结束循环;结果如图所示 打印出了0 1 2 3 4,所以循环了5次;
以上就是循环语句最基本的用法了,循环语句可以嵌套if,switch,break,continue等,还有循环语句嵌套循环语句等各种用法,下面给个简单的嵌套就不讲解了(猜数字游戏(值1-100))
已测试在VC6.0和VS都能运行
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
void menu()
{
printf("********** 冰棒游戏厅 ********\n");
printf("*********** 1.play **********\n");
printf("*********** 0.exit **********\n");
printf("*****************************\n");
}
//RAND_MAX--rand函数能返回随机数的最大值。
void game()
{
int random_num = rand() % 100 + 1;//使答案为1-100
int input = 0;
while (1)
{
printf("请输入猜的数字>:");
scanf("%d", &input);
if (input > random_num)
{
printf("猜大了\n");
}
else if (input < random_num)
{
printf("猜小了\n");
}
else
{
printf("恭喜你,猜对了\n");
break;
}
}
}
int main()
{
int input = 0;
srand((unsigned)time(NULL));
do
{
menu();//游戏菜单栏
printf("请选择>:");
scanf("%d", &input);
switch (input)
{
case 1:
game();//游戏函数
break;
case 0:
break;
default:
printf("选择错误,请重新输入!\n");
break;
}
} while (input);
return 0;
}