猜数字游戏的实现在文章最后面
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-100int 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;}