本論文研究了開源路由器的實現(xiàn)方法,通過具體的實驗在X O R P 上實現(xiàn)了R I P , O S P F , B G P 等一系列協(xié)議,在P A C K E T T R A C E R 上進行了仿真,并對開源路由器進行了性能評價。
標簽: 開源路由器
上傳時間: 2015-02-21
上傳用戶:13666909595
C語言是在 70 年代初問世的。一九七八年由美國電話電報公司(AT&T)貝爾實驗室正 式 發(fā) 表 了 C 語 言 。 同 時 由 B.W.Kernighan 和 D.M.Ritchit 合 著 了 著 名 的 “THE C PROGRAMMING LANGUAGE” 一書。 通常簡稱為《 K&R》, 也有人稱之為《 K&R》 標準。 但是, 在 《 K&R》中并沒有定義一個完整的標準 C 語言, 后來由美國國家標準協(xié)會 ( American National Standards Institute) 在此基礎上制定了一個 C 語言標準, 于一九八三年發(fā)表。 通常 稱之為 ANSI C。
上傳時間: 2016-08-03
上傳用戶:vito
#include <stdlib.h> #include<stdio.h> #include <malloc.h> #define stack_init_size 100 #define stackincrement 10 typedef struct sqstack { int *base; int *top; int stacksize; } sqstack; int StackInit(sqstack *s) { s->base=(int *)malloc(stack_init_size *sizeof(int)); if(!s->base) return 0; s->top=s->base; s->stacksize=stack_init_size; return 1; } int Push(sqstack *s,int e) { if(s->top-s->base>=s->stacksize) { s->base=(int *)realloc(s->base,(s->stacksize+stackincrement)*sizeof(int)); if(!s->base) return 0; s->top=s->base+s->stacksize; s->stacksize+=stackincrement; } *(s->top++)=e; return e; } int Pop(sqstack *s,int e) { if(s->top==s->base) return 0; e=*--s->top; return e; } int stackempty(sqstack *s) { if(s->top==s->base) { return 1; } else { return 0; } } int conversion(sqstack *s) { int n,e=0,flag=0; printf("輸入要轉(zhuǎn)化的十進制數(shù):\n"); scanf("%d",&n); printf("要轉(zhuǎn)化為多少進制:\n"); scanf("%d",&flag); printf("將十進制數(shù)%d 轉(zhuǎn)化為%d 進制是:\n",n,flag); while(n) { Push(s,n%flag); n=n/flag; } while(!stackempty(s)) { e=Pop(s,e); switch(e) { case 10: printf("A"); break; case 11: printf("B"); break; case 12: printf("C"); break; case 13: printf("D"); break; case 14: printf("E"); break; case 15: printf("F"); break; default: printf("%d",e); } } printf("\n"); return 0; } int main() { sqstack s; StackInit(&s); conversion(&s); return 0; }
標簽: 整數(shù) 棧 基本操作 十進制 轉(zhuǎn)化 進制
上傳時間: 2016-12-08
上傳用戶:愛你198
#include "iostream" using namespace std; class Matrix { private: double** A; //矩陣A double *b; //向量b public: int size; Matrix(int ); ~Matrix(); friend double* Dooli(Matrix& ); void Input(); void Disp(); }; Matrix::Matrix(int x) { size=x; //為向量b分配空間并初始化為0 b=new double [x]; for(int j=0;j<x;j++) b[j]=0; //為向量A分配空間并初始化為0 A=new double* [x]; for(int i=0;i<x;i++) A[i]=new double [x]; for(int m=0;m<x;m++) for(int n=0;n<x;n++) A[m][n]=0; } Matrix::~Matrix() { cout<<"正在析構(gòu)中~~~~"<<endl; delete b; for(int i=0;i<size;i++) delete A[i]; delete A; } void Matrix::Disp() { for(int i=0;i<size;i++) { for(int j=0;j<size;j++) cout<<A[i][j]<<" "; cout<<endl; } } void Matrix::Input() { cout<<"請輸入A:"<<endl; for(int i=0;i<size;i++) for(int j=0;j<size;j++){ cout<<"第"<<i+1<<"行"<<"第"<<j+1<<"列:"<<endl; cin>>A[i][j]; } cout<<"請輸入b:"<<endl; for(int j=0;j<size;j++){ cout<<"第"<<j+1<<"個:"<<endl; cin>>b[j]; } } double* Dooli(Matrix& A) { double *Xn=new double [A.size]; Matrix L(A.size),U(A.size); //分別求得U,L的第一行與第一列 for(int i=0;i<A.size;i++) U.A[0][i]=A.A[0][i]; for(int j=1;j<A.size;j++) L.A[j][0]=A.A[j][0]/U.A[0][0]; //分別求得U,L的第r行,第r列 double temp1=0,temp2=0; for(int r=1;r<A.size;r++){ //U for(int i=r;i<A.size;i++){ for(int k=0;k<r-1;k++) temp1=temp1+L.A[r][k]*U.A[k][i]; U.A[r][i]=A.A[r][i]-temp1; } //L for(int i=r+1;i<A.size;i++){ for(int k=0;k<r-1;k++) temp2=temp2+L.A[i][k]*U.A[k][r]; L.A[i][r]=(A.A[i][r]-temp2)/U.A[r][r]; } } cout<<"計算U得:"<<endl; U.Disp(); cout<<"計算L的:"<<endl; L.Disp(); double *Y=new double [A.size]; Y[0]=A.b[0]; for(int i=1;i<A.size;i++ ){ double temp3=0; for(int k=0;k<i-1;k++) temp3=temp3+L.A[i][k]*Y[k]; Y[i]=A.b[i]-temp3; } Xn[A.size-1]=Y[A.size-1]/U.A[A.size-1][A.size-1]; for(int i=A.size-1;i>=0;i--){ double temp4=0; for(int k=i+1;k<A.size;k++) temp4=temp4+U.A[i][k]*Xn[k]; Xn[i]=(Y[i]-temp4)/U.A[i][i]; } return Xn; } int main() { Matrix B(4); B.Input(); double *X; X=Dooli(B); cout<<"~~~~解得:"<<endl; for(int i=0;i<B.size;i++) cout<<"X["<<i<<"]:"<<X[i]<<" "; cout<<endl<<"呵呵呵呵呵"; return 0; }
標簽: 道理特分解法
上傳時間: 2018-05-20
上傳用戶:Aa123456789
步驟一 按快捷鍵Ctrl+N新建A4大小空白橫向文檔,并填充顏色為淺綠色。 步驟二 選擇工具箱中的“貝塞爾工具”繪制荷葉,使用“形狀工具”進行節(jié)點調(diào)整。填充輪廓色和填充色。 步驟三 在工具箱中選擇“網(wǎng)狀填充工具”設置網(wǎng)格中的行列數(shù)為3*3,鼠標框選中間4個節(jié)點,統(tǒng)一填充顏色為(R:0,G:153,B:51)。 步驟四 選擇“貝塞爾工具”繪制荷葉葉脈,由于所畫線條是不連接的單一曲線,所以繪制時可以借助鍵盤上的“空格”鍵來進行切換。 步驟五 接著利用“貝塞爾工具”依照前面的方法繪制出不同形態(tài)的葉子并Ctrl+G群組。 步驟六 用“貝塞爾工具”繪制荷葉莖部,按F12鍵調(diào)整曲線寬度為3,自定義顏色值為(C:70,M:0,Y:100,K:0),然后執(zhí)行“對象”→“將輪廓轉(zhuǎn)換為對象”命令,再次按F12鍵添加寬度為細線的(C:78,M:19,Y:76,K:0)的顏色值,調(diào)整順序到后層。 步驟七 選擇一片群組合過的葉子,進行位圖模糊處理,放在畫面后面,達到近實遠虛的視覺效果。 步驟八 選擇“貝塞爾工具”繪制花瓣,借助網(wǎng)狀填充工具填充粉色到洋紅色,按Ctrl鍵繪制一個正圓,按F12把圓加粗,然后執(zhí)行“對象”→“將輪廓轉(zhuǎn)換為對象”命令(Ctrl+Shift+Q)。 步驟九 繪制各種形態(tài)的荷花造型,并群組圖形。
上傳時間: 2018-08-03
上傳用戶:cjmktt
產(chǎn)品型號:HT9B92 產(chǎn)品品牌:HOLTEK/合泰 封裝形式:TSSOP48/LQFP48 產(chǎn)品年份:新年份 原廠直銷,工程服務,技術支持,價格更具優(yōu)勢! RAM 映射 36×4 LCD 顯示驅(qū)動器 概述 HT9B92 是一款存儲器映射和多功能LCD控制驅(qū)動芯片。該芯片顯示模式有144 點(36×4 )。 HT9B92 軟件配置特性使得它適用于多種LCD應用,包括LCD 模塊和顯示子系統(tǒng)。HT9B92 通過雙線雙向 I2C 接口與大多數(shù)微處理器/ 微控制器進行通信。 功能特點 ● 工作電壓:2.4V~5.5V ● 內(nèi)部集成振蕩電路 ● Bias: 1/2 or 1/3; Duty: 1/4 ● 帶電壓跟隨器的內(nèi)部LCD 偏置發(fā)生器 ● 提供VLCD 引腳來調(diào)整LCD 工作電壓 ● I2C接口 ● 可選 LCD 幀頻率 ● 多達36×4 位RAM 用來存儲顯示數(shù)據(jù) ● 最大顯示模式36×4:36 SEGs 和4 COMs ● 多種閃爍模式:不閃爍,0.5Hz,1Hz,2Hz ● 寫地址自動增加 ● 低功耗省電模式 ● 采用硅柵極CMOS 制造工藝 ● 封裝類型:48-pin TSSOP/LQFP ● 市面可兼容型號:元泰VINTEK:VKL44A TSSOP48封裝,VKL144B QFN48(6MM*6MM)封裝,VKL128 LQFP44封裝,VKL060 SSOP24封裝 ------ 同種腳位可以任意切換,少腳位更具性價比高,方便設計等特點。 ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●● 產(chǎn)品型號:VKL144A 產(chǎn)品品牌:VINTEK/元泰 封裝形式:TSSOP48 產(chǎn)品年份:新年份 原廠直銷,工程服務,技術支持,價格更具優(yōu)勢! 超低功耗液晶LCD顯示驅(qū)動芯片 概述 VKL144A是一款性能優(yōu)越的字段式液晶顯示驅(qū)動芯片,由于其驅(qū)動段位多達144段和超低功耗的工藝設計特點。還具有性能穩(wěn)定和低價格優(yōu)勢、供貨穩(wěn)定,目前被業(yè)界廣泛應用在眾多的儀器儀表的產(chǎn)品上。比如手持式儀表、費率表、工控儀表、醫(yī)療儀器、專用測量儀表頭等等設備上使用 功能特點 ● 液晶驅(qū)動輸出: Common 輸出4線 Segment 輸出36線 ● 內(nèi)置Display data RAM (DDRAM) 內(nèi)置RAM容量:36*4 =144 bit ● 液晶驅(qū)動的電源電路 1/2 ,1/3 Bias ,1/4 Duty 內(nèi)置Buffer AMP I2C串行接口(SCL, SDA) ● 內(nèi)置振蕩電路 ● 不需要外圍部件 ● 低功耗設計 ● 搭載等待模式 ● 內(nèi)置Power-on Reset電路 ● 搭載閃爍功能 ● 工作電源電壓: 2.5-5.5V ★應用推薦: 各種費率表,電表、水表、氣表、熱表、各種計量專用表頭。 ●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●● 產(chǎn)品型號:VKL144B 產(chǎn)品品牌:VINTEK/元泰 封裝形式:QFN48L(6MM*6MM) 產(chǎn)品年份:新年份 原廠直銷,工程服務,技術支持,價格更具優(yōu)勢! 超低功耗液晶LCD顯示驅(qū)動芯片 概述 VKL144B是一款性能優(yōu)越的字段式液晶顯示驅(qū)動芯片,由于其驅(qū)動段位多達144段和超低功耗的工藝設計特點。還具有性能穩(wěn)定和低價格優(yōu)勢、供貨穩(wěn)定,目前被業(yè)界廣泛應用在眾多的儀器儀表的產(chǎn)品上。比如手持式儀表、費率表、工控儀表、醫(yī)療儀器、專用測量儀表頭等等設備上使用 功能特點 ● 液晶驅(qū)動輸出: Common 輸出4線 Segment 輸出36線 ● 內(nèi)置Display data RAM (DDRAM) 內(nèi)置RAM容量:36*4 =144 bit ● 液晶驅(qū)動的電源電路 1/2 ,1/3 Bias ,1/4 Duty 內(nèi)置Buffer AMP I2C串行接口(SCL, SDA) ● 內(nèi)置振蕩電路 ● 不需要外圍部件 ● 低功耗設計 ● 搭載等待模式 ● 內(nèi)置Power-on Reset電路 ● 搭載閃爍功能 ● 工作電源電壓: 2.5-5.5V ★應用推薦: 各種費率表,電表、水表、氣表、熱表、各種計量專用表頭。 HOLTEK合泰全系列產(chǎn)品 芯片介紹如下: 一.LCD液晶顯示驅(qū)動控制器 HT1620 HT1620G HT1621 HT1621B HT1621G HT1622 HT1622G HT1623 HT1625 HT1626 HT16C21 HT16C22 HT16C23 HT16C24 HT1620 HT16220 HT1647 HT1650 HT1660 HT1670 HT16K23 HT9B92 HT9B92G HT9B95A HT9B95B HT9B95C HT16LK24 HT16L21 HT16L23 HT1611C HT1613C HT1616C (全部封裝、規(guī)格形式 均有海量現(xiàn)貨!) 二:LED/VFD控制、驅(qū)動器 HT16506 HT16511 HT16512 HT16515 HT16514 HT16561 HT16562 HT16565 HT16566 HT16523 HT16525 HT1632C HT16K33 HT16K33 HT16528-001 HT16528-002 HT16528-003 (全部封裝、規(guī)格形式 均有海量現(xiàn)貨!) 三.Touch Key觸摸按鍵電路/ I/O Flash MCU BS801B/C BS802B/C BS804B/C BS804B/C BS806B/C BS808B/C BS812A-1 BS813A-1 BS814A-1 BS814A-2 BS816A-1 BS818A-2 BS8112A-3 BS8116A-3 BS83A02A-4 BS83A04A-3 BS83A04A-4 BS83B04A-4 BS83B08A-3 BS83B08A-4 BS83B12A-3 BS83B12A-4 (全部封裝、規(guī)格形式 均有海量現(xiàn)貨!) 四.HT7XXX全系列 微功耗LDO HT1015-1 HT71xx-1 HT71xx-2 HT71xx-3 HT71xx-3 HT75xx-1 HT75xx-2 HT75xx-3 HT73xx HT72xx HT78xx Power management(電源LDO穩(wěn)壓管理IC) HT71**為30MA穩(wěn)壓芯片 產(chǎn)品:HT7130,HT7133,HT7136,HT7144,HT7150 HT75**為100MA穩(wěn)壓芯片 產(chǎn)品:HT7530,HT7533,HT7536,HT7544,HT7550 HT73**為300MA穩(wěn)壓芯片 產(chǎn)品:HT7318,HT7325,HT7327,HT7330,HT7333,HT7335,HT7350 HT70**為電壓檢測芯片 產(chǎn)品:HT7022,HT7024,HT7027,HT7033,HT7039,HT7044,HT7050 HT77::為升壓DC-DC芯片 產(chǎn)品:HT7727,HT7730,HT7733,HT7737,HT7750 LDO與探測器和數(shù)據(jù)收發(fā):HT71DXX 高電源抑制比300mA雙LDO穩(wěn)壓器:HT72Dxxxx 高電源抑制比300mA LDO穩(wěn)壓器:HT72BXX 高電源抑制比 150mA LDO穩(wěn)壓器:HT75BXX 高電源抑制比 500mA LDO穩(wěn)壓器:HT78BXX 3SOT89 T/R 電壓檢測器系列(小功率):HT70xxA-1 HT70xxA-2 HT70xxA-3 PFM升壓DC-DC變換器:HT77xx HT77xxA HT77S10 HT77S11 PFM同步升壓直流/直流轉(zhuǎn)換器:HT77xxS HT77xxSA LED照明驅(qū)動:HT7L4811 HT7L4091 HT7L4091 HT7L2102 HT7L2103 HT7L2103 白光LED背光驅(qū)動:HT7936 HT7937 HT7938 HT7938A HT7939 HT7943 HT7945 降壓直流-直流轉(zhuǎn)換器:HT7465 HT7466 AC/DC PWM變換器:HT7A3942 HT7A6002 HT7A6003 HT7A4016 充電泵直流/直流轉(zhuǎn)換器:HT7660 (全部封裝、規(guī)格形式 均有海量現(xiàn)貨!) 五:時鐘IC及其他消費類IC HT1380 HT1380A HT1381 HT1381A HT1382 HT9200A HT9170 HT9172 HT9032 HT8970 HT9247 HT82V731 HT82V736 HT6221 HT6222 HT62104 HT12A\E HT12D\F (全部封裝、規(guī)格形式 均有海量現(xiàn)貨!) 六.電可擦除只讀存儲器 HT2201 HT24LC02 HT24LC02A HT24LC04 HT24LC08 HT24LC16 HT24LC32 HT24LC64 HT24LC128 HT24LC256 HT93LC46 HT93LC66 HT93LC86 (全部封裝、規(guī)格形式 均有海量現(xiàn)貨!) 七.各類編碼/射頻/解碼器 HT12D HT12E HT12F HT6010 HT6012 HT6014 HT6026 HT6030 HT6032 HT6034 HT600 HT604L HT6207 HT680 HT6P20B HT6P20D HT6P40B2 HT6P40C2 HT6P40D2 HT6P40E2 HT6P40B2T3 HT6P40C2T3 HT6P40D2T3 HT6P40E2T3 HT6P423A HT6P423A HT6P427A HT6P433A HT6P437A HT12C2T3 HT12C2T4 HT12E2T3 HT12E2T4 HT12E2T4 HT16C2T3 HT16C2T4 HT16E2T3 HT16E2T4 HT16G2T3 HT16G2T4 HT9831 HT7610A HT7611A/B HT7612 HT7612B (全部封裝、規(guī)格形式 均有海量現(xiàn)貨!) 八.MCU(微控IC) HT48 系列 應用于遙控,電扇/電燈控制,洗衣機控制,電子秤,玩具及各種系統(tǒng)控制. 產(chǎn)品:HT48R05,HT48R06,HT48R30,HT48R50 HT49系列 應用于多種LCD DI低功耗應用,如電子秤,休閑產(chǎn)品,高階的家用電器 產(chǎn)品:HT49R30,HT49R50 HT46帶A/D系列 適用于充電器控制,電磁爐等 產(chǎn)品:HT46R47,HT46R22,HT46R23,HT46R24,HT46R51 HT46帶A/D及LCD系列 適用于洗衣機控制器,相機控制器和帶LCD顯示的家用電器系列 產(chǎn)品:HT46R62,HT46R63,HT46R64 HT48RA系列適用于紅外遙控器以及各種電子系統(tǒng)的控制器 (全部封裝、規(guī)格形式 均有海量現(xiàn)貨!) 九.放大器/音頻放大器 /DA轉(zhuǎn)換器 HT9231 HT9232 HT9234 HT9251 HT9252 HT9254 HT9274 HT9291 HT9292 HT9294 HT82V732 HT82V733 HT82V735 HT82V736 HT82V736 HT82V739 HT82V73 HT82V731 HT82V737 HT82V738 (全部封裝、規(guī)格形式 均有海量現(xiàn)貨!) 十.音調(diào)IC/發(fā)生器 /接收器 HT9200A HT9200B HT9170B HT9170D HT9172 HT8970 HT8972 (全部封裝、規(guī)格形式 均有海量現(xiàn)貨!) IC型號眾多,未能一一收錄。 芯片主要應用領域如下: ★顯示模塊:電子秤、無線麥克風、錄音筆、影音多媒體、小家電周邊 ★家電類:電風扇、電飯煲、玩具、冷氣機、暖風機、空調(diào)扇、飲水機、抽油煙機、消毒柜、電熱水器、面包機、豆?jié){機、咖啡壺、電冰箱、洗衣機控制器、空調(diào)控制板等。 ★通訊類:來電顯示電話、無繩電話、IC電話、投幣電話、對講機等 ★玩具游戲類:無線遙控車、PS游戲機、跳舞毯、方向盤、手柄、電子槍、PS開機IC等。 ★計算機周邊:顯示器控制、PC-MOUSE、單/雙滾、遙控MOUSE、鍵盤、手寫板等。 ★智能卡類:IC卡煤氣表、電能表、水表、IC讀寫器、IC卡門禁系統(tǒng)等。 ★汽車及防盜類:機車防盜器、********器、汽車天線控制器、里程表、汽車日歷等。 ★醫(yī)用保健類:電子針灸器、甩脂機、智能體溫計、LCD顯示血壓計、跑步機、按摩器、按摩墊、按摩椅 等。 ★儀表類:電壓表、瓦斯表、電池電壓檢測器、頻率計、計數(shù)器、電度表、水位檢測器等。 ★其它類:充電器、照相機、電子萬年鐘、自動給皂機、路燈控制器、呼叫服務器等
標簽: TSSOP B92 HT9 LCD HT 9B 92 48 合泰 液晶驅(qū)動
上傳時間: 2018-12-07
上傳用戶:shubashushi66
無線電CW通聯(lián) 基本Q短語,通聯(lián)實例 A: CQCQCQ DE BA4ALC/5 BA4ALC/5 BA4ALC/5 PSE K B:BA4ALC/5 DE BD4IZL BD4IZL K A:BD4IZL DE BA4ALC/5 GM TNX FER CALL DR OM UR RST 559 55N K B:RR BA4ALC/5 DE BD4IZL GM DR OM TNX 55N RPRT UR 599 5NN FB MY NAME IS YU YU QTH JINAN JINAN BA4ALC/5 DE BD4IZL K A: DR YU OM TNX FB RPRT OP JACK JACK QTH NINGBO NINGBO WX HR IS FINE ES WARM TEMP 20C 20C HW? DE BA4ALC/5 K B:R DR JACK OM WX CLOUDY CLOUDY ES TEMP 15C 15C BT RIG FT80C FT80C ANT DIPOLE DP PWR 100WATTS 1TTW BA4ALC/5 DE BD4IZL K A: BD4IZL DE BA4ALC/5 MY RIG IS IC746PRO IC746PRO ES PWR 100W 1OOW BT ANT 2 ELE YAGI 2ELE YAGI 12MH TNX FER NICE QSO QSL VIA BURO HPE CUAGN BD4IZL DE BA4ALC/5 73 73 GL ES GB TU TU SK.. B:TNX FB CW QSO QSL QRZ.COM CUAGN BA4ALC/5 DE BD4IZL 73 DR JACK TU SK.. A:. B:.
上傳時間: 2019-03-05
上傳用戶:shuyinglee
#include<stdio.h> #include<string.h> #include<stdlib.h> #define N 100 int iNumOfStu=0; struct score { float math; float english; float computer; }; struct student { int number; char name[20]; struct score sco; float average; }; struct student stu[N]; void print_menu(void);//輸出菜單 void choosemenu(void);//菜單選擇 void input_student1(int);//輸入學生信息 void input_student2(void);//輸入總函數(shù) void input_student3(int &,int);//判斷學號是否重復 void input_student4(int,int);//覆蓋原信息 void sort_student3(student s[],int);//按照英語成績排序 void sort_student4(student s[],int);//按照計算機成績排序 void sort_student2(student s[],int);//按照數(shù)學成績排序 void sort_student5(student s[],int);//按照平均成績排序 float input_score2(int);//計算學生平均成績 void print_student2(void);//顯示表頭 void print_student3(int);//顯示學生信息 void print_student1(int);//顯示全部學生資料 void sort_student1(void);//排序總函數(shù) void menu(void);//菜單調(diào)度總函數(shù) int search_student2(int);//按學號查詢學生信息并輸出 void search_student3(int);//按平均分最高查詢并輸出 void search_student1(void);//查詢總函數(shù) void delete_student2(int,int);//刪除學生信息 void delete_student1(void);//刪除總函數(shù) void change_student2(int);//修改學生資料 void change_student1(void);//修改總函數(shù) void input_score3(int);//統(tǒng)計成績 void input_score1(void);//統(tǒng)計成績總函數(shù) void print_help(void);//輸出幫助信息 void exit_student(void);//退出系統(tǒng) void save_student(student *,int);//保存學生信息 void main() { menu(); } void save_student(student *s,int a)//保存學生信息 { FILE *fp; if((fp=fopen("d:\\學生信息.txt","wb"))==NULL) { printf("不能打開文件!\n"); } else { printf("保存信息到D盤\n"); fprintf(fp,"本班所有學生具體信息如下:\r\n"); fprintf(fp," 學號 姓名 數(shù)學成績 英語成績 計算機成績 平均成績\r\n"); for(int i=0;i<a;i++) { fprintf(fp,"%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[i].number,stu[i].name,stu[i].sco.math,stu[i].sco.english,stu[i].sco.computer,stu[i].average); fprintf(fp,"\r\n"); } fclose(fp); printf("信息保存成功!\n"); } } void exit_student(void)//退出系統(tǒng) { exit(1); } void print_help(void)//輸出幫助信息 { printf("本系統(tǒng)所能容納的最大學生數(shù)為%d人\n學生信息保存在D盤根目錄下,保存文件為“學生信息.txt”。\n感謝使用!\n",N); } void input_score1(void)//統(tǒng)計成績總函數(shù) { int c; c=search_student2(iNumOfStu); printf("學號:%d\n",stu[c].number); printf("姓名:%s\n",stu[c].name); input_score3(c); printf("新成績錄入成功!\n"); stu[c].average=input_score2(c); } void input_score3(int a)//統(tǒng)計成績 { printf("數(shù)學新成績:"); scanf("%f",&stu[a].sco.math); printf("英語新成績:"); scanf("%f",&stu[a].sco.english); printf("計算機新成績:"); scanf("%f",&stu[a].sco.computer); } void change_student2(int a)//修改學生資料 { printf("學號:%d----修改為:",stu[a].number); scanf("%d",&stu[a].number); getchar(); printf("姓名:%s----修改為:",stu[a].name); gets(stu[a].name); printf("數(shù)學成績:%.2f----修改為:",stu[a].sco.math); scanf("%f",&stu[a].sco.math); printf("英語成績:%.2f----修改為:",stu[a].sco.english); scanf("%f",&stu[a].sco.english); printf("計算機成績:%.2f----修改為:",stu[a].sco.computer); scanf("%f",&stu[a].sco.computer); } void change_student1(void)//修改總函數(shù) { int c; c=search_student2(iNumOfStu); getchar(); printf("是否要修改此學生信息?(“y”代表是)"); char d; scanf("%c",&d); if(d=='y'||d=='Y') { change_student2(c); stu[c].average=input_score2(c); printf("信息修改成功!\n"); } } void delete_student1(void)//刪除總函數(shù) { int c; c=search_student2(iNumOfStu); getchar(); printf("是否刪除此條記錄?(“y”代表是)"); char d; scanf("%c",&d); if(d=='y'||d=='Y') { delete_student2(c,iNumOfStu); printf("記錄已刪除!\n"); } } void delete_student2(int a,int b)//刪除學生信息 { for(int i=a;i<b-1;i++) { stu[i]=stu[i+1]; } --iNumOfStu; } void search_student1(void)//查詢總函數(shù) { printf("1、按學號查詢\n2、按平均分最高查詢\n請選擇:"); int c; scanf("%d",&c); switch(c) { case 1: { search_student2(iNumOfStu); break; } case 2: { search_student3(iNumOfStu); break; } default: break; } } void menu(void)//菜單調(diào)度總函數(shù) { print_menu(); choosemenu(); } void sort_student1(void)//排序總函數(shù) { printf("1、按數(shù)學成績排序\n2、按英語成績排序\n3、按計算機成績排序\n4、按平均成績排序\n請選擇:"); int c; scanf("%d",&c); switch(c) { case 1: { sort_student2(stu,iNumOfStu); break; } case 2: { sort_student3(stu,iNumOfStu); break; } case 3: { sort_student4(stu,iNumOfStu); break; } case 4: { sort_student5(stu,iNumOfStu); break; } default: break; } } void print_student1(int a)//顯示全部學生資料 { printf("本班所有學生具體信息如下\n"); print_student2(); for(int i=0;i<a;i++) { print_student3(i); } } void print_student3(int a)//顯示學生信息 { printf("%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[a].number,stu[a].name,stu[a].sco.math,stu[a].sco.english,stu[a].sco.computer,stu[a].average); } void print_student2(void)//顯示表頭 { printf(" 學號 姓名 數(shù)學成績 英語成績 計算機成績 平均成績\n"); } void input_student4(int a,int b)//覆蓋原信息 { stu[a]=stu[b-1]; --iNumOfStu; } void input_student3(int &a,int b)//判斷學號是否重復 { if(a!=0) { int i=0; do { if(stu[a].number==stu[i].number) { printf("此學號代表的學生已錄入\n1、覆蓋原信息\n2、重新輸入\n請選擇:"); int c; scanf("%d",&c); switch(c) { case 1: { input_student4(i,iNumOfStu); a=iNumOfStu-1; printf("信息已替換!\n"); break; } case 2: { printf("請重新輸入學生信息:\n"); input_student1(iNumOfStu-1); break; } default: break; } break; } ++i; } while(i<b-1); } } void print_menu(void)//輸出菜單 { printf("======歡迎來到學生信息管理系統(tǒng)======\n"); printf(" 1、輸入學生資料\n"); printf(" 2、刪除學生資料\n"); printf(" 3、查詢學生資料\n"); printf(" 4、修改學生資料\n"); printf(" 5、顯示學生資料\n"); printf(" 6、統(tǒng)計學生成績\n"); printf(" 7、排序?qū)W生成績\n"); printf(" 8、保存學生資料\n"); printf(" 9、獲取幫助信息\n"); printf(" 10、退出系統(tǒng)\n"); printf("====================================\n"); printf("請選擇:"); } void input_student2(void)//輸入總函數(shù) { char end; printf("請輸入學生信息(在最后一個學生信息錄入完成后以“/”結(jié)束錄入):\n"); for(int i=0;(end=getchar())!='/';i++) { input_student1(i); ++iNumOfStu; input_student3(i,iNumOfStu); } for(int j=0;j<iNumOfStu;j++) { stu[j].average=input_score2(j); } } void input_student1(int a)//輸入學生信息 { printf("學號:"); scanf("%d",&stu[a].number); getchar(); printf("姓名:"); gets(stu[a].name); printf("數(shù)學成績:"); scanf("%f",&stu[a].sco.math); printf("英語成績:"); scanf("%f",&stu[a].sco.english); printf("計算機成績:"); scanf("%f",&stu[a].sco.computer); } float input_score2(int a)//計算學生平均成績 { return (stu[a].sco.math+stu[a].sco.english+stu[a].sco.computer)/3; } void search_student3(int a)//按平均分最高查詢并輸出 { int max=0; for(int i=0;i<a;i++) { if(stu[max].average<stu[i].average) { max=i; } } print_student2(); print_student3(max); } void sort_student2(student s[],int a)//按照數(shù)學成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].sco.math>stu[max].sco.math) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } void sort_student3(student s[],int a)//按照英語成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].sco.english>stu[max].sco.english) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } void sort_student4(student s[],int a)//按照計算機成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].sco.computer>stu[max].sco.computer) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } void sort_student5(student s[],int a)//按照平均成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].average>stu[max].average) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } int search_student2(int a)//按照學號查找學生并輸出 { int num; int c; printf("請輸入要查詢的學號:"); scanf("%d",&num); for(int i=0;i<a;i++) { if(num==stu[i].number) { c=i; } } printf("此學生的信息是:\n"); print_student2(); print_student3(c); return c; } void choosemenu(void)//菜單選擇 { int i; scanf("%d",&i); switch(i) { case 1: { input_student2(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 2: { delete_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 3: { search_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 4: { change_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 5: { print_student1(iNumOfStu); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 6: { input_score1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 7: { sort_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 8: { save_student(stu,iNumOfStu); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 9: { print_help(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 10: { exit_student(); } default: break; } } 運行結(jié)果: 源文件下載地址: http://115.com/file/clnq138g#一個簡單的學生成績管理系統(tǒng).rar (請將此地址復制到瀏覽器地址欄中訪問下載頁面)
標簽: 成績查詢系統(tǒng)
上傳時間: 2019-06-08
上傳用戶:啊的撒旦
#include<stdio.h> #include<string.h> #include<stdlib.h> #define N 100 int iNumOfStu=0; struct score { float math; float english; float computer; }; struct student { int number; char name[20]; struct score sco; float average; }; struct student stu[N]; void print_menu(void);//輸出菜單 void choosemenu(void);//菜單選擇 void input_student1(int);//輸入學生信息 void input_student2(void);//輸入總函數(shù) void input_student3(int &,int);//判斷學號是否重復 void input_student4(int,int);//覆蓋原信息 void sort_student3(student s[],int);//按照英語成績排序 void sort_student4(student s[],int);//按照計算機成績排序 void sort_student2(student s[],int);//按照數(shù)學成績排序 void sort_student5(student s[],int);//按照平均成績排序 float input_score2(int);//計算學生平均成績 void print_student2(void);//顯示表頭 void print_student3(int);//顯示學生信息 void print_student1(int);//顯示全部學生資料 void sort_student1(void);//排序總函數(shù) void menu(void);//菜單調(diào)度總函數(shù) int search_student2(int);//按學號查詢學生信息并輸出 void search_student3(int);//按平均分最高查詢并輸出 void search_student1(void);//查詢總函數(shù) void delete_student2(int,int);//刪除學生信息 void delete_student1(void);//刪除總函數(shù) void change_student2(int);//修改學生資料 void change_student1(void);//修改總函數(shù) void input_score3(int);//統(tǒng)計成績 void input_score1(void);//統(tǒng)計成績總函數(shù) void print_help(void);//輸出幫助信息 void exit_student(void);//退出系統(tǒng) void save_student(student *,int);//保存學生信息 void main() { menu(); } void save_student(student *s,int a)//保存學生信息 { FILE *fp; if((fp=fopen("d:\\學生信息.txt","wb"))==NULL) { printf("不能打開文件!\n"); } else { printf("保存信息到D盤\n"); fprintf(fp,"本班所有學生具體信息如下:\r\n"); fprintf(fp," 學號 姓名 數(shù)學成績 英語成績 計算機成績 平均成績\r\n"); for(int i=0;i<a;i++) { fprintf(fp,"%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[i].number,stu[i].name,stu[i].sco.math,stu[i].sco.english,stu[i].sco.computer,stu[i].average); fprintf(fp,"\r\n"); } fclose(fp); printf("信息保存成功!\n"); } } void exit_student(void)//退出系統(tǒng) { exit(1); } void print_help(void)//輸出幫助信息 { printf("本系統(tǒng)所能容納的最大學生數(shù)為%d人\n學生信息保存在D盤根目錄下,保存文件為“學生信息.txt”。\n感謝使用!\n",N); } void input_score1(void)//統(tǒng)計成績總函數(shù) { int c; c=search_student2(iNumOfStu); printf("學號:%d\n",stu[c].number); printf("姓名:%s\n",stu[c].name); input_score3(c); printf("新成績錄入成功!\n"); stu[c].average=input_score2(c); } void input_score3(int a)//統(tǒng)計成績 { printf("數(shù)學新成績:"); scanf("%f",&stu[a].sco.math); printf("英語新成績:"); scanf("%f",&stu[a].sco.english); printf("計算機新成績:"); scanf("%f",&stu[a].sco.computer); } void change_student2(int a)//修改學生資料 { printf("學號:%d----修改為:",stu[a].number); scanf("%d",&stu[a].number); getchar(); printf("姓名:%s----修改為:",stu[a].name); gets(stu[a].name); printf("數(shù)學成績:%.2f----修改為:",stu[a].sco.math); scanf("%f",&stu[a].sco.math); printf("英語成績:%.2f----修改為:",stu[a].sco.english); scanf("%f",&stu[a].sco.english); printf("計算機成績:%.2f----修改為:",stu[a].sco.computer); scanf("%f",&stu[a].sco.computer); } void change_student1(void)//修改總函數(shù) { int c; c=search_student2(iNumOfStu); getchar(); printf("是否要修改此學生信息?(“y”代表是)"); char d; scanf("%c",&d); if(d=='y'||d=='Y') { change_student2(c); stu[c].average=input_score2(c); printf("信息修改成功!\n"); } } void delete_student1(void)//刪除總函數(shù) { int c; c=search_student2(iNumOfStu); getchar(); printf("是否刪除此條記錄?(“y”代表是)"); char d; scanf("%c",&d); if(d=='y'||d=='Y') { delete_student2(c,iNumOfStu); printf("記錄已刪除!\n"); } } void delete_student2(int a,int b)//刪除學生信息 { for(int i=a;i<b-1;i++) { stu[i]=stu[i+1]; } --iNumOfStu; } void search_student1(void)//查詢總函數(shù) { printf("1、按學號查詢\n2、按平均分最高查詢\n請選擇:"); int c; scanf("%d",&c); switch(c) { case 1: { search_student2(iNumOfStu); break; } case 2: { search_student3(iNumOfStu); break; } default: break; } } void menu(void)//菜單調(diào)度總函數(shù) { print_menu(); choosemenu(); } void sort_student1(void)//排序總函數(shù) { printf("1、按數(shù)學成績排序\n2、按英語成績排序\n3、按計算機成績排序\n4、按平均成績排序\n請選擇:"); int c; scanf("%d",&c); switch(c) { case 1: { sort_student2(stu,iNumOfStu); break; } case 2: { sort_student3(stu,iNumOfStu); break; } case 3: { sort_student4(stu,iNumOfStu); break; } case 4: { sort_student5(stu,iNumOfStu); break; } default: break; } } void print_student1(int a)//顯示全部學生資料 { printf("本班所有學生具體信息如下\n"); print_student2(); for(int i=0;i<a;i++) { print_student3(i); } } void print_student3(int a)//顯示學生信息 { printf("%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[a].number,stu[a].name,stu[a].sco.math,stu[a].sco.english,stu[a].sco.computer,stu[a].average); } void print_student2(void)//顯示表頭 { printf(" 學號 姓名 數(shù)學成績 英語成績 計算機成績 平均成績\n"); } void input_student4(int a,int b)//覆蓋原信息 { stu[a]=stu[b-1]; --iNumOfStu; } void input_student3(int &a,int b)//判斷學號是否重復 { if(a!=0) { int i=0; do { if(stu[a].number==stu[i].number) { printf("此學號代表的學生已錄入\n1、覆蓋原信息\n2、重新輸入\n請選擇:"); int c; scanf("%d",&c); switch(c) { case 1: { input_student4(i,iNumOfStu); a=iNumOfStu-1; printf("信息已替換!\n"); break; } case 2: { printf("請重新輸入學生信息:\n"); input_student1(iNumOfStu-1); break; } default: break; } break; } ++i; } while(i<b-1); } } void print_menu(void)//輸出菜單 { printf("======歡迎來到學生信息管理系統(tǒng)======\n"); printf(" 1、輸入學生資料\n"); printf(" 2、刪除學生資料\n"); printf(" 3、查詢學生資料\n"); printf(" 4、修改學生資料\n"); printf(" 5、顯示學生資料\n"); printf(" 6、統(tǒng)計學生成績\n"); printf(" 7、排序?qū)W生成績\n"); printf(" 8、保存學生資料\n"); printf(" 9、獲取幫助信息\n"); printf(" 10、退出系統(tǒng)\n"); printf("====================================\n"); printf("請選擇:"); } void input_student2(void)//輸入總函數(shù) { char end; printf("請輸入學生信息(在最后一個學生信息錄入完成后以“/”結(jié)束錄入):\n"); for(int i=0;(end=getchar())!='/';i++) { input_student1(i); ++iNumOfStu; input_student3(i,iNumOfStu); } for(int j=0;j<iNumOfStu;j++) { stu[j].average=input_score2(j); } } void input_student1(int a)//輸入學生信息 { printf("學號:"); scanf("%d",&stu[a].number); getchar(); printf("姓名:"); gets(stu[a].name); printf("數(shù)學成績:"); scanf("%f",&stu[a].sco.math); printf("英語成績:"); scanf("%f",&stu[a].sco.english); printf("計算機成績:"); scanf("%f",&stu[a].sco.computer); } float input_score2(int a)//計算學生平均成績 { return (stu[a].sco.math+stu[a].sco.english+stu[a].sco.computer)/3; } void search_student3(int a)//按平均分最高查詢并輸出 { int max=0; for(int i=0;i<a;i++) { if(stu[max].average<stu[i].average) { max=i; } } print_student2(); print_student3(max); } void sort_student2(student s[],int a)//按照數(shù)學成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].sco.math>stu[max].sco.math) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } void sort_student3(student s[],int a)//按照英語成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].sco.english>stu[max].sco.english) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } void sort_student4(student s[],int a)//按照計算機成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].sco.computer>stu[max].sco.computer) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } void sort_student5(student s[],int a)//按照平均成績排序 { struct student temp; for(int i=0;i<a-1;i++) { int max=i; for(int j=i+1;j<a;j++) if(stu[j].average>stu[max].average) { max=j; } if(max!=i) { temp=stu[max]; stu[max]=stu[i]; stu[i]=temp; } } print_student2(); for(int k=0;k<a;k++) { print_student3(k); } } int search_student2(int a)//按照學號查找學生并輸出 { int num; int c; printf("請輸入要查詢的學號:"); scanf("%d",&num); for(int i=0;i<a;i++) { if(num==stu[i].number) { c=i; } } printf("此學生的信息是:\n"); print_student2(); print_student3(c); return c; } void choosemenu(void)//菜單選擇 { int i; scanf("%d",&i); switch(i) { case 1: { input_student2(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 2: { delete_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 3: { search_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 4: { change_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 5: { print_student1(iNumOfStu); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 6: { input_score1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 7: { sort_student1(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 8: { save_student(stu,iNumOfStu); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 9: { print_help(); printf("按回車鍵返回主菜單"); getchar(); getchar(); menu(); break; } case 10: { exit_student(); } default: break; } } 運行結(jié)果: 源文件下載地址: http://115.com/file/clnq138g#一個簡單的學生成績管理系統(tǒng).rar (請將此地址復制到瀏覽器地址欄中訪問下載頁面) #include<stdio.h> #include<string.h> #include<stdlib.h> #define N 100 int iNumOfStu=0; struct score { float math; float english; float computer; }; struct student { int number; char name[20]; struct score sco; float average; }; struct student stu[N]; void print_menu(void);//輸出菜單 void choosemenu(void);//菜單選擇 void input_student1(int);//輸入學生信息 void input_student2(void);//輸入總函數(shù) void input_student3(int &,int);//判斷學號是否重復 void input_student4(int,int);//覆蓋原信息 void sort_student3(student s[],int);//按照英語成績排序 void sort_student4(student s[],int);//按照計算機成績排序 void sort_student2(student s[],int);//按照數(shù)學成績排序 void sort_student5(student s[],int);//按照平均成績排序 float input_score2(int);//計算學生平均成績 void print_student2(void);//顯示表頭 void print_student3(int);//顯示學生信息 void print_student1(int);//顯示全部學生資料 void sort_student1(void);//排序總函數(shù) void menu(void);//菜單調(diào)度總函數(shù) int search_student2(int);//按學號查詢學生信息并輸出 void search_student3(int);//按平均分最高查詢并輸出 void search_student1(void);//查詢總函數(shù) void delete_student2(int,int);//刪除學生信息 void delete_student1(void);//刪除總函數(shù) void change_student2(int);//修改學生資料 void change_student1(void);//修改總函數(shù) void input_score3(int);//統(tǒng)計成績 void input_score1(void);//統(tǒng)計成績總函數(shù) void print_help(void);//輸出幫助信息 void exit_student(void);//退出系統(tǒng) void save_student(student *,int);//保存學生信息 void main() { menu(); } void save_student(student *s,int a)//保存學生信息 { FILE *fp; if((fp=fopen("d:\\學生信息.txt","wb"))==NULL) { printf("不能打開文件!\n"); } else { printf("保存信息到D盤\n"); fprintf(fp,"本班所有學生具體信息如下:\r\n"); fprintf(fp," 學號 姓名 數(shù)學成績 英語成績 計算機成績 平均成績\r\n"); for(int i=0;i<a;i++) { fprintf(fp,"%8d%12s%14.2f%14.2f%14.2f%14.2f\n",stu[i].number,stu[i].name,stu[i].sco.math,stu[i].sco.english,stu[i].sco.computer,stu[i].average); fprintf(fp,"\r\n"); } fclose(fp); printf("信息保存成功!\n"); } } void exit_student(void)//退出系統(tǒng) { exit(1); } void print_help(void)//輸出幫助信息 { printf("本系統(tǒng)所能容納的最大學生數(shù)為%d人\n學生信息保存在D盤根目錄下,保存文件為“學生信息.txt”。\n感謝使用!\n",N); } void input_score1(void)//統(tǒng)計成績總函數(shù) { int c; c=search_student2(iNumOfStu); printf("學號:%d\n",stu[c].number); printf("姓名:%s\n",stu[c].name); input_score3(c); printf("新成績錄入成功!
標簽: c語言
上傳時間: 2019-06-09
上傳用戶:啊的撒旦
Windows7下IE 8使用技巧5則 IE幾乎是各位菜鳥、大蝦上網(wǎng)時的首選瀏覽器,有關它的常規(guī)使用技巧,相信各位早已是耳熟能詳了。只要你足夠用心、細心,就一定會不斷“挖掘”出IE新的使用技巧來。不信,就來看看下面的幾則新鮮用法吧,相信會讓各位有耳目一新之感! 1.尋找失落的IE啟動按鈕 正常情況下,IE瀏覽器的快速啟動按鈕會在系統(tǒng)任務欄中“安家落戶”,可是一旦操作不小心,往往會導致IE瀏覽器的快速啟動按鈕在任務欄中“消失”。那么 你面對IE啟動按鈕從系統(tǒng)任務欄中消失時,你該如何去將它尋找回來呢?其實方法很簡單,只要你按照下面的步驟來進行操作就可以了。 首先用鼠標右鍵單擊桌面中的IE瀏覽器圖標,從彈出的快捷菜單中執(zhí)行“創(chuàng)建快捷方式”命令,這樣就能為IE瀏覽器創(chuàng)建好一個對應的快捷方式。 接著打開系統(tǒng)資源管理窗口,依次雙擊C盤中的“Windows”文件夾、“ApplicationData”文件夾、“Microsoft”文件夾、 “InternetExplorer”文件夾、“QuickLaunch”文件夾;然后將桌面中創(chuàng)建好的IE快捷方式,直接拖動到 “QuickLaunch”文件夾窗口中。 當然還有更簡潔的方法,那就是直接將系統(tǒng)桌面中的IE瀏覽器圖標,用鼠標左鍵拖動到系統(tǒng)任務欄中,不過在拖放時一定要在出現(xiàn)虛線圖標之后才可以。 2.讓IE也能斷點續(xù)傳 大家知道,單擊IE頁面中的某個下載鏈接地址時,IE就會自動調(diào)用其內(nèi)置的下載功能來下載文件;不過這種功能一旦遇到網(wǎng)絡堵塞而掉線的情況時,就會將已經(jīng)下載好的內(nèi)容全部丟失,以后再次下載時還需要從頭再來,顯然IE內(nèi)置的下載功能容易耽誤下載時間。 那么我們有沒有辦法讓IE的下載功能也支持斷點續(xù)傳呢?答案是肯定的。只要你使用IE來下載文件出現(xiàn)意外掉線時,或者發(fā)現(xiàn)IE下載進度條長時間沒有任何反 應時,請不要單擊該下載對話框中的“取消”按鈕,而應該直接單擊該窗口中的“x”按鈕,來暫時退出下載狀態(tài);接著重新單擊網(wǎng)頁中的這個下載鏈接地址,然后 再單擊“保存”按鈕,在彈出的保存對話框中,將文件名和保存路徑都設置為與上次沒下載完時的文件相同,這樣IE就能接著上次沒下載完的位置,繼續(xù)下載余下 的內(nèi)容;當然這種IE斷點續(xù)傳功能只適合HTTP下載方式,而不適合FTP下載方式。 3.將IE選項設置“架空” 倘若允許其他人隨意對IE的上網(wǎng)參數(shù)進行設置的話,那么IE的安全、甚至系統(tǒng)的安全都會受到威脅,例如一旦非法用戶打開IE瀏覽器的“Internet選 項”設置框,將上網(wǎng)安全級別降低的話,那么網(wǎng)絡中的各種病毒、木馬,都有可能就會隨之而來。為了確保安全,你有時必須“架空”IE瀏覽器中的 Internet選項,讓非法用戶無法自行設置IE上網(wǎng)參數(shù): 首先打開Windows系統(tǒng)的資源管理器窗口,找到并進入到“system32”文件夾窗口,選中其中的“inetcpl.cpl”文件,并用鼠標右鍵單 擊之,從彈出的右鍵菜單中,單擊“重命名”選項,將“inetcpl.cpl”的文件名稱更名為“inetcplnew.cpl”,當然你也能將其換成其 他名稱,不過你一定要將更名后的文件名稱記得,以后需要恢復時以便能快速找到。完成重命名操作后,再單擊IE瀏覽器中的“Internet選項”命令時, 就不能進入到選項設置窗口了。 4.不用工具也能修復IE 在網(wǎng)上盡情沖浪時,IE難免會遭遇惡意攻擊;那么面對被惡意修改的IE,你該如何去恢復它呢?大多數(shù)人都會去選用各種專業(yè)的IE修復工具,來對付IE的惡意攻擊;也有水平高一些的“大蝦”,通過手工修改注冊表的方法,來恢復IE的本來“面貌”。可是當你手頭沒有專業(yè)的IE修復工具可以利用時,或者自己對注冊表了解不深時,你該如何去修復IE呢?為此,本文為你提供一則非常便利的解決方法,不過該方法只能適合Windows2000或WindowsXP操作系統(tǒng),下面就是該方法的具體實現(xiàn)步驟: 依次單擊“開始”/“設置”/“控制面板”命令,然后依次雙擊“管理工具”/“計算機管理”圖標,在隨后彈出的窗口中,依次展開“系統(tǒng)工具”/“本地用戶 和組”文件夾,再單擊“用戶”選項,在對應的右邊子窗口中,右擊空白區(qū)域,執(zhí)行快捷菜單中的“新用戶”命令,將新用戶命名為“newusr”,同時設置好 該賬號的訪問密碼; 完成新用戶的創(chuàng)建任務后,依次單擊“開始”/“關機”命令,然后執(zhí)行“注銷Administrator”操作,再改用“newusr”賬號重新進入到 Windows2000系統(tǒng);接著打開系統(tǒng)注冊表編輯界面,依次展開注冊表分支HKEY_CURRENT_USER\Software \Microsoft\InternetExplorer,并將“InternetExplorer”主鍵選中,再依次單擊注冊表菜單欄中的“注冊表”/ “導出注冊表文件”命令,將有關IE部分的注冊表分支內(nèi)容導出,例如保存為“ienew.reg”文件,如此一來你就能將“newusr”賬號下關于IE 的正確設置全部導出來了;由于“newusr”賬號是剛剛新建的,因此該賬號下的IE設置都是系統(tǒng)默認的正確設置,也就是說它是沒有被攻擊過的; 下面注銷“newusr”賬號,再以“Administrator”賬號登錄系統(tǒng);然后打開注冊表編輯窗口,依次執(zhí)行菜單欄中的 “注冊表”/“導入注冊表文件”命令,在彈出的文件選擇對話框中,將前面導出的“ienew.reg”文件導入到注冊表中,就能使IE恢復本來“面貌” 了。 當然,這樣的方法比較麻煩,因此我們推薦IE一鍵修復 0.3(點擊官方下載)167K ,中文綠色免費軟件,可以一鍵修復被惡意篡改的IE瀏覽器。此外,在魔方(點此下載)中,也將加入IE的修復功和監(jiān)控惡意軟件等安全功能。 5. 找回Windows 7中的IE 8桌面圖標 在Windows 7中,由于超級任務欄的存在,微軟取消了IE 8的桌面圖標設置,也就是說,在Windows 7中,無法在桌面顯示IE 8圖標,當然,快捷方式是不能算的。不過近來有會員在論壇為我們提供了一個很好的辦法,可以以"曲線"的方式實現(xiàn)IE 8圖標桌面顯示。盡管還不完美,但基本的功能都具備了,大家可以通過Windows7優(yōu)化大師 - 美化大師 - 系統(tǒng)外觀來自行設置。 善用快捷鍵,玩轉(zhuǎn)Windows 7 便簽程序 便箋是一種可以粘貼在任意位置的正方形或長條形紙條,方便我們隨時記錄一些信息,或是安排日常工作,隨寫隨記,非常方便。在 Windows 中為我們提供了和實物便箋一樣功能的小程序,本人非常喜歡。在 Vista 中,這個小程序作為邊欄小工具出現(xiàn),但在 Windows 7 中已經(jīng)成為了一個標準的Windows附件程序。 依次點擊Windows7的開始菜單按鈕 -》所有程序 -》附件 -》,點擊打開便簽,如下圖所示: 不用軟件,非會員徹底去除QQ2009/2010廣告 昨天談到了《不是VIP用戶也不怕 不需任何補丁屏蔽迅雷廣告》,用戶反饋非常的多,如果沒能設置成功的,請仔細閱讀步驟,100%的可以搞定的,當然,如果迅雷再發(fā)新版升級后,就不保證了,有任何新的變化,請隨時關注Windows7之家和Vista之家首頁。 說完了迅雷,我們再來說下QQ吧,QQ的免費用戶數(shù)量除了Windows外,就屬它大了。 屏蔽廣告除了更干凈潔爽之外,更大的好處是不用隨時下載體積大的flash動畫和gif動畫圖片了,QQ登陸速度顯著提升,同時,也少了帶寬消耗。 非QQ會員徹底屏蔽QQ2009正式版廣告: 在QQ2009 Beta版的時候,可以通過刪除一些文件讓非會員也能實現(xiàn)去廣告的目的,可惜從QQ2009正式版起增加了文件完整性檢查,刪除文件會導致QQ無法啟動,并要求重新安裝。 那么對于非會員來說,QQ2009正式版(包括之后的SP6、SP5、SP4、SP3、SP2、SP1等)就不能手動去廣告了嗎? 其實還是有辦法的,而且做起來也不難,你說是用第三方工具? 不需要!只要你對Windows操作系統(tǒng)稍有了解就可以輕松搞定,除了QQ2009,您也可以把這些招數(shù)用在QQ2010的測試版中,幾乎完全一樣。 下面,就把找到的方法共享給大家吧! 在開始之前,請先退出您正在運行中的QQ。 1、去除騰訊迷你首頁: 對于每次啟動QQ后,都彈出的“騰訊迷你首頁”,很多人一定感到不爽,就讓我們先拿它開刀吧。 首先進入QQ的安裝文件夾,接著進入 Plugin\Com.Tencent.Advertisement\bin 文件夾,這里你會看到一個Advertisement.dll文件,它就是迷你首頁的關鍵所在,只需將這個文件改成只讀屬性,以后啟動QQ就不會再看到迷你首頁了。在這個文件上面點擊鼠標右鍵,點擊屬性,勾選只讀,確定退出。 2、去除聊天窗口右上角廣告: 這個操作針對XP、Win2003系統(tǒng)用戶和Vista、Windows7、Win2008略有不同,主要是文件夾路徑上的。 1)XP、Win2003系統(tǒng)用戶操作方法: 進入 X:\Documents and Settings\用戶名\Application Data\Tencent\QQ\Misc\com.tencent.advertisement (注意,X指的系統(tǒng)所在盤盤符,一般是C),首先刪除這個文件夾里面的所有文件,注意文件夾本身不能刪除,然后把當前用戶的寫入權限給拒絕掉(需要當前分區(qū)為NTFS格式)。 方法:文件夾上右鍵,屬性 - 安全標簽,選中當前登錄用戶,接著在下方“寫入”權限里,拒絕上打勾。 2)Vista、Windows7、Win2008用戶的操作: 進入 X:\users\用戶名\appdata\Roaming\Tencent\QQ\Misc\com.tencent.advertisement,在這個文件上面點擊鼠標右鍵,點擊屬性,然后點擊安全標簽, 選中你的當前用戶,如下圖示例中的Ruamei.com,然后點擊“編輯”按鈕,OK,寫入那兒設置下拒絕吧。 這樣,無論是會員還是非會員,你都不會有任何的廣告圖片下載了。 3、去除QQ2009/QQ2010聊天窗口的左下角廣告 如今的聊天窗口,除了右上角的圖片廣告外,左下角還多了一條文字廣告,既然要去廣告,那么這塊自然也不能遺忘。同樣操作針對XP、Win2003系統(tǒng)用戶和Vista、Windows7、Win2008而有所不同。 1)XP、Win2003系統(tǒng)用戶操作方法: 再次提醒您修改前首先要關閉QQ,然后進入X:\Documents and Settings\用戶名\Application Data\Tencent\Users\你的QQ號\QQ\(注意,X指的系統(tǒng)所在盤盤符,一般是C),刪除其中的Misc.db,接著新建一個文件夾并命名為Misc.db(是不是和防止U盤自動運行病毒的方法很像)。 2)Vista、Windows7、Win2008用戶的操作: 關閉QQ后,進入X:\users\用戶名\appdata\Roaming\Tencent\Users\你的QQ號碼\QQ\,然后操作同上。 搞定,如此一來,這幾個地方都沒廣告了吧! 好吧,打開一個標簽窗口如下圖所示,當然,你可以多點多開。 如果你正在使用這個程序,是否覺得它的功能太簡單了,點點右鍵,彈出的菜單中只能切換便箋的顏色,沒有其他基本的格式編輯功能。 其實,除了標準的 Ctrl 加 XCVA 的剪切/復制/粘貼/全選快捷鍵之外,其實便箋程序還有一些快捷鍵可以使用: 快捷鍵 功能 Ctrl+N 新建一張便箋 Ctrl+D 刪除當前便箋 Ctrl+E 居中對齊 Ctrl+R 右對齊 Ctrl+J 左對齊 Ctrl+I 斜體 Ctrl+B 粗體 Ctrl+U 下劃線 Ctrl+T 刪除線 Ctrl+Shift+> 加大選中文字的字號 Ctrl+Shift+< 縮小選中文字的字號 Ctrl+Shift+L 在文字前添加項目符號和編號(反復按可循環(huán)切換)。其中編號包括數(shù)字、大小寫字母、大小寫羅馬數(shù)字幾種形式。連按兩次回車可取消。 知道了這些快捷鍵,我們就可以做出一些滿足日常需要的格式了: 像 Windows 這種應用廣泛的軟件或硬件,由于全球數(shù)十億人都會使用到,因此一個小小的功能特性都可以對世界造成很大的影響。 想想看,如果所有人都利用好這個小程序而不去買便箋,往小了說是省錢,往大了說可是環(huán)保了,能節(jié)約很多制作便箋的自然資源消耗。
上傳時間: 2019-06-22
上傳用戶:yerbol