C語(yǔ)言編程二級(jí)上機(jī)題學(xué)習(xí)叶洞,做題方法和技巧總結(jié)

C語(yǔ)言是面向過(guò)程的鲫凶,而C++是面向?qū)ο蟮?/p>

C和C++的區(qū)別:

C是一個(gè)結(jié)構(gòu)化語(yǔ)言,它的重點(diǎn)在于算法和數(shù)據(jù)結(jié)構(gòu)衩辟。C程序的設(shè)計(jì)首要考慮的是如何通過(guò)一個(gè)過(guò)程螟炫,對(duì)輸入(或環(huán)境條件)進(jìn)行運(yùn)算處理得到輸出(或?qū)崿F(xiàn)過(guò)程(事務(wù))控制)。

C++艺晴,首要考慮的是如何構(gòu)造一個(gè)對(duì)象模型昼钻,讓這個(gè)模型能夠契合與之對(duì)應(yīng)的問(wèn)題域,這樣就可以通過(guò)獲取對(duì)象的狀態(tài)信息得到輸出或?qū)崿F(xiàn)過(guò)程(事務(wù))控制封寞。 所以C與C++的最大區(qū)別在于它們的用于解決問(wèn)題的思想方法不一樣然评。之所以說(shuō)C++比C更先進(jìn),是因?yàn)椤?設(shè)計(jì)這個(gè)概念已經(jīng)被融入到C++之中 ”狈究。

C與C++的最大區(qū)別:在于它們的用于解決問(wèn)題的思想方法不一樣碗淌。之所以說(shuō)C++比C更先進(jìn),是因?yàn)椤?設(shè)計(jì)這個(gè)概念已經(jīng)被融入到C++之中 ”抖锥,而就語(yǔ)言本身而言亿眠,在C中更多的是算法的概念。那么是不是C就不重要了宁改,錯(cuò)缕探!算法是程序設(shè)計(jì)的基礎(chǔ),好的設(shè)計(jì)如果沒(méi)有好的算法还蹲,一樣不行。而且,“C加上好的設(shè)計(jì)”也能寫(xiě)出非常好的東西谜喊。

小編推薦一個(gè)學(xué)C語(yǔ)言/C++的學(xué)習(xí)裙【 六九九潭兽,四七零,五九六 】斗遏,無(wú)論你是大牛還是小白山卦,是想轉(zhuǎn)行還是想入行都可以來(lái)了解一起進(jìn)步一起學(xué)習(xí)!裙內(nèi)有開(kāi)發(fā)工具诵次,很多干貨和技術(shù)資料分享账蓉!

一、字符串操作(一)刪除*號(hào)

1逾一、編程題中涉及刪除*號(hào)的相關(guān)題目:6铸本、9、22遵堵、33箱玷、36、40陌宿、45

2锡足、編程題第33題的操作過(guò)程

(1)題目:假設(shè)輸入的字符串中只包含字母和“*”號(hào)。請(qǐng)編寫(xiě)函數(shù)fun壳坪,它功能是:除了字符串前導(dǎo)的*號(hào)之外舶得,將串中其他*號(hào)全部傷處。例如爽蝴,字符串中的內(nèi)容:****A*BC*DEF*G*******扩灯,刪除后,字符串中的內(nèi)容應(yīng)當(dāng)是:****ABCDEFG霜瘪。

(2)分析:題目的含義可以解析為將中間和尾部的*號(hào)全部刪除珠插,剩余前導(dǎo)*號(hào)和字母。

前導(dǎo)*號(hào):指第一個(gè)字母以前的字母颖对,例如****A*BC*DEF*G*******中的前導(dǎo)*有4個(gè)捻撑;

尾部*號(hào):指最后一個(gè)字母以后的字母,例如****A*BC*DEF*G*******中的尾部*有7個(gè)缤底;

中間*號(hào):除了前導(dǎo)和尾部*號(hào)以外的*號(hào)顾患。

(3)【步驟1】打開(kāi)“編程題”題目,分析NONO函數(shù)

NONO( )

{/* 本函數(shù)用于打開(kāi)文件个唧,輸入數(shù)據(jù)江解,調(diào)用函數(shù),輸出數(shù)據(jù)徙歼,關(guān)閉文件犁河。 */

FILE *in, *out ;

int i ; char s[81] ;

in = fopen("D:\k01\24010001\in.dat","r") ;

out = fopen("D:\k01\24010001\out.dat","w") ;

for(i = 0 ; i < 10 ; i++) {

fscanf(in, "%s", s) ;

fun(s) ;

fprintf(out, "%s ", s) ;

}

fclose(in) ;

fclose(out) ;

}

FILE *in, *out ; /*定義了兩個(gè)文件類(lèi)型的指針變量in和out*/?文件指針的定義:FILE *指針變量名鳖枕;

int i ; char s[81] ;/*定義了一個(gè)整型的變量i,用來(lái)表示循環(huán)的遞增桨螺;定義了一個(gè)字符類(lèi)型的一維數(shù)組s宾符,用來(lái)存放后面題目中數(shù)據(jù)。*/

