1.猜数字游戏
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define N 10
void menu() {//游戏菜单打印
printf("------猜数字游戏------\n");
printf("**** 猜1到100之间的随机数 ****\n");
printf("**** 开始游戏:1 *****\n");
printf("**** 结束游戏:0 *****\n");
printf("******************************\n");
}
void game() {//猜数字游戏本体
system("cls");
printf("游戏开始\n");
int r = rand() % 100 + 1;
int guess = 0,count=N;
while (count) {
scanf("%d", &guess);
if (guess > r)
printf("猜大了,继续\n");
else if (guess < r)
{
printf("猜小了,继续\n");
}
else {
printf("猜对了,恭喜,游戏结束,数字是%d\n",guess);
break;
}
count--;
}
if (count == 0)
printf("次数用完,游戏失败");
}
void main() {
int input;
srand((unsigned int)time(NULL));
do {
menu();
scanf("%d", &input);
switch (input) {
case 1:game();
break;
case 0:printf("游戏结束\n");
break;
default:
printf("输入错误,重新输入\n");
break;
}
} while (input);
return 0;
}
输出

2.打印素数
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h>
#define MIN 100
#define MAX 200
void test() {
printf("打印%d到%d的素数\n",MIN,MAX);
int count = 0;
for (int i = MIN; i <= MAX; i++)
{
for (int j = 2; j < sqrt(i); j++)
{
if (i % j == 0)
{
printf("%d ", i);
count++;
break;
}
}
if (count == 8) {
count = 0;
printf("\n");
}
}
}
int main() {
test();
return 0;
}
输出

3.打印乘法口诀表
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
void test() {
for (int i = 1; i <= 9; i++)
{
for (int j = 1; j <= i; j++)
{
printf("%d*%d=%d ", j, i, j * i);
}
printf("\n");
}
}
int main() {
test();
return 0;
}
输出

在 C 语言中,循环结构用于反复执行某段操作,直到特定条件不再满足,主要有三种形式,核心差异体现在执行逻辑和适用场景上:
while 循环先检查条件是否成立,若成立则执行循环内容,执行后再次检查条件,如此反复;若条件不成立,则直接跳过循环。这种循环的特点是 “先判断,后执行”,循环内容可能一次都不执行,适合条件未知、需动态判断的场景。
do-while 循环先执行一次循环内容,再检查条件是否成立;若成立则继续执行循环内容,之后再次检查条件;若不成立则结束循环。其特点是 “先执行,后判断”,循环内容至少会执行一次,适合需要确保初始操作必须完成的场景,比如用户输入验证。
for 循环将循环的初始化(如设置起始值)、条件判断(决定是否继续循环)、迭代操作(如更新循环变量)整合在一起,结构更紧凑。适合已知循环次数或循环范围明确的场景,逻辑上与 while 循环类似,但通过集中控制参数,使循环流程更清晰。
此外,循环中可通过两个语句控制流程:break用于立即终止整个循环,直接跳出循环体;continue用于跳过当前循环中剩余的操作,直接进入下一次循环的条件判断。这些控制语句能灵活调整循环的执行路径。
6711

被折叠的 条评论
为什么被折叠?



