鹏哥C语言39---goto语句(关机程序 )

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>

//------------------------------------------------------------------------------------------------------------4.  goto 语句
//跳转功能
// goto 语句并不是必要的,可以用其他的语句替代
// 滥用 goto 会打断原本代码的逻辑
// goto 语句不能跨函数跳转

//--------------------------------------语法

//int main()
//{
//    again:
//    printf("hehe\n");
//    printf("haha\n");
//    goto again;
//
//    return 0;
//}

//------------------------------ goto 语句适合的场景
// goto 语句终止深度嵌套的语句和循环
/*
for(...)
{
    for (...)
    {
        for (...)
        {
            if (disaster)
                goto error;

        }
    }
}
error:
    if(disaster)
    ...
*/


//---------------------------------------------------------------------------------------------------关机程序
// 1. 电脑运行起来后,1分钟内关机
// 2. 如果输入:我是猪,就取消关机

//shutdown -s -t 60 //倒计时60秒关机
//shutdown -a         //取消关机


//----------------------------------------------------------------------关机程序:goto 版本
//int main()
//{
//    char input[20] = { 0 };
//    system("shutdown -s -t 60");
//again:
//    printf("请注意,你的电脑在60s内关机,如果输入:我是猪,就取消关机\n");
//    scanf("%s", input);
//
//    if (strcmp(input , "我是猪")==0) //两个字符串相比较必须用 strcmp
//    {
//        system("shutdown -a");
//    }
//    else
//    {
//        goto again;
//    }
//    return 0;
//}

//----------------------------------------------------------------------关机程序:while 版本

int main()
{
    char input[20] = { 0 };
    system("shutdown -s -t 120");

    while(1)
    {
        printf("请注意,你的电脑在120s内关机,如果输入:我是猪,就取消关机\n");
        scanf("%s", input);
        if (strcmp(input, "我是猪") == 0) //两个字符串相比较必须用 strcmp
        {
            system("shutdown -a");
            break;
        }
    }
    
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值