in = fopen("D:\k01\24010001\in.dat","r") ; /*in是文件指針灭翔,用來(lái)指向文件“in.dat”魏烫。fopen("D:\k01\24010001\in.dat","r") ; 以“r”讀的方式打開(kāi)“in.dat”文件*/ 知識(shí)點(diǎn)參照課本P115頁(yè)相關(guān)理論知識(shí),打開(kāi)文件的定義:fopen(文件名,文件使用方式)肝箱;

D:\k01\24010001\in.dat 打開(kāi)的文件為in.dat哄褒,其中D:\k01\24010001\是文件存儲(chǔ)的路徑,“r”為文件打開(kāi)的方式“讀”煌张,即只能讀取里面的數(shù)據(jù)呐赡,不能往里面寫(xiě)入數(shù)據(jù)。

out = fopen("D:\k01\24010001\out.dat","w") ; /*out是文件指針唱矛,用來(lái)指向文件“out.dat”罚舱。fopen("D:\k01\24010001\out.dat","w")以”w”寫(xiě)的方式打開(kāi)“out.dat”文件*/

for(i = 0 ; i < 10 ; i++) /*循環(huán)語(yǔ)句,該循環(huán)將執(zhí)行10次*/

fscanf(in, "%s", s) ; /*從in文件所指向的數(shù)據(jù)源文件in.dat中讀取一行字符串?dāng)?shù)據(jù)給一維數(shù)組s绎谦,(順便說(shuō)下為什么知道是讀取一行字符串?dāng)?shù)據(jù)管闷,是因?yàn)?s格式是用來(lái)控制字符串的,因此不難判斷)窃肠,通過(guò)循環(huán)語(yǔ)句包个,將讀取10行數(shù)據(jù)進(jìn)行處理,該題目總共40分冤留,因此每行就是4分碧囊。*/

fun(s) ; /*調(diào)用函數(shù)fun,傳入實(shí)參s纤怒,從題目得知fun函數(shù)要完成的事情是: 將中間和尾部的*號(hào)全部刪除糯而,剩余前導(dǎo)*號(hào)和字母。*/

fprintf(out, "%s ", s) ; /*printf在第二章學(xué)習(xí)的時(shí)候知道是輸出的意思泊窘,fprintf的意思是將數(shù)據(jù)輸出到out指針指向的文件中熄驼,以“%s ”格式方式輸出,輸出的數(shù)據(jù)是s烘豹,同學(xué)們一定要注意瓜贾,此時(shí)的s是修改過(guò)的s,即是刪除*號(hào)后的字符串携悯。*/

fclose(in) ; /*關(guān)閉文件指針in祭芦。*/

fclose(out) ; /*關(guān)閉文件指針out,文件打開(kāi)后要將其關(guān)閉憔鬼。*/

(4)【步驟2】根據(jù)考生文件夾【考試文件夾D:K01?10001】打開(kāi)“in.dat”文件龟劲。

①在桌面上雙擊“我的電腦”圖標(biāo)胃夏,然后依次雙擊“D盤(pán)”,雙擊“K01”文件夾咸灿,雙擊“2401001”文件夾构订。

②顯示文件夾的擴(kuò)展名侮叮,如果打開(kāi)文件“24010001”文件夾后顯示“in.dat”文件為“in”文件避矢,則說(shuō)明系統(tǒng)隱藏了“文件的擴(kuò)展名”,考試必須將之顯示出來(lái)方能繼續(xù)做題囊榜。首先單擊菜單欄中的“工具”审胸,然后選擇文件夾選項(xiàng),單擊查看卸勺,在高級(jí)設(shè)置中將隱藏已知文件擴(kuò)展名前面的勾去掉砂沛,最后單擊確定此時(shí)“in.dat”中的后綴已經(jīng)顯示出來(lái)曙求。

③用“文本文件”的方式打開(kāi)“in.dat”文件碍庵。首先選中“in.dat”文件,然后右擊選擇“打開(kāi)方式”悟狱,在“打開(kāi)方式”中選擇“記事本”打開(kāi)“in.dat”静浴。

(5)【步驟3】在考生文件夾下建立“out.dat”文件

(6)【步驟4】根據(jù)題目要求將正確答案填入“out.dat”文件中。本題目的要求將中間和尾部的*號(hào)全部刪除挤渐,剩余前導(dǎo)*號(hào)和字母苹享。將新字符串存放到“out.dat”文件中,做題的時(shí)候細(xì)心些浴麻,共10行得问,寫(xiě)錯(cuò)一行扣4分。

(7)【步驟5】保存“out.dat”文件软免,進(jìn)行評(píng)分(注意:考試的時(shí)候沒(méi)有評(píng)分環(huán)節(jié)9场)單擊菜單欄中的“文件”,選擇“保存”即可保存“out.dat”文件膏萧。關(guān)閉“in.dat”漓骚、“out.dat”等文件后進(jìn)行評(píng)分。在“答題界面”單擊“評(píng)分”按鈕即可顯示所得分?jǐn)?shù)向抢!

