栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

【C语言】goto语句用法 自动关机小程序(关爱同学)

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【C语言】goto语句用法 自动关机小程序(关爱同学)

goto语言

C语言中提供了可以随意滥用的goto语句和标记跳转的标号.

从理论上goto语句是没有必要的,实践中没有goto语句也可以很容易的写出代码。

但是某些场合下goto语句还是用得着的,最常见的用法就是终止程序在某些深度嵌套的结构的处理过程,例如一次跳出两层或多层循环。

.这种情况使用break是达不到目的的。它只能从最内层循环退出到上一层的循环。下面是使用goto语句的一个例子:

一个关机程序

#define _CRT_SECURE_NO_WARNINGS
#include
#include
#include
//关机程序
//只要运行起来,电脑就会在一分钟内关机
//shutdown -s -t 60  一分钟关机命令
//shutdown -a        取消关机命令
//c语言提供了一种函数专门执行系统命令的函数:system()-执行系统命令
int main()
{
	char input[20] = { 0 };
	system("shutdown -s -t 1800");// system 在 stdlib.h
again:
	printf("请注意你的电脑还有半小时就关机,如果输入:我是猪就取消关机n");
	scanf("%s", input);//数组名本来就是地址
	 //两个字符串比较是不能用==,应该使用strcmp函数 
	if (strcmp(input, "我是猪") == 0)  //strcmp函数比较之后正确返回0
	{
		system("shutdown -a");
	}
	else
	{
		goto again;
	}
	return 0;
}

当然这里面的goto是可以替换掉的

	char input[20] = { 0 };
    system("shutdown -s -t 1800");
	while (1)
	{		
		printf("请注意你的电脑还有半小时就关机,如果输入:我是猪就取消关机n");
		scanf("%s", input);

		if (strcmp(input, "我是猪") == 0)  
		{
			system("shutdown -a");
		}

	}
	return 0;

那么goto什么时候用最好呢?

 主要用于跳出复杂多重的循环

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/778899.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号