制作一个自动关机程序

当我们在取得一定C语言基础的时候,不妨尝试写一个趣味程序:输入“我是猪”否则电脑将在60s后关机。

首先要明确制作语言的逻辑

第一步:电脑将在60s后关机

首先布局出大体的框架结构

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int main()
{




    system("pause");
    return 0;
}

那么问题来了:如何让电脑运行关机程序,又如何让电脑关闭自动关机程序?

我们打开搜索栏目,搜索cmd打开命令提示符,我们尝试输入shutdown -s -t  60(注意中间有空格)是不是就会出现系统提示啦,虽然你把提示关闭了,但是电脑后台依旧是在为你计时的,不过先不要慌,现在你输入 shutdown -a这时电脑设定的关机就解除了

根据这个思路,我们可以写出

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//关机程序:电脑运行起来后一分钟内关机
//如果输入:“我是猪”。那么就取消关机
int main()
{
    char input[20]={0};  //设定存放输入字符的数组
    system("shutdown -s -t 60");      // 设定关机程序

    printf("你的电脑将在60s后关机,如果输入“我是猪”,则取消关机\n");
    scanf("%s",input);    //检测输入的字符
   
    system("pause");
    return 0;
}

第二步:输入”我是猪“取消关机

我们需要将输入的字符串与”我是猪“对比,我们此时需要用到一个比较字符串大小的库函数strcmp

如果输错则不进行取消关机操作,那么我们会使用if语句

则代码可以写成

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//关机程序:电脑运行起来后一分钟内关机
//如果输入:“我是猪”。那么就取消关机
int main()
{
    char input[20]={0};
    system("shutdown -s -t 60");


    printf("你的电脑将在60s后关机,如果输入“我是猪”,则取消关机\n");
    scanf("%s",input);
    if(strcmp(input,"我是猪")==0)      //判断是否输入的是"我是猪"
            {
                system("shutdown -a");               //输入”我是猪“所执行的程序
                printf("恭喜你,你的关机被取消了,哈哈哈哈哈哈哈哈哈哈哈");

            }
            

    system("pause");
    return 0;
}

此时我们又想到如果输入一次输入错误的话则用户的电脑将无法取消预定关机,所以我们应该给用户重复多的机会,在此特定函数下,我们会发现选择goto语句较为简洁

我们有

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

//关机程序:电脑运行起来后一分钟内关机
//如果输入:“我是猪”。那么就取消关机
int main()
{
    char input[20]={0};
    system("shutdown -s -t 60");
again:                               //goto语句指向的句子
    printf("你的电脑将在60s后关机,如果输入“我是猪”,则取消关机\n");
    scanf("%s",input);
    if(strcmp(input,"我是猪")==0)
            {
                system("shutdown -a");
                printf("恭喜你,你的关机被取消了,哈哈哈哈哈哈哈哈哈哈哈");

            }
            else{
                goto again;         //goto语句
            }

    system("pause");
    return 0;
}

好啦,一个简单的整蛊程序就制作好了

当我们想把程序转给室友时,我们尽量不要直接把.c文件传给室友以免他看出部分端倪,我们可以将debug版本改成release版本,再讲release文件夹下的exe文件直接发送给室友,这样就可以看到室友成为小猪的样子了!

  • 9
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: 使用STM32F4制作空调控制程序可以实现对空调系统的智能控制和优化,提供更加舒适和节能的室内环境。以下是关键功能和实现方式的简介。 1. 温度控制:程序通过读取温度传感器的数据,即时监测室内温度,并与预设的目标温度进行比较。根据差异,控制空调机组的运行状态,自动调节制冷或制热模式,使室内温度稳定在设定范围内。 2. 风速调节:根据用户设定的风速模式,控制空调机组的风扇旋转速度,以提供不同的风速和风力。程序通过读取用户选择的模式信息,并发送相应的控制信号给风机驱动器,实现风速的调节和切换。 3. 定时开关机:提供定时开关机功能,通过在程序中设置开关机时间,控制空调机组的启停。根据用户的需求,在指定的时间自动启动或关闭空调以节省能源和提供舒适的室内环境。 4. 温度补偿:由于传感器的位置不同,有时会出现温度误差。通过程序中的温度补偿算法,根据传感器检测到的温度和对比参照,对温度数据进行修正,提高温度的准确性和稳定性。 5. 故障诊断:程序还可以检测空调机组的故障,并在出现问题时及时报警。通过读取故障状态寄存器或错误标志,程序可以判断故障类型,并触发相应的处理措施,如停止空调工作或给出故障代码供用户参考。 综上所述,使用STM32F4制作的空调控制程序可以实现智能化的空调管理,提供舒适的室内环境和高效的能源利用。这个程序可以根据用户需求和环境变化自动调整空调运行状态,提高人们的生活质量和能源的利用效率。 ### 回答2: STM32F4是一种强大的微控制器系列,非常适合用于制作空调控制程序。使用STM32F4,我们可以实现各种空调功能,比如温度控制、湿度控制、风速控制等。 空调控制程序的核心是采集传感器数据并根据这些数据控制空调的工作状态。我们可以连接温度传感器来监测室内温度,并根据设定的温度范围调整空调的工作状态。采集到温度数据后,我们可以使用PWM输出来控制压缩机的速度,从而调节制冷或制热效果。此外,我们还可以使用其他传感器,如湿度传感器,以达到更精确的控制效果。 在空调控制程序中,我们还需要实现用户界面和控制逻辑。使用STM32F4的LCD显示屏,我们可以创建一个交互式界面,让用户可以轻松地设定温度和风速等参数。同时,我们可以编写控制逻辑,如设置温度的误差范围和温度调节速度等。根据当前温度和用户设置的目标温度,我们可以自动调整空调的工作状态,以实现稳定的温度控制。 此外,STM32F4系列微控制器还具有丰富的通信接口和扩展能力。我们可以使用串口、CAN总线或以太网接口,将空调控制程序与其他设备或智能家居系统进行连接,实现远程控制和监测。此外,我们还可以通过添加蓝牙或Wi-Fi模块,使空调控制程序具备无线通信能力。 总之,使用STM32F4制作空调控制程序可以实现精确的温度控制和用户友好的操作界面,同时具备扩展能力和通信接口,使其能够与其他设备互联,满足现代化生活的需求。 ### 回答3: 用STM32F4制作的空调控制程序主要包括以下几个方面的功能: 1. 温度控制:程序中会使用STM32F4的温度传感器模块或外部温度传感器实时监测室内温度,并根据用户设定的温度值进行控制。当室内温度高于设定温度时,程序会自动打开空调,将室内温度调节至设定温度以下;当室内温度低于设定温度时,程序会关闭空调,保持室内温度稳定。 2. 模式选择:用户可以通过按键或触摸屏界面选择不同的工作模式,如制冷模式、制热模式、送风模式等。程序会根据用户选择的模式进行相应的空调控制,以满足用户不同的需求。 3. 风速调节:用户可以通过按键或触摸屏界面调节空调的风速。程序会根据用户选择的风速,控制空调风扇的转速,以达到对空气流动的控制,同时保证舒适的温度。 4. 定时功能:空调控制程序可以设置定时开关机功能。用户可以设置空调的开关机时间,在设定的时间内,空调会自动开关机,以提供预设的温度环境。 5. 遥控功能:程序可以支持与遥控器的通信,使用户可以通过遥控器对空调进行控制,如调节温度、模式、风速等。 综上所述,使用STM32F4制作的空调控制程序可以实现温度控制、模式选择、风速调节、定时功能以及遥控功能等多种功能,为用户提供舒适、智能的空调使用体验。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

RedefineLim.

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值