3认境、同類(lèi)型題目列舉

6題題目:將字符串中的前導(dǎo)*號(hào)全部刪除,中間和尾部的*號(hào)不刪除挟鸠。

9題題目:除了字符串前導(dǎo)和尾部*號(hào)之外叉信,將串中其他*號(hào)全部刪除。

13題題目:只刪除字符串前導(dǎo)和尾部的*號(hào)艘希,串中字母之間的*號(hào)不能刪除硼身。

22題題目:除了字符串前導(dǎo)和尾部*號(hào)之外硅急,將串中其他*號(hào)全部刪除。

36題題目:將字符串尾部的*號(hào)全部刪除佳遂,前面和中間的*號(hào)不刪除营袜。

40題題目:將字符串中的前導(dǎo)*號(hào)全部移動(dòng)到字符串的尾部。

45題題目:刪除字符串中的所有的*號(hào)丑罪。

4荚板、編程題中涉及刪除*號(hào)的相關(guān)題目:5、31

5吩屹、編程題第5題的操作過(guò)程

(1)題目:將字符串的前導(dǎo)*號(hào)不得多于n個(gè)跪另;若多于n個(gè),則刪除多余的*號(hào)煤搜;若少于或等于n個(gè)免绿,則什么也不做,字符串中間和尾部的*號(hào)不刪除擦盾。例如嘲驾,字符串中的內(nèi)容:*******A*BC*DEF*G****,若n的值為4迹卢,刪除后辽故,字符串中的內(nèi)容應(yīng)當(dāng)是:****A*BC*DEF*G****。若n的值為8婶希,則字符串任為:*******A*BC*DEF*G****榕暇。

(2)分析:將前導(dǎo)*號(hào)按照n的值進(jìn)行舍去或不變,改變后將新的字符串存放在“out.dat”文件中即可喻杈。

(3)【步驟1】打開(kāi)“編程題”題目彤枢,分析NONO函數(shù)

NONO()

{/* 本函數(shù)用于打開(kāi)文件,輸入數(shù)據(jù)筒饰,調(diào)用函數(shù)缴啡,輸出數(shù)據(jù),關(guān)閉文件瓷们。 */

FILE *in, *out ;

int i, n ; char s[81] ;

in = fopen("D:\k01\24010001\in.dat","r") ;

out = fopen("D:\k01\24010001\out.dat","w") ;

for(i = 0 ; i < 10 ; i++) {

fscanf(in, "%s", s) ;

fscanf(in, "%d", &n) ;

fun(s,n) ;

fprintf(out, "%s ", s) ;

}

fclose(in) ;

fclose(out) ;

}

FILE *in, *out ; /*定義了兩個(gè)文件類(lèi)型的指針變量in和out*/

int i ; char s[81] ;/*定義了一個(gè)整型的變量i业栅,用來(lái)表示循環(huán)的遞增;定義了一個(gè)字符類(lèi)型的一維數(shù)組s谬晕,用來(lái)存放后面題目中數(shù)據(jù)碘裕。*/

in = fopen("D:\k01\24010001\in.dat","r") ; /*in是文件指針,用來(lái)指向文件“in.dat”攒钳。fopen("D:\k01\24010001\in.dat","r") ; 以“r”讀的方式打開(kāi)“in.dat”文件*/

out = fopen("D:\k01\24010001\out.dat","w") ; /*out是文件指針帮孔,用來(lái)指向文件“out.dat”。fopen("D:\k01\24010001\out.dat","w")以”w”寫(xiě)的方式打開(kāi)“out.dat”文件*/

for(i = 0 ; i < 10 ; i++) /*循環(huán)語(yǔ)句,該循環(huán)將執(zhí)行10次*/

fscanf(in, "%s", s) ; /*從in文件所指向的數(shù)據(jù)源文件in.dat中讀取一行字符串?dāng)?shù)據(jù)給一維數(shù)組s*/

fscanf(in, "%d", &n) ; /*從in文件所指向的數(shù)據(jù)源文件in.dat中讀取一個(gè)整型“%d”數(shù)據(jù)給一維數(shù)組s*/

fun(s,n) ; /*調(diào)用函數(shù)fun文兢,從題目得知fun函數(shù)要完成的事情是: 將字符串的前導(dǎo)*號(hào)不得多于n個(gè)晤斩;若多于n個(gè),則刪除多余的*號(hào)姆坚;若少于或等于n個(gè)澳泵,則什么也不做,字符串中間和尾部的*號(hào)不刪除兼呵。*/

fprintf(out, "%s ", s) ; /* fprintf的意思是將數(shù)據(jù)輸出到out指針指向的文件中兔辅,以“%s ”格式方式輸出,輸出的數(shù)據(jù)是s萍程,同學(xué)們一定要注意幢妄,此時(shí)的s是修改過(guò)的s兔仰。*/

