2011年計算機等級考試考前必讀:上機注意事項.doc
《2011年計算機等級考試考前必讀:上機注意事項.doc》由會員分享,可在線閱讀,更多相關《2011年計算機等級考試考前必讀:上機注意事項.doc(6頁珍藏版)》請在裝配圖網上搜索。
2011年計算機等級考試考前必讀:上機注意事項.txt18擁有誠實,就舍棄了虛偽;擁有誠實,就舍棄了無聊;擁有踏實,就舍棄了浮躁,不論是有意的丟棄,還是意外的失去,只要曾經真實擁有,在一些時候,大度舍棄也是一種境界。第一條:審題要仔細! 正式考試的時候會遇到很多面熟的題目,這些題目有的似乎和平常資料中看到的一樣,然而,千萬不要見到面熟的題目而沾沾自喜,因為有很多的“陷阱”會使你審題的時候就出錯! 我們看一道所有人都做過的的 “數字題目” 。 考試中心命題組第23題: 已知在文件in.dat中存有N個實數,(N<200),函數readdat()是讀取這N個實數并存入數組xx中。 請編制函數CalValue(),其功能要求: 1、求出這N個實數的整數部分平均值aver; 2、分別求出這N個實數中其整數部分值小于平均值ever的數的整數部分值之和sumint與小數部分之和sumdec 最后調用函數WriteDat()把所求的結果輸出到文件OUT8.dat中。 這一題看起來很眼熟,然而你仔細看! 1、aver是整數部分的平均值!不是普通的哦! 2、整數部分值小于平均值ever的數的整數部分值之和sumint與小數部分之和sumdec! 原來這么復雜!稍不留心就錯了,結果就想當然的0分 考試中心命題組第4題 函數ReadDat()實現(xiàn)從文件ENG.IN中讀取一篇英文文章存入到字符 串數組xx中;請編制函數ComWord()分別計算出10個不區(qū)分大小寫 的英文單詞的首字母(b,c,f,s,n,r,u,e,o,p)的頻數并依次存入 整型數組yy[0]至yy[9]中,最后調用函數WriteDat( )把結果yy 輸出到文件PS1.OUT中。 這題也很眼熟,然而你仔細看! 英文單詞的首字母,不是平常的字母的個數,是作為單詞的首字母的個數啊。 上面兩道題目并沒有在其他資料上見過,考試的時候也不一定會出,這里僅僅是給大家提個醒兒,正式考試一定要仔細審題,嚴格按照題目的要求去做,不要受以前做過的題目的影響。 第二條:一定要考慮除零、溢出、類型轉換、精度等細節(jié)問題! 雖然我們在平時學C語言的時候老師都提醒過,可是真正到了編程序的時候,卻沒有幾個人會考慮。這些細節(jié)問題似乎并不直接影響題目的輸出結果,然而,因為溢出和類型轉換錯誤而造成考試得不到滿分的可是大有人在啊! 我們看下面一道最害人的題目!,很多朋友考了這道題目都沒有過。 下面來看看你為什么是0分! 考試中心命題組64題: 請編制函數encryptChar(),按給定的替代關系對數組xx中的所有字符進行替代, 仍存入數組xx的對應的位置上,最后調用函數WriteDat()把結果xx輸出到文件PS8.DAT中。 替代關系:f(p)=p*11 mod 256 (p是數組中某一個字符的ASCII值,f(p)是計算后新字符的ASCII值), 如果原字符小于等于32或大于130,則該字符不變,否則將f(p)所對應的字符進行替代。 這道題目所有的人都做過,但幾乎就沒有人做對,包括南開無憂在內! 原因就在于這一句! :int f; f=(xx[i][k]*11)%6; char *pf; *pf=*pf*11%6; 表面看來,好象兩個都對, 請你在TC下運行一下下面的代碼,看一下結果你就知道了是怎么回事了: main() { char nk=E,*nkp,wuyou=E; int wy; nkp=&nk; *nkp=*nkp*11%6; wy=wuyou*11%6; printf("%c %c %c %c\n",nk,*nkp,wuyou,wy); printf("%d %d %d %d\n",nk,*nkp,wuyou,wy); } 看到結果了么?是不是很吃驚啊? -9 -9 69 247 大家看到了,南開的結果是負數,連原來的變量nk都變成了負數,這顯然錯了。 聰明一點,知道int比char大,定義了個int,對了。 錯誤原因就是在TC2.0中char型變量只有一個字節(jié),根本容納不下E*11, 所以產生了溢出,上次考這道題目沒過的同學是不是有所啟發(fā)呢? 這里給出考試中心命題組的答案: void encryptChar(){ int i,k,ch; for(i=0;i for(k=0;k ch=xx[i][k]; ch=(ch*11)%6; if(!(ch<=32||ch>=130))xx[i][k]=ch; } } 似乎一個例子不能說明什么,那就把上面的數字題目的答案給大家看看: 考試中心命題組23題答案: int i; long val; float dec; for(i=0;i val=(long)xx[i]; aver+=xx[i]-val; } aver/=(double)N; for(i=0;i val=(long)xx[i]; dec=xx[i]-val; if(dec>aver){ sumint+=val; sumdec+=(xx[i]-val); } } 看到了吧,首先,val的定義,不是我們習慣的int,而是能容納更大數的 long , 這樣在求和的時候就不會溢出,無憂和南開的答案沒有吧 再看,算aver平均值的細節(jié),不是我們平常習慣的aver/=N,更不是無憂的1.0* sum/N, 而是aver/=(double)N,所以大家在考試的時候要時刻注意你的變量類型,特別是在一些求平均值的題目中,千萬要注意,用sum/n的時候,sum的類型一定不要用整形。 第三條:不要使用快捷鍵! 很多人在使用TC的時候習慣于用F9,CTRL+F9或者其他的熱鍵,首先F9只是編譯了,并沒有運行程序,考試一定要運行一下你的程序才會有輸出文件,否則一定是0分。熱鍵在考試的時候是很危險的,因為UCDOS的熱鍵和TC的沖突,CTRL+F9變成了全角半角轉換,如果不小心按了,會導致你的程序有中文字符,編譯的時候出錯,而且很難查找排除錯誤! 所以建議大家在考試的時候使用ALT+紅色字母 來調出菜單進行編譯調試等步驟,建議步驟為: 寫完代碼后用ALT+F,S存盤,然后ALT+C,M編譯,然后ALT+R,R運行,這樣就萬無一失了。 第四條:不要加載任何輸入法 上機考試用的DOS環(huán)境內存十分有限,如果你加載了任何一個輸入法,都有可能造成編譯程序的時候出現(xiàn)out of memory 內存不足的情況,到那時就麻煩了。 程序只要寫的對就可以,不要畫蛇添足的加注釋,沒有人看的! 第五條:不要提前交卷! 考場一般使用NOVELL網絡,有的時候存在網絡狀況不好而連接失敗等問題。這時,如果你已經提前交卷的話就不太好了。另外也可以防止別人有意無意的改動你的程序。 第六條:考試時候的一些技巧 1、進入TC以后如果想查看題干要求,不用退出TC,直接用F12就可以顯示出來。 2、用F12顯示題目之后可以通過CTRL+BACKSPACE把題目定在屏幕上。 3、編譯運行之后,可以通過type out.dat或edit out.dat或tc out.dat查看輸出文件。 (千萬不要改動!不然影響考試結果。如果不小心改動,再重新編譯運行一次你的程序就可以了) 4、如果考試的時候不小心改動了代碼的主函數或其他部分,可以進入考生目錄下的warn隱藏目錄, 把里邊的備份文件復制到考生目錄。步驟: 在考生目錄下輸入cd warn 輸入copy *.c ..輸入cd .. 就可以了 5、如果調試的時候不小心死循環(huán)了,可以通過CTRL+C或CTRL+BREAK來終止,如果連按多次都沒反應,不要慌,立即找監(jiān)考老師說明情況,可以重新啟動機器繼續(xù)答原題,你的程序還在,時間也是繼續(xù)剛才的。所以這也提醒大家,運行程序之前一定要先存盤。- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 2011 計算機等級考試 考前 必讀 上機 注意事項
裝配圖網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
鏈接地址:http://www.820124.com/p-7953824.html