c語言整蠱朋友小程式
文章目錄
- c語言整蠱朋友小程式
- 前言
- 一、我是豬關機程式
- 1.dos命令(強制關機)
- 2.原始碼
- 二、無限彈窗
- 1.vbs
- 2.創建text.vbs,并打開
- 2.想要通程序式指定創建位置怎么辦?
- 3.原始碼
- 總結
前言
感覺學了c語言后仍然一無是處?!!想要整蠱一下朋友仍然不會?!!
別慌,看完這篇文章,你就會了,
下面給大家分享兩個基礎的整蠱小程式
1.我是豬關機程式
2.無限彈窗程式
一、我是豬關機程式
效果:運行程式后電腦在60s后關機,如果輸入“我是豬”則取消關機;如果輸入“你是豬”則立即關機;輸入其他文字會提示重新輸入;若強行關閉程式電腦仍會關機,
本程式基于控制臺,其功能是通過dos命令來實作,
那么就先講一下所用到的dos命令(shutdown -s -t 60)
1.dos命令(強制關機)
shutdown -s -t 60 -c -f
各引數的意思:
-s 動作為關機
-r 為重啟
-a 為取消關機
-t 60 延遲60秒關機
-c “想要顯示的注釋”
-f 關機時強制關閉所有程式而不顯示任何警告,
標準格式:(shutdown -s -t xx)
t xx是關機延時時間 /秒;xx可以是00,直接關機,
注意:可能輸入命令后,windows提示n分鐘后關機,但關機時間仍然是設定的時間,
2.原始碼
注意的是,想使用cmd命令,需要呼叫庫函式<stdlib.h>
話不多說,直接原始碼
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
int main(void)
{
char b[10]="我是豬",c[10]="你是豬",a[10];
system("shutdown -s -t 60"); //命令關機
do{ //判斷輸入的是否為指定的陳述句
printf("如果不想關機,請(只能輸入這兩句話)輸入我是豬 or 你是豬 只給你一分鐘時間哦\n");
scanf("%s",&a);
if(strcmp(a,b)==0){ //判斷輸入的陳述句
system("shutdown -a"); //取消關機命令
system("cls"); //清屏函式
printf("哈哈哈,okok\n");
system("pause"); //暫停函式
}
if(strcmp(a,c)==0){
system("pause");
printf("我懷疑你在罵我,那我只好給你關機了\n");
system("shutdown -s -t 5"); //5s后關機
printf("哈哈哈,拜拜\n");
system("pause");
}
}while(strcmp(a,b)!=0&&strcmp(a,c)!=0);
return 0;
}
整蠱朋友前一定提醒他保存當前檔案哦,
二、無限彈窗
效果:運行程式后會出現無限彈窗,無法關閉(其實通過任務管理器還是可以關閉的),
本程式基于vbs,其功能是通過vbs陳述句來實作,
那么就先講一下所用到的vbs陳述句吧
1.vbs
VBS是基于Visual Basic的腳本語言,VBS的全稱是:Microsoft Visual Basic Script Edition,(微軟公司可視化BASIC腳本版),
其語言類似Visual Basic(VB),
1.我們用到的無限彈窗首先需要一個輸出到螢屏上的陳述句:
msgbox"xxx"
這條陳述句是輸出到螢屏的意思
2.其次是一個回圈,讓視窗無限回圈,這類似于do while(1)
do
(其他陳述句)
loop
整體代碼如下(示例):
do
msgbox"hello"
loop
2.創建text.vbs,并打開
vbs是基于檔案寫的,所以此時應該控制創建一個.vbs檔案,并打開它
fopen函式的各引數
r 打開一個已有的文本檔案,允許讀取檔案,
w 打開一個文本檔案,允許寫入檔案,如果檔案不存在,則會創建一個新檔案,在這里,您的程式會從檔案的開頭寫入內容,如果檔案存在,則該會被截斷為零長度,重新寫入,
a 打開一個文本檔案,以追加模式寫入檔案,如果檔案不存在,則會創建一個新檔案,在這里,您的程式會在已有的檔案內容中追加內容,
r+ 打開一個文本檔案,允許讀寫檔案,
w+ 打開一個文本檔案,允許讀寫檔案,如果檔案已存在,則檔案會被截斷為零長度,如果檔案不存在,則會創建一個新檔案,
a+ 打開一個文本檔案,允許讀寫檔案,如果檔案不存在,則會創建一個新檔案,讀取會從檔案的開頭開始,寫入則只能是追加模式,
如果處理的是二進制檔案,則需使用下面的訪問模式來取代上面的訪問模式:“rb”, “wb”, “ab”, “rb+”, “r+b”, “wb+”, “w+b”, “ab+”, “a+b”
'b’表示二進制
關閉檔案可以使用 fclose( ) 函式
FILE *pf = fopen(D:/text.vbs, "w+"); // 以寫、創建形式打開檔案
if (!pf)
return -1; //判斷是否可以打開
fputs(b, D:/text.vbs); // 向檔案寫入字串
fputc(10,D:/text.vbs);
fclose(D:/text.vbs); // 關閉檔案
printf("準備打開檔案");
system(D:/text.vbs); //cmd命令打開檔案
2.想要通程序式指定創建位置怎么辦?
很多人想要自己輸入一個地址 ,好說,我在這里給出的方法是用字串以及連接函式strcat()
但注意地址中最好不要出現空格
當然,如果一定要空格的話,也可以:
1)最簡單的方法就是給路徑名上加上“” 然后cd或執行即可;
2)用縮寫,比如c:\Program Files縮寫為c:\Progra~1
在我的其他博文中說明了這個問題,想知道具體的可以去翻一下哦
char c[20],b[100],a[20]="""D:/",d[5]=".",e[10],f[10]="""";
/*注意:""代表一個";//代表一個/*/
printf("請輸入標題");
scanf("%s",&c);
printf("請輸入格式");
scanf("%s",&e);
strcat(a,c);
strcat(a,d);
strcat(a,e);
strcat(a,f); //將所有字串連接起來
#define file a //宏定義
3.原始碼
為了可以減少以后麻煩,我將寫入環節改為了回圈(即可以隨意輸入內容,以“ . ” 作為結束標志);
同時后綴名也進行了隨意輸入,不局限于.vbs,增強了程式的實用性,
上原始碼
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
char c[20],b[100],a[20]="""D:/",d[5]=".",e[10],f[10]="""";
printf("請輸入標題");
scanf("%s",&c);
printf("請輸入格式");
scanf("%s",&e);
strcat(a,c);
strcat(a,d);
strcat(a,e);
strcat(a,f);
#define file a
FILE *pf = fopen(file, "w+"); // 以寫、創建形式打開檔案
if (!pf)
return -1; //判斷是否可以打開
printf("請輸入內容 (如果停止輸入請按 “.”)");
do{
scanf("%s",&b);
fputs(b, pf); // 向檔案寫入字串
fputc(10,pf);
}while(b[0]!='.');
fclose(pf); // 關閉檔案
printf("準備打開檔案");
system(file);
printf("ok");
return 0;
}
總結
以上就是今天要講的內容,你學廢了嘛?!
當然,整蠱要適當,本文僅用于學習,謝謝,
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/255861.html
標籤:其他