fclose(in) ; /*關(guān)閉文件指針in茫负。*/

?fclose(out) ; /*關(guān)閉文件指針out,文件打開(kāi)后要將其關(guān)閉乎赴。*/

(4)【步驟2】根據(jù)考生文件夾【考試文件夾D:K01?10001】打開(kāi)“in.dat”文件忍法。

①在桌面上雙擊“我的電腦”圖標(biāo),然后依次雙擊“D盤(pán)”榕吼,雙擊“K01”文件夾饿序,雙擊“2401001”文件夾。

②顯示文件夾的擴(kuò)展名羹蚣,如果打開(kāi)文件“24010001”文件夾后顯示“in.dat”文件為“in”文件原探,則說(shuō)明系統(tǒng)隱藏了“文件的擴(kuò)展名”,考試必須將之顯示出來(lái)方能繼續(xù)做題顽素。首先單擊菜單欄中的“工具”咽弦,然后選擇“文件夾選項(xiàng)”,單擊“查看”胁出,在“高級(jí)設(shè)置”中將“隱藏已知文件擴(kuò)展名”前面的勾去掉型型,最后單擊“確定”,此時(shí)“in.dat”中的后綴已經(jīng)顯示出來(lái)全蝶。

③用“文本文件”的方式打開(kāi)“in.dat”文件闹蒜。首先選中“in.dat”文件,然后右擊選擇“打開(kāi)方式”抑淫,在“打開(kāi)方式”中選擇“記事本”打開(kāi)“in.dat”绷落。

(5)【步驟3】在考生文件夾下建立“out.dat”文件

(6)【步驟4】根據(jù)題目要求將正確答案填入“out.dat”文件中。按照題目要求將每一行字符串和n作比較始苇,如果大于n則刪除多于的*號(hào)砌烁,否則什么也不變,將改動(dòng)過(guò)后的新字符串存放在“out.dat”文件中埂蕊,注意n就不輸出到“out.dat”文件中了往弓!

(7)【步驟5】保存“out.dat”文件疏唾,進(jìn)行評(píng)分(注意:考試的時(shí)候沒(méi)有評(píng)分環(huán)節(jié)!)單擊菜單欄中的“文件”函似,選擇“保存”即可保存“out.dat”文件槐脏。關(guān)閉“in.dat”、“out.dat”等文件后進(jìn)行評(píng)分撇寞。在“答題界面”單擊“評(píng)分”按鈕即可顯示所得分?jǐn)?shù)顿天!

二、字符串操作(二)簡(jiǎn)單的字符操作

1蔑担、編程題中涉及“簡(jiǎn)單的字符操作”的相關(guān)題目:32

2牌废、編程題第59題的操作過(guò)程

(1)題目:?將一個(gè)數(shù)字字符串轉(zhuǎn)換為一個(gè)整數(shù)(不得調(diào)用C語(yǔ)言提供的將字符串轉(zhuǎn)換為整數(shù)的函數(shù))。例如啤握,如輸入字符串“-1234”鸟缕,則函數(shù)把它轉(zhuǎn)換為整數(shù)值-1234

(2)分析:將“in.dat”文件中的數(shù)字字符串中的數(shù)字賦值后,放到“out.dat”文件中即可排抬。

(3)【步驟1】打開(kāi)“編程題”題目懂从,分析NONO函數(shù)

NONO ( )

{/* 本函數(shù)用于打開(kāi)文件,輸入數(shù)據(jù)蹲蒲,調(diào)用函數(shù)番甩,輸出數(shù)據(jù),關(guān)閉文件届搁。 */

FILE *fp, *wf ;

int i ;

char s[20] ;

long n ;

fp = fopen("D:\k01\24010001\in.dat","r") ;

wf = fopen("D:\k01\24010001\out.dat","w") ;

for(i = 0 ; i < 10 ; i++) {

fscanf(fp, "%s", s) ;

n = fun(s);

fprintf(wf, "%ld ", n) ;

}

fclose(fp) ;

fclose(wf) ;

}

FILE *fp, *wf ; /*定義了兩個(gè)文件類(lèi)型的指針變量fp和wf*/

char s[20];/*定義了一個(gè)一維字符數(shù)組 */

fp = fopen("D:\k01\24010001\in.dat","r") ; /*fp是文件指針缘薛,用來(lái)指向文件“in.dat”。fopen("D:\k01\24010001\in.dat","r") ; 以“r”讀的方式打開(kāi)“in.dat”文件*/

wf= fopen("D:\k01\24010001\out.dat","w") ; /*wf是文件指針卡睦,用來(lái)指向文件“out.dat”宴胧。fopen("D:\k01\24010001\out.dat","w")以”w”寫(xiě)的方式打開(kāi)“out.dat”文件*/

for(i = 0 ; i < 10 ; i++) /*控制循環(huán),共循環(huán)10次么翰,那么就意味著每個(gè)正確答案4分 */

fscanf(fp, "%s", s) ; /*從fp所指向的文件“in.dat”文件中讀入一個(gè)“%s”牺汤,即一個(gè)字符串給數(shù)組s */

