#include#include #include void menu() { printf("*******************n"); printf("*******************n"); printf("******猜数字游戏***n"); printf("*******************n"); printf("*******************n"); } void game() { srand((unsigned int)time(NULL)); int ret = 0; int guess = 0; ret = rand() % 100 + 1; do { scanf_s("%d", &guess); if (guess > ret) printf("猜大了,请重新猜测n"); if (guess < ret) printf("猜小了,请重新猜测n"); if (guess == ret) printf("猜对了n"); } while (guess != ret); } int main() { menu(); printf("请输入一个数 确定是否要进行游戏n开始游戏请按1,取消游戏请按0n"); int input = 0; do { scanf_s("%d", &input); switch (input) { case 1: printf("开始游戏n"); game(); break; case 0: printf("退出游戏n"); break; default: printf("请重新输入n"); break; } } while (input); return 0; }
这是个猜数字的游戏 真正遇到的困难是定义函数时函数内的字符和main函数中的字符什么时候可以调用,什么时候需要重新定义的问题。还有对于srand函数的使用的位置也需要放在main函数中,否则就会成为伪随机种子。对于全局变量和局部变量还需要再掌握。
关于随机数的产生,rand函数,rand()需要给一个随机数种子,srand(),一般使用时间函数来做到随机,srand((unsigned int)time(NULL)),srand函数需要一个整形变量,这里unsigned强制转换格式变为int类型。



