学习完c语言循环、选择内容,我们对c语言有个初步的认识了,让我们来实现一个小项目吧!!!
1.猜数字小项目分析:
我们利用c语言制造出随机数来猜,在只知道范围的前提下我们无非有以下三种可能,猜大了、猜小了、猜对了。如果猜错了我们让玩家继续猜直到猜对为止,若猜对了给出选择是否继续玩哈!!!
2.项目实现
我们定义两个函数
菜单函数
- void menu()
- {
- ?? ?printf("********************\n");
- ?? ?printf("***** 1.play *******\n");
- ?? ?printf("***** 0.exit *******\n");
- ?? ?printf("********************\n");
- }
游戏函数
- ?void game()
- {
- ?? ?int ret = rand() % 100 + 1;//为了产生1到100的随机数
- ?? ?int guess = 0;
- ?? ?while (1)
- ?? ?{
- ?? ??? ?printf("请输入->");
- ?? ??? ?scanf("%d", &guess);
- ?? ??? ?printf("\n");
- ?? ??? ?if (guess == ret)
- ?? ??? ?{
- ?? ??? ??? ?printf("太棒了,你猜对了!!!\n\n");
- ?? ??? ??? ?break;
- ?? ??? ?}
- ?? ??? ?else if (guess < ret)
- ?? ??? ?{
- ?? ??? ??? ?printf("猜小了!!!\n\n");
- ?? ??? ?}
- ?? ??? ?else?
- ?? ??? ?{
- ?? ??? ??? ?printf("猜大了!!!\n\n");
- ?? ??? ?}
- ?? ?}
- }
若想使界面看着美观可自行修改哈!
在制造随机数时可能出现问题,要加上随机种子要不然你有作弊的嫌疑哦。嘿嘿!!!
在项目里加上时间戳就可了。哈哈哈。
3.完整代码如下
- #include<stdio.h>
- #include<time.h>
- void menu()
- {
- ?? ?printf("********************\n");
- ?? ?printf("***** 1.play *******\n");
- ?? ?printf("***** 0.exit *******\n");
- ?? ?printf("********************\n");
- }
- void game()
- {
- ?? ?int ret = rand() % 100 + 1;//产生1到100随机数
- ?? ?int guess = 0;
- ?? ?while (1)
- ?? ?{
- ?? ??? ?printf("请输入->");
- ?? ??? ?scanf("%d", &guess);
- ?? ??? ?printf("\n");
- ?? ??? ?if (guess == ret)
- ?? ??? ?{
- ?? ??? ??? ?printf("太棒了,你猜对了!!!\n\n");
- ?? ??? ??? ?break;
- ?? ??? ?}
- ?? ??? ?else if (guess < ret)
- ?? ??? ?{
- ?? ??? ??? ?printf("猜小了!!!\n\n");
- ?? ??? ?}
- ?? ??? ?else?
- ?? ??? ?{
- ?? ??? ??? ?printf("猜大了!!!\n\n");
- ?? ??? ?}
- ?? ?}
- }
- int main()
- {
- ?? ?int input=0;
- ?
- ?? ?srand((unsigned int)time(NULL));//导入随机种子
- ?
- ?? ?do
- ?? ?{
- ?? ??? ?menu();
- ?? ??? ?printf("请选择->");
- ?? ??? ?scanf("%d", &input);
- ?? ??? ?printf("\n");
- ?? ??? ?switch (input)
- ?? ??? ?{
- ?? ??? ?case 1:
- ?? ??? ??? ?printf("开始游戏\n\n");
- ?? ??? ??? ?game();
- ?? ??? ??? ?break;
- ?? ??? ?case 0:
- ?? ??? ??? ?printf("退出游戏");
- ?? ??? ??? ?break;
- ?? ??? ?default:
- ?? ??? ??? ?printf("输入错误,请重新输入!!!\n");
- ?? ??? ?}
- ?
- ?? ?} while (input);
- ?? ?return 0;
- }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持w3xue。