n = fun(s);/*調(diào)用函數(shù)fun,從題目得知fun函數(shù)要完成的事情是: 將一個(gè)數(shù)字字符串轉(zhuǎn)換為一個(gè)整數(shù)浩嫌。并將函數(shù)返回的值賦值給變量n*/

fprintf(wf, "%ld ", n) ;/*fprintf的意思是將數(shù)據(jù)輸出到out指針指向的文件中檐迟,以“%ld ”格式方式輸出,輸出的數(shù)據(jù)是n码耐,同學(xué)們一定要注意追迟,此時(shí)的n是整數(shù)不是字符串。*/

fclose(in) ; /*關(guān)閉文件指針in骚腥。*/

fclose(out) ; /*關(guān)閉文件指針out敦间,文件打開(kāi)后要將其關(guān)閉。*/

小編推薦一個(gè)學(xué)C語(yǔ)言/C++的學(xué)習(xí)裙【 六九九,四七零廓块,五九六 】厢绝,無(wú)論你是大牛還是小白,是想轉(zhuǎn)行還是想入行都可以來(lái)了解一起進(jìn)步一起學(xué)習(xí)带猴!裙內(nèi)有開(kāi)發(fā)工具昔汉,很多干貨和技術(shù)資料分享!

(4)【步驟2】根據(jù)考生文件夾【考試文件夾D:K01?10001】打開(kāi)“in.dat”文件拴清。

①在桌面上雙擊“我的電腦”圖標(biāo)靶病,然后依次雙擊“D盤(pán)”,雙擊“K01”文件夾口予,雙擊“2401001”文件夾娄周。

②顯示文件夾的擴(kuò)展名,如果打開(kāi)文件“24010001”文件夾后顯示“in.dat”文件為“in”文件沪停,則說(shuō)明系統(tǒng)隱藏了“文件的擴(kuò)展名”煤辨,考試必須將之顯示出來(lái)方能繼續(xù)做題。首先單擊菜單欄中的“工具”牙甫,然后選擇“文件夾選項(xiàng)”掷酗,單擊“查看”,在“高級(jí)設(shè)置”中將“隱藏已知文件擴(kuò)展名”前面的勾去掉窟哺,最后單擊“確定”,此時(shí)“in.dat”中的后綴已經(jīng)顯示出來(lái)技肩。

③用“文本文件”的方式打開(kāi)“in.dat”文件且轨。首先選中“in.dat”文件,然后右擊選擇“打開(kāi)方式”虚婿,在“打開(kāi)方式”中選擇“記事本”打開(kāi)“in.dat”旋奢。

(5)【步驟3】在考生文件夾下建立“out.dat”文件。

(6)【步驟4】根據(jù)題目要求將正確答案填入“out.dat”文件中然痊。將“in.dat”中全部數(shù)據(jù)復(fù)制后在“out.dat”中粘貼即可至朗,非常簡(jiǎn)單,不要錯(cuò)了>缃锹引!

(7)【步驟5】保存“out.dat”文件,進(jìn)行評(píng)分(注意:考試的時(shí)候沒(méi)有評(píng)分環(huán)節(jié)K粝恪)單擊菜單欄中的“文件”嫌变,選擇“保存”即可保存“out.dat”文件。關(guān)閉“in.dat”躬它、“out.dat”等文件后進(jìn)行評(píng)分腾啥。在“答題界面”單擊“評(píng)分”按鈕即可顯示所得分?jǐn)?shù)!

三、字符串操作(三)刪除或轉(zhuǎn)換指定的字符操作

1倘待、編程題中涉及“刪除或轉(zhuǎn)換指定的字符操作”的相關(guān)題目:7

2疮跑、編程題第7題的操作過(guò)程

(1)題目:將ss所指字符串中所有下標(biāo)為奇數(shù)位置上的字母轉(zhuǎn)換為大寫(xiě)(若該位置上不是字母,則不轉(zhuǎn)換)凸舵。例如祸挪,若輸入“abc4EFg”,則應(yīng)輸出“aBc4EFg”。

(2)分析:細(xì)心的將下標(biāo)為奇數(shù)位置上的字母轉(zhuǎn)換為大寫(xiě)贞间,放到“out.dat”文件中即可贿条。

(3)【步驟1】打開(kāi)“編程題”題目,分析NONO函數(shù)

NONO()

{

/* 請(qǐng)?jiān)诖撕瘮?shù)內(nèi)打開(kāi)文件增热,輸入測(cè)試數(shù)據(jù)整以,調(diào)用 fun 函數(shù),

輸出數(shù)據(jù)峻仇,關(guān)閉文件公黑。 */

char tt[51], ch;

FILE *rf, *wf ;

int len, i=0 ;

rf = fopen("D:\k01\24010001\in.dat","r") ;

wf = fopen("D:\k01\24010001\out.dat","w") ;

while(i < 10) {

fgets( tt, 50, rf );

len = strlen(tt) - 1 ;

ch = tt[len] ;

if(ch == ' ' || ch == 0x1a) tt[len] = 0 ;

fun(tt);

fprintf( wf, "%s ", tt );

i++ ;

}

fclose(rf) ;

fclose(wf) ;

}

