ITPub博客

首页 > > > C语言实现定时关机源代码

C语言实现定时关机源代码

作者:else 时间:2019-12-11 17:02:55 0 删除 编辑

有时候我们想离开电脑去做别的事情,但用CMD命令定时关机实在太麻烦,还要换算成秒,输错了也是头疼,取消定时关机也很麻烦。总之体验感太差!今天为大家带来一个用C语言实现定时关机。输入分钟后自动启动定时关机计划,支持一键取消定时关机和再从新设定关机时间。

在CMD命令中启动定时关机命令是shutdown -s -t xx。xx为要设定定时关机的时间,单位是秒,执行这个命令后就会启动定时关机计划。取消定时关机命令是:shutdown -a。执行后会取消之前设定的定时关机计划。但如果没有设定定时关机计划,会提示未设置定时关机计划。

同样我们在C语言中也是要用到这个命令,通过system()函数执行定时关机或取消定时关机。

具体实现如下:

输入时间实现关机

//程序分为2个部分:1.按键功能实现实现部分——输入相应的按键进入相应的功能

// 2.执行定时关机或取消定时关机部分

//包含的头文件

#define _CRT_SECURE_NO_WARNINGS//取消vs2017中printf函数不安全warning问题

#include

#include//字符串处理函数

#include

#include//包含按键交互

功能界面

取消定时关机

这里我先进行设定关机时间,再进入功能区选择。当然也可以反着来

//主函数部分

int main()

{

DelayShutdown();

Keydown();

return 0;

}

//功能用两个函数实现

void DelayShutdown();//延时关机函数

void Keydown();//按键交互函数

//按键功能选择部分:

void Keydown()

{

int userKey;

while (1)

{

printf("关机提示语:\n1键为取消定时\n2键为重新设定时间\n0键为退出本程序\n");

printf("请输入编号:");

scanf("%d",&userKey);

switch (userKey)

{

case 1://1.取消定时关机

system("shutdown -a");

Sleep(1000);

break;

case 2://重新设定时间

system("shutdown -a");//先取消计划关机,再重新设定时间关机

DelayShutdown();

break;

case 0://退出本程序

printf("正在退出中....\n");

Sleep(2000);

exit(0);

break;

default:

printf("输入错误!请重新输入!\n");

Sleep(1000);

}

system("cls");

}

}

//定时关机功能实现部分:

void DelayShutdown()

{

int delayTemp, delay;

char shutdown[30];

printf("请输入设置定时关机的时间(分钟):");

scanf("%d", &delayTemp);

delay = delayTemp * 60;//把输入的时间数转为秒

sprintf_s(shutdown, "shutdown -s -t %d", delay);//格式化输出字符串

system(shutdown);

}

关于本程序不能在别人电脑上运行问题:

在vs2017中解决方法:

将debug改为release。

进入项目——>属性里面将C/C++——>代码生成——>运行库将/MD或/MDd改为/MT或/MTd再从新编译一下就可以了。

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/2318/viewspace-3161000/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2019-07-17

  • 博文量
    271
  • 访问量
    19560