你是真的“C”——goto语句设计一个关机程序

简介: goto语句的巧妙运用
哈喽!😄各位CSDN的uu们,我是你的博客好友小梦,希望我的文章可以给您带来一定的帮助,话不多说,文章推上!欢迎大家在评论区唠嗑指正,觉得好的话别忘了一键三连哦!😘

前言:🙌

    哈喽各位友友们😊,我今天又学到了==很多有趣的知识==,现在迫不及待的想和大家分享一下!今天给大家分享一个非常有趣的知识——用goto语句编写一个关机小程序。主要用到了==shutdown命令语句、goto语句、strcmp函数等知识点==。希望大家能够通过阅读此文学习知识~

一、什么是goto语句?🙌

   C语言中提供了可以随意滥用的goto语句和标记跳转的标号。从理论上讲,goto语句是没有必要的,实践中没有goto语句也可以很容易的写出代码。

二、goto语句的作用是什么?🙌

   goto语句在某些场合goto语句还是用得着的,==最常见的用法是终止程序在某些深度嵌套结构的处理过程==。例如,一次跳出多层循环的场景。一次跳出多层循环使用break是比较麻烦的,因为break每次使用只能跳出一层循环,在这里只能用多个break才能实现,goto语句的优势就体现出来了。

三、goto语句的巧用实例——关机小程序🙌

1、goto语句版关机小程序设计源代码:😍

   goto语句的使用效果其实和我们的循环有异曲同工之妙,goto语句的编写也可以实现循环的效果。对比两个版本的关机小程序设计,你就能深刻感受到啦!

#define _CRT_SECURE_NO_WARNINGS 1//如果是VS编译器才需要这句代码
#include<stdio.h>
#include<stdlib.h>//shutdown命令语句的头文件
#include<string.h>//strcmp的头文件
int main()
{
    char input[20] = { 0 };
    system("shutdown -s -t 60");
again:
    printf("电脑将在1分钟内关闭,如果输入:我是猪,就取消关机!\n请输入:>");
    scanf("%s", input);
    //strcmp函数用于比较两个字符串的大小
    if (0 == strcmp(input, "我是猪"))
    {
        system("shutdown -a");
    }
    else
    {
        goto again;
    }
    return 0;
}

2、循环语句版关机小程序设计源代码:😍

#define _CRT_SECURE_NO_WARNINGS 1//如果是VS编译器才需要这句代码
#include<stdio.h>
#include<stdlib.h>//shutdown命令语句的头文件
#include<string.h>//strcmp的头文件
int main()
{
    char input[20] = { 0 };
    system("shutdown -s -t 60");
    while (1)
    {
        printf("电脑将在1分钟内关闭,如果输入:我是猪,就取消关机!\n请输入:>");
        scanf("%s", input);
        if (0 == strcmp(input, "我是猪"))
        {
            system("shutdown -a");
            break;
        }
    }
    return 0;
}

总结撒花💞

    上述就是我今天分享的主要内容啦,你学会了吗?但是,不要学会了这个小程序后去恶搞别人的电脑哇(在别人的电脑编写这个程序) ,可以在自己电脑玩玩测试一下就好啦哈哈哈!如果我写的有什么的不好之处或者不足之处,请在文章下方给出你宝贵的意见😊。如果觉得我写的好的话请点个赞赞和关注哦~😘😘😘

相关文章
|
2月前
|
网络协议 API Windows
MASM32v11编程调用Process32First失败: 程序发出命令,但命令长度不正确
MASM32v11编程调用Process32First失败: 程序发出命令,但命令长度不正确
|
6月前
|
Shell Linux Windows
从您描述的情况来看,您在执行`exit`命令后,程序立即终止了
【2月更文挑战第32天】从您描述的情况来看,您在执行`exit`命令后,程序立即终止了
38 1
|
6月前
|
监控 Shell
shell学习(五) 【循环控制continue,break、while 语法】
shell学习(五) 【循环控制continue,break、while 语法】
36 0
|
6月前
|
C语言
19.C语言:用break语句提前终止循环
19.C语言:用break语句提前终止循环
145 0
|
6月前
|
C语言
20.C语言:用continue语句提前终止循环
20.C语言:用continue语句提前终止循环
113 0
|
传感器 Windows
关于单片机编程里面调用sprintf死机的解决方法及原因分析
关于单片机编程里面调用sprintf死机的解决方法及原因分析
509 0
零基础VB教程056期:出错处理和代码调试goto语句 on error语句
零基础VB教程056期:出错处理和代码调试goto语句 on error语句
149 0
|
C语言
goto语句用法
goto语句用法
202 0