FILE *rf, *wf ; /*定義了兩個(gè)文件類(lèi)型的指針變量rf和wf*/

char tt[51],ch;/*定義了一個(gè)一維字符類(lèi)型的數(shù)組,定義了一個(gè)字符類(lèi)型的變量ch */

rf = fopen("D:\k01\24010001\in.dat","r") ; /*rf是文件指針摄咆,用來(lái)指向文件“in.dat”凡蚜。fopen("D:\k01\24010001\in.dat","r") ; 以“r”讀的方式打開(kāi)“in.dat”文件*/

wf= fopen("D:\k01\24010001\out.dat","w") ; /*wf是文件指針,用來(lái)指向文件“out.dat”吭从。fopen("D:\k01\24010001\out.dat","w")以”w”寫(xiě)的方式打開(kāi)“out.dat”文件*/

while(i < 10) /*控制循環(huán)朝蜘,共循環(huán)10次,那么就意味著每個(gè)正確答案4分*/

fgets( tt, 50, rf ); /* fgets(tt, 50, rf);的含義是從rf所指向的文件“in.dat”中讀入50個(gè)字符到數(shù)組tt中涩金,通過(guò)循環(huán)實(shí)現(xiàn)將所有的字符串讀入到tt數(shù)組中*/

fun(tt); /*調(diào)用函數(shù)fun谱醇,從題目得知fun函數(shù)要完成的事情是: 將下標(biāo)為奇數(shù)位置上的字母轉(zhuǎn)換為大寫(xiě)。*/

fprintf( wf, "%s ", tt ); /*fprintf的意思是將數(shù)據(jù)輸出到out指針指向的文件中步做,以“%s ”格式方式輸出副渴,輸出的數(shù)據(jù)是tt,同學(xué)們一定要注意全度,此時(shí)的tt是轉(zhuǎn)換后的新字符串煮剧。*/

fclose(in) ; /*關(guān)閉文件指針in。*/

fclose(out) ; /*關(guān)閉文件指針out将鸵,文件打開(kāi)后要將其關(guān)閉勉盅。*/

(4)【步驟2】根據(jù)考生文件夾【考試文件夾D:K01?10001】打開(kāi)“in.dat”文件。

①在桌面上雙擊“我的電腦”圖標(biāo)咨堤,然后依次雙擊“D盤(pán)”菇篡,雙擊“K01”文件夾,雙擊“2401001”文件夾一喘。

②顯示文件夾的擴(kuò)展名驱还,如果打開(kāi)文件“24010001”文件夾后顯示“in.dat”文件為“in”文件嗜暴,則說(shuō)明系統(tǒng)隱藏了“文件的擴(kuò)展名”,考試必須將之顯示出來(lái)方能繼續(xù)做題议蟆。首先單擊菜單欄中的“工具”闷沥,然后選擇“文件夾選項(xiàng)”,單擊“查看”咐容,在“高級(jí)設(shè)置”中將“隱藏已知文件擴(kuò)展名”前面的勾去掉舆逃,最后單擊“確定”,此時(shí)“in.dat”中的后綴已經(jīng)顯示出來(lái)戳粒。

③用“文本文件”的方式打開(kāi)“in.dat”文件路狮。首先選中“in.dat”文件,然后右擊選擇“打開(kāi)方式”蔚约,在“打開(kāi)方式”中選擇“記事本”打開(kāi)“in.dat”奄妨。

(5)【步驟3】在考生文件夾下建立“out.dat”文件。

(6)【步驟4】根據(jù)題目要求將正確答案填入“out.dat”文件中苹祟。

(7)【步驟5】保存“out.dat”文件砸抛,進(jìn)行評(píng)分(注意:考試的時(shí)候沒(méi)有評(píng)分環(huán)節(jié)!)單擊菜單欄中的“文件”树枫,選擇“保存”即可保存“out.dat”文件直焙。關(guān)閉“in.dat”、“out.dat”等文件后進(jìn)行評(píng)分砂轻。在“答題界面”單擊“評(píng)分”按鈕即可顯示所得分?jǐn)?shù)奔誓!

3、編程題中涉及“刪除或轉(zhuǎn)換指定的字符操作”的相關(guān)題目:11舔清、35

4淘太、編程題第11題的操作過(guò)程

(1)題目:將s所指字符串中下標(biāo)為奇數(shù)同時(shí)ASCII值為奇數(shù)的字符之外翠忠,其余的所有字符都刪除背桐,串中剩余字符形成一個(gè)新串存放在t所指的數(shù)組中觉壶。

