c语言分支和循环的应用使用rand的函数生成随机数需要先引用srand函数和time。以下为猜数字大小的代码。用if比较大小do....while进行先执行后再根据游戏需求选择是否玩游戏switch进行条件选择while循环继续游戏。​ #includestdio.h #includestdlib.h//引用srand函数需要使用的头文件 #includetime.h// 引用time函数需要使用的头文件 void meun() { printf(*** 1 play ***\n); printf(*** 0 exit ***\n); } void game() { int r rand() % 100 1;//生成1~100的随机数 int guess 0; while (1) { printf(请输入猜想的数字); scanf_s(%d, guess); if (r guess) { printf(猜小了\n); } else if(rguess) { printf(猜大了\n); } else { printf(猜中了\n); } } } int main() { srand((unsigned int)time(NULL));//随机生成数字 int input 0; do { meun(); int input rand() % 100; printf(请输入数字); scanf_s(%d, input); switch (input) { case 1: game(); break; case 2: printf(游戏结束\n); break; case 3: printf(选择错误重新选择\n); break; } } while (input); return 0; } ​下面在此基础上又增加了次数有限制次数猜数字。#includestdio.h #includestdlib.h #includetime.h void meun() { printf(*** 1 play ***\n); printf(*** 0 exit ***\n); } void game() { int r rand() % 100 1; int guess 0; int count 5;\\选择你要的次数 while (1) { printf(\n你还有%d机会, count); printf(请输入猜想的数字); scanf_s(%d, guess); if (r guess) { printf(猜小了\n); } else if(rguess) { printf(猜大了\n); } else { printf(猜中了\n); } count--;\\猜错后次数减少 if (count 0) { printf(你猜错了正确答案是%d\n, r); } } } int main() { srand((unsigned int)time(NULL)); int input 0; do { meun(); int input rand() % 100; printf(请输入数字); scanf_s(%d, input); switch (input) { case 1: game(); break; case 2: printf(游戏结束\n); break; case 3: printf(选择错误重新选择\n); break; } } while (input); return 0; }字符串函数strcmp函数的使用标准规定第⼀个字符串⼤于第⼆个字符串则返回⼤于0的数字 ◦第⼀个字符串等于第⼆个字符串则返回0 ◦第⼀个字符串⼩于第⼆个字符串则返回⼩于0的数字#includestdio.h #includestring.h//使用字符串函数要用的头文件 int main() { char arr1[] abcdef; char arr2[] abcde; int r strcmp(arr1, arr2);//使用strcmp比较字符串的大小 if (r 0) { printf(arr1arr2\n); } else if (r 0) { printf(arr1arr2); } else { printf(arr1arr2); } return 0; }#includestdio.h #includestring.h #includeassert.h//使用assert需要使用的头文件 int my_strcmp(const char* str1, const char* str2)//strcmp的模拟实现 { int ret 0; assert(str1 ! NULL); assert(str2 ! NULL); while (*str1 *str2) { if (*str1 \0) { return 0; } str1; str2; } return *str1 - *str2; } int main() { char arr1[] abcdef; char arr2[] abcde; int r my_strcmp(arr1, arr2); if (r 0) { printf(arr1arr2\n); } else if (r 0) { printf(arr1arr2); } else { printf(arr1arr2); } return 0; }