【练气系列】 C关机游戏

简介: C 语言实现关机小游戏

C语言中提供了可以随意滥用的 goto语句和标记跳转的标号。从理论上, goto语句是没有必要的,实践中没有goto语句也可以很容易的写出代码。
但是某些场合下goto语句还是用得着的,最常见的用法就是终止程序在某些深度嵌套的结构的处理过程。

一、🎈示例演示

#include<stdio.h>
int main() {
    int c = 1;
    if (c) {
        goto start;
    }
    printf("1\n");
    printf("1\n");
    printf("1\n");
start:    
    printf("2\n");
    printf("3\n");
}

结果为:
在这里插入图片描述
即直接执行start:后边的内容
最常见的用法就是终止程序在某些深度嵌套的结构的处理过程。
例如:一次跳出两层或多层循环。
多层循环这种情况使用break是达不到目的的。它只能从内层循环退出到上一层循环。如:

#include<stdio.h>
int main() {
    int i = 0, j = 0, k = 0;
    for (i = 1; i <= 100; i++) {
        for (j = 1; j <= 100; j++) {
            for (k = 1; k <= 100; k++) {
                if (i = 10) {
                    goto error;
                }
            }
        }
    }
    error:
    printf("成功跳出");
}

结果为:
在这里插入图片描述

二、🎈goto语句实现关机程序

向控制台输出
shutdown -s -t 时间  即可设置关机倒计时,
shutdown -a  取消关机
此处设置关机时间倒计时60s,利用goto语句实现:如果输入“我是猪”,则取消关机,输入其他,则利用goto语句重新执行,并提示。

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
    char input[10] = { 0 };
    system("shutdown -s -t 60");

again:
    printf("电脑将在1分钟内关机,如果输入:我是猪,就取消关机!\n请输入:>");
    scanf("%s", input);
    if (0 == strcmp(input, "我是猪"))
    {
        system("shutdown -a");
    }
    else
    {
        goto again;
    }
    return 0;
}
  • 效果如下:

在这里插入图片描述
在这里插入图片描述


总结🎈

本文简单介绍了goto语句的使用,以及如何利用goto语句做一个简单的关机小程序,大家快去试试吧📌
在这里插入图片描述

相关文章
星际争霸之小霸王之小蜜蜂(十一)--杀杀杀
星际争霸之小霸王之小蜜蜂(十一)--杀杀杀
|
5天前
关机整蛊游戏
关机整蛊游戏
6 0
|
13天前
|
C语言
迟来的扫雷游戏
本文详细介绍了如何用C语言编写一个简单扫雷游戏,包括代码框架、关键函数如初始化棋盘、埋雷、显示雷数和玩家操作的实现。通过test.c、game.c和game.h文件的分工,展示了游戏逻辑的逐步构建。
20 0
|
4月前
|
C语言 C++
技术经验分享:HDU1234开门人和关门人
技术经验分享:HDU1234开门人和关门人
|
5月前
|
Java
普通玩家也能掌握的Java游戏加点系统,专业到让你无敌!
普通玩家也能掌握的Java游戏加点系统,专业到让你无敌!
33 1
|
5月前
|
程序员 数据处理 持续交付
【天幕系列 01】程序员为何“永不关机”:揭秘电脑守夜的背后原因
【天幕系列 01】程序员为何“永不关机”:揭秘电脑守夜的背后原因
46 2
|
5月前
|
程序员 开发工具
程序员的夜与电:为何不轻易按下“关机”键 ?
程序员的夜与电:为何不轻易按下“关机”键 ?
41 0
|
Python
与电脑进行猜数游戏
与电脑进行猜数游戏
53 0
|
开发者
做的游戏没人玩,还要不要继续做下去了
初入一个新的领域,想着自己一下子就能把事情做得很好,这是一种贪婪的妄念。这怎么可能呢?即使是天才,也需要天赋加上日积月累的练习,最终才能够把一件事情做得很好,达到一定的高度。而你竟然认为自己做的第一款游戏就能够大受欢迎,就能做得很好。这样想是不是有点儿不切实际? 第一次写字,第一次画画,第一次骑自行车,第一次游泳……总会是笨拙不堪的,第一次做的游戏同样也是这样,所以,这个问题也就变成了一个很普适的问题。
98 0
|
数据挖掘 开发者
关于泡泡龙游戏的一点儿总结,以及分享一个好方法
游戏是一种虚拟的产品,它很难被量化,也很难像工厂流水线生产实体产品一样的去生产。因为其中涉及到的情况太多太杂,如何衡量一个游戏的体量?怎样的游戏算是大游戏,怎样的游戏算是小游戏呢?如何判断一个游戏是做完了还是没有做完呢?如何衡量一个游戏开发者的水平呢?……等等等等。这里面的每一个因素都是一个变量,这么多的无法确定的变量合在一起,想要得到一个确定的结果,很显然是不太可能的。
149 0