(2)分析:首先考生必須知道’a’的ASCII值為97瘤运,‘A’的ASCII值為65丁频,‘0’的ASCII值為48飒责,往后推出來(lái)其它字符的ASCII值修械,s所指字符串中下標(biāo)為偶數(shù)的字符刪除颁褂,然后將下標(biāo)為偶數(shù)的字符刪除【提醒:多讀幾遍題目】故响,放到“out.dat”文件中即可。

(3)【步驟1】打開(kāi)“編程題”題目颁独,分析NONO函數(shù)

NONO( )

{/* 本函數(shù)用于打開(kāi)文件彩届,輸入數(shù)據(jù),調(diào)用函數(shù)誓酒,輸出數(shù)據(jù)樟蠕,關(guān)閉文件贮聂。 */

char s[100], t[100] ;

FILE *rf, *wf ;

int i ;

rf = fopen("D:\k01\24010001\in.dat","r") ;

wf = fopen("D:\k01\24010001\out.dat","w") ;

for(i = 0 ; i < 10 ; i++) {

fscanf(rf, "%s", s) ;

fun(s, t) ;

fprintf(wf, "%s ", t) ;

}

fclose(rf) ;

fclose(wf) ;

}

FILE *rf, *wf ; /*定義了兩個(gè)文件類(lèi)型的指針變量rf和wf*/

char s[100],t[100];?/*定義了2個(gè)一維字符類(lèi)型的數(shù)組s和t */

rf = fopen("D:\k01\24010001\in.dat","r") ; /*rf是文件指針,用來(lái)指向文件“in.dat”寨辩。fopen("D:\k01\24010001\in.dat","r") ; 以“r”讀的方式打開(kāi)“in.dat”文件*/

wf= fopen("D:\k01\24010001\out.dat","w") ; /*wf是文件指針吓懈,用來(lái)指向文件“out.dat”。fopen("D:\k01\24010001\out.dat","w")以”w”寫(xiě)的方式打開(kāi)“out.dat”文件*/

for(i = 0 ; i < 10 ; i++)/*控制循環(huán)靡狞,共循環(huán)10次耻警,那么就意味著每個(gè)正確答案4分*/

fscanf(rf, "%s", s) ; /* 從rf所指向的“in.dat”文件中讀入一個(gè)字符串給數(shù)組s*/

fun(s, t) ; /*調(diào)用函數(shù)fun,從題目得知fun函數(shù)要完成的事情是: 將s所指字符串中下標(biāo)為偶數(shù)同時(shí)ASCII值為奇數(shù)的字符串刪除甸怕。*/

fprintf(wf, "%s ", t) ;/*fprintf的意思是將數(shù)據(jù)輸出到out指針指向的文件中甘穿,以“%s ”格式方式輸出,輸出的數(shù)據(jù)是t梢杭,同學(xué)們一定要注意温兼,此時(shí)的t是轉(zhuǎn)換后的新字符串。*/

fclose(in) ; /*關(guān)閉文件指針in式曲。*/

fclose(out) ; /*關(guān)閉文件指針out妨托,文件打開(kāi)后要將其關(guān)閉。*/

(4)【步驟2】根據(jù)考生文件夾【考試文件夾D:K01?10001】打開(kāi)“in.dat”文件吝羞。

①在桌面上雙擊“我的電腦”圖標(biāo)兰伤,然后依次雙擊“D盤(pán)”,雙擊“K01”文件夾钧排,雙擊“2401001”文件夾敦腔。

②顯示文件夾的擴(kuò)展名,如果打開(kāi)文件“24010001”文件夾后顯示“in.dat”文件為“in”文件恨溜,則說(shuō)明系統(tǒng)隱藏了“文件的擴(kuò)展名”符衔,考試必須將之顯示出來(lái)方能繼續(xù)做題。首先單擊菜單欄中的“工具”糟袁,然后選擇“文件夾選項(xiàng)”判族,單擊“查看”,在“高級(jí)設(shè)置”中將“隱藏已知文件擴(kuò)展名”前面的勾去掉项戴,最后單擊“確定”形帮,此時(shí)“in.dat”中的后綴已經(jīng)顯示出來(lái)。

③用“文本文件”的方式打開(kāi)“in.dat”文件周叮。首先選中“in.dat”文件辩撑,然后右擊選擇“打開(kāi)方式”,在“打開(kāi)方式”中選擇“記事本”打開(kāi)“in.dat”仿耽。

(5)【步驟3】在考生文件夾下建立“out.dat”文件合冀。

(6)【步驟4】根據(jù)題目要求將正確答案填入“out.dat”文件中。將“in.dat”中最長(zhǎng)的字符串復(fù)制后在“out.dat”中粘貼即可项贺,非常簡(jiǎn)單君躺,不要錯(cuò)了G团小!

int.dat內(nèi)容如下:【注意晰洒,冒號(hào):的ASCII58朝抖,分號(hào);ASCII59

小編推薦一個(gè)學(xué)C語(yǔ)言/C++的學(xué)習(xí)裙【 六九九,四七零谍珊,五九六 】治宣,無(wú)論你是大牛還是小白,是想轉(zhuǎn)行還是想入行都可以來(lái)了解一起進(jìn)步一起學(xué)習(xí)砌滞!裙內(nèi)有開(kāi)發(fā)工具侮邀,很多干貨和技術(shù)資料分享!

【操作1】將第一行的內(nèi)容:ksjdhfksdjfhsdkjlfhsdlkjfhsdfhsdkjfhsdfhsdsdfksdjhfk復(fù)制到out.dat文件中贝润;

【操作2】將out.dat中下標(biāo)為偶數(shù)的字符先刪除绊茧,記住數(shù)組下標(biāo)從0開(kāi)始,因此先將k字符刪除打掘,然后每隔一個(gè)位置刪除一個(gè)字符华畏。

【操作3】將ASCII碼為偶數(shù)的字符刪除,首先你必須知道d的ASCII為100尊蚁,因此將d字符刪除亡笑,結(jié)果如下:

【操作4】將ASCII碼為偶數(shù)的字符刪除,s的ASCII為115横朋,不能刪除仑乌;f的ASCII碼為102,因此要?jiǎng)h除琴锭;j的ASCII碼為106晰甚,因此要?jiǎng)h除;h的ASCII碼為104决帖,因此要?jiǎng)h除厕九;k的ASCII碼為107,因此不要?jiǎng)h除地回;l的ASCII碼為108止剖,因此要?jiǎng)h除;落君,結(jié)果如下:

【操作5】依照1-4操作步驟將下面的行完成將得到40分。【注意亭引,冒號(hào):的ASCII58绎速,分號(hào);ASCII59

(7)【步驟5】保存“out.dat”文件,進(jìn)行評(píng)分(注意:考試的時(shí)候沒(méi)有評(píng)分環(huán)節(jié)1候尽)單擊菜單欄中的“文件”纹冤,選擇“保存”即可保存“out.dat”文件洒宝。關(guān)閉“in.dat”、“out.dat”等文件后進(jìn)行評(píng)分萌京。在“答題界面”單擊“評(píng)分”按鈕即可顯示所得分?jǐn)?shù)雁歌!

這些是C/C++能做的

服務(wù)器開(kāi)發(fā)工程師、人工智能知残、云計(jì)算工程師靠瞎、信息安全(黑客反黑客)、大數(shù)據(jù) 求妹、數(shù)據(jù)平臺(tái)乏盐、嵌入式工程師、流媒體服務(wù)器制恍、數(shù)據(jù)控解父能、圖像處理、音頻視頻開(kāi)發(fā)工程師净神、游戲服務(wù)器何吝、分布式系統(tǒng)、游戲輔助等

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末鹃唯,一起剝皮案震驚了整個(gè)濱河市爱榕,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌俯渤,老刑警劉巖呆细,帶你破解...
    沈念sama閱讀 216,470評(píng)論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異八匠,居然都是意外死亡絮爷,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,393評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門(mén)梨树,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)坑夯,“玉大人,你說(shuō)我怎么就攤上這事抡四」耱冢” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 162,577評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵指巡,是天一觀的道長(zhǎng)淑履。 經(jīng)常有香客問(wèn)我,道長(zhǎng)藻雪,這世上最難降的妖魔是什么秘噪? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,176評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮勉耀,結(jié)果婚禮上指煎,老公的妹妹穿的比我還像新娘蹋偏。我一直安慰自己,他們只是感情好至壤,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,189評(píng)論 6 388
  • 文/花漫 我一把揭開(kāi)白布威始。 她就那樣靜靜地躺著,像睡著了一般像街。 火紅的嫁衣襯著肌膚如雪黎棠。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,155評(píng)論 1 299
  • 那天宅广,我揣著相機(jī)與錄音葫掉,去河邊找鬼。 笑死跟狱,一個(gè)胖子當(dāng)著我的面吹牛俭厚,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播驶臊,決...
    沈念sama閱讀 40,041評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼挪挤,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了关翎?” 一聲冷哼從身側(cè)響起扛门,我...
    開(kāi)封第一講書(shū)人閱讀 38,903評(píng)論 0 274
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎纵寝,沒(méi)想到半個(gè)月后论寨,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,319評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡爽茴,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,539評(píng)論 2 332
  • 正文 我和宋清朗相戀三年葬凳,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片室奏。...
    茶點(diǎn)故事閱讀 39,703評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡火焰,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出胧沫,到底是詐尸還是另有隱情昌简,我是刑警寧澤,帶...
    沈念sama閱讀 35,417評(píng)論 5 343
  • 正文 年R本政府宣布绒怨,位于F島的核電站纯赎,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏南蹂。R本人自食惡果不足惜址否,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,013評(píng)論 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧佑附,春花似錦、人聲如沸仗考。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 31,664評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)秃嗜。三九已至权均,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間锅锨,已是汗流浹背叽赊。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 32,818評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留必搞,地道東北人必指。 一個(gè)月前我還...
    沈念sama閱讀 47,711評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像恕洲,于是被迫代替她去往敵國(guó)和親塔橡。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,601評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容