




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、2022/7/18電氣與信息工程學(xué)院計算機系制造Lesson 11 數(shù)據(jù)的組織構(gòu)造2022/7/18電氣與信息工程學(xué)院計算機系制造學(xué)習(xí)目的:31掌握二維數(shù)組的運用2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2復(fù)習(xí)字符串用雙引號括起來的一串字符“1234“Tom“C Lanuage Program2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2字符數(shù)組:數(shù)組元素的類型為字符hello02022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2字符數(shù)組的定義char ch10; 2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2字符數(shù)組的初始化(1) 字符數(shù)組
2、的初始化的根本方法char ch5=h,e,l,l,o;(2) 省略長度闡明如: char ch =h,e,l,l,o;(3) 運用字符串初始化字符數(shù)組: char ch =“abcde; char ch =“abcde;abcde02022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2字符串在計算機中表示 char ch=“123412340字符數(shù)組字符串終了標(biāo)志數(shù)組ch2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2字符串的輸入輸出 1、gets(str); 2、scanf(“%s, str);gets( ) 函數(shù)以換行符或文件終了符EOF作為輸入的終了標(biāo)志,因此在輸入的
3、字符串中允許包含空格和制表符;scanf( ) 函數(shù)那么以空格、制表符、換行符和文件終了符EOF作為輸入的終了標(biāo)志,因此,在輸入的字符串中不允許包含這些字符。假設(shè)包含了它們,將作為字符串輸入的終了標(biāo)志處置。 char str100;2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2字符串的輸出 1、puts(str); 2、printf(%s, str);puts將字符串的內(nèi)容顯示到規(guī)范輸出設(shè)備屏幕上,并換行。 2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2字符串的輸出 1、puts(str); 2、printf(%s, str);puts將字符串的內(nèi)容顯示到規(guī)范輸出設(shè)
4、備屏幕上,并換行。 2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2 運轉(zhuǎn)如下程序第一次:輸入face,察看結(jié)果第二次:輸入123 abc,察看結(jié)果lesson11_11_1.clesson11_11_2.c#include #include int main( ) char num1100; gets(num1); puts(num1); return 0;#include #include int main( ) char num1100; scanf(%s,num1); printf(%s,num1); return 0;2022/7/18電氣與信息工程學(xué)院計算機系制造3字符
5、數(shù)組2練習(xí)1:從鍵盤輸入一個單詞,然后將其反著輸出,例如輸入face輸出:ecafface0數(shù)組ch2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2練習(xí)2:從鍵盤輸入一個字符串,將每個字符往前挪動一個位置,最后一個移到第一個。例如輸入1234輸出234112340數(shù)組ch23410lesson11_ktlx2.c2022/7/18電氣與信息工程學(xué)院計算機系制造gets(char* str);從鍵盤輸入字符串puts(char *str);將字符串在屏幕上輸出atof( char *str);將字符串轉(zhuǎn)換成小數(shù)atoi(char *str);將字符串轉(zhuǎn)換成int整數(shù)atol(char
6、 *str);將字符串轉(zhuǎn)換成long整數(shù)itoa(int num, char *str, int radix);將num轉(zhuǎn)換成radix進(jìn)制的字符串ltoa(long num, char* str, radix); 將num轉(zhuǎn)換成radix進(jìn)制的字符串strlwr(char *str);將str轉(zhuǎn)換成小寫strupr(char *str);將str轉(zhuǎn)換成大寫strlen(char *str);求str的長度strcmp(char *str1,char * str2);比較str1和str2的大小,如果str1str2,返回正數(shù)strcpy(char *str1,char * str2);將字符
7、串str2拷貝到str1中1strcat(char *str1, char *str2);將字符串str2連接到str1后2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2字符串轉(zhuǎn)換成數(shù)值類型 atof(str); atoi(str); atol(str);其中str是一個字符串。atof() 的前往類型是double,它可以將字符串str轉(zhuǎn)換成一個雙精度數(shù)值;atoi() 的前往類型是int,它可以將字符串str轉(zhuǎn)換成普通整型;atol() 的前往類型是long,它可以將字符串str轉(zhuǎn)換生長整型long。 2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2例1:將用戶以字
8、符串方式輸入的兩個實型數(shù)值轉(zhuǎn)換成double類型,并顯示輸出這兩個實型數(shù)值及它們相加的結(jié)果。 2022/7/18電氣與信息工程學(xué)院計算機系制造#include #include int main( ) char num120, num220; double d1, d2, sum; printf(nEnter the first number:); gets(num1); /* 輸入第1個用字符串表示的實型數(shù)值 */ printf(Enter ths second number:); gets(num2); /* 輸入第2個用字符串表示的實型數(shù)值 */ d1 = atof(num1); /*
9、將第1個字符串轉(zhuǎn)換成double類型 */ d2 = atof(num2); /* 將第2個字符串轉(zhuǎn)換成double類型 */ sum = d1+d2; /* 將2個double類型數(shù)值相加 */ printf(n%s+%s=%.3lf, num1, num2, sum); /* 顯示結(jié)果 */ return 0;lesson11_01.c2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2數(shù)值類型轉(zhuǎn)換成字符串 itoa(num, str, radix); ltoa(num, str, radix); 其中str用于存放結(jié)果的字符串,radix是用戶指定的進(jìn)制數(shù),它的取值必需介于236
10、之間。在itoa( ) 函數(shù)中的num是一個int類型的數(shù)值;在ltoa( ) 函數(shù)中的num是一個long類型的數(shù)值。 2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2例2:將用戶輸入的長整型long類型數(shù)值轉(zhuǎn)換成以字符串方式表示的十六進(jìn)制、八進(jìn)制和二進(jìn)制數(shù)值,并顯示輸出。 2022/7/18電氣與信息工程學(xué)院計算機系制造#include #include int main( ) char str33; long value; printf(nEnter a long number:); scanf(%ld, &value); /*輸入一個long類型的數(shù)值*/ ltoa(val
11、ue, str, 16); /*轉(zhuǎn)換成用字符串方式表示的十六進(jìn)制數(shù)值*/ printf(nThe hexadecimal of %ld is %s, value, str); ltoa(value, str, 8); /*轉(zhuǎn)換成用字符串方式表示的八進(jìn)制數(shù)值*/ printf(nThe octadecimal of %ld is %s, value, str); ltoa(value, str, 2); /*轉(zhuǎn)換成用字符串方式表示的二進(jìn)制數(shù)值*/ printf(nThe binary of %ld is %s, value,str); return 0;lesson11_02.c2022/7/1
12、8電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2大小寫轉(zhuǎn)換 strlwr(str); strupr(str);str是一個字符串。規(guī)范函數(shù)strlwr( ) 可以將字符串str中出現(xiàn)的一切大寫字母轉(zhuǎn)換成小寫字母;規(guī)范函數(shù)strupr( ) 可以將字符串str中出現(xiàn)的一切小寫字母轉(zhuǎn)換成大寫字母。 2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2計算字符串長度 strlen(str);這個函數(shù)的功能是前往字符串中所包含的字符個數(shù),即字符串長度。字符串終了標(biāo)志0不計算在內(nèi)。 字符串比較 strcmp(str1, str2);兩個字符串進(jìn)展比較時將根據(jù)每個字符對應(yīng)的ASCII編碼決議其大小。
13、2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2例4:假設(shè)用戶的密碼是“administrators,下面這個程序?qū)⒂糜跈z測用戶輸入的密碼能否正確。假設(shè)不正確,給出相應(yīng)的提示信息,并懇求用戶重新輸入。 分析:循環(huán)的從鍵盤輸入一個字符串,用來和administrators比較,假設(shè)相等終了循環(huán)2022/7/18電氣與信息工程學(xué)院計算機系制造#include #include int main( ) char password20; /* 存放用戶輸入的密碼 */ printf(nEnter password: ); gets(password); /* 輸入密碼 */ /* 檢測用戶
14、輸入的密碼,假設(shè)不正確,給出提示,并懇求重新輸入 */ while (strcmp(password, administrators) != 0) printf(nInvalid passwordnn); printf(Enter password, again: ); gets(password); printf(OK); /*輸入正確,顯示OK*/ return 0;lesson11_04.c2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2字符串拷貝 strcpy(str1, str2);其中str2是將要被拷貝的字符串,str1是用于存放拷貝結(jié)果的存儲區(qū)域。 字符串銜接 st
15、rcat(str1, str2);其中str1和str2是兩個字符串。這個函數(shù)的功能是:將str2銜接在str1之后,并在終了處添加一個字符串終了符02022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組2例5:根據(jù)用戶的選擇輸出相應(yīng)的字符串。分析:1、定義好需求輸出的字符串2、從鍵盤輸入一個數(shù)3、判別輸入的數(shù),根據(jù)要求銜接成一個新的字符串后輸出2022/7/18電氣與信息工程學(xué)院計算機系制造#include #include int main( ) char str180 = This is a ; char str2 = program.; char str3 = Java; char
16、 str4 = Pascal; char str5 = C; char str6 = C+; int choice; printf(n = MENU =n); /* 菜單 */ printf(n Java . . 1); printf(n Pascal . 2); printf(n C . . 3); printf(n C+ . 4); printf(n choice:); scanf(%d, &choice); /* 用戶做出選擇 */lesson11_15.c2022/7/18電氣與信息工程學(xué)院計算機系制造switch (choice) /* 根據(jù)用戶的選擇拼接字符串 */ case 1:
17、strcat(str1, str3); strcat(str1, str2); break; case 2:strcat(str1, str4); strcat(str1, str2); break; case 3:strcat(str1, str5); strcat(str1, str2); break; case 4:strcat(str1, str6); strcat(str1, str2); break; default:strcpy(str1, Error); break; printf(n%s, str1); /* 顯示字符串 */ return 0;2022/7/18電氣與信息工程學(xué)院計算機系制造3字符數(shù)組 課堂練習(xí)2從鍵盤輸入一個字符串,將其按如下規(guī)那么轉(zhuǎn)換后輸出A(a)-B(b)B(b)-C(c).Y(y)-Z(z)Z(z)-A(a)2022/7/18電氣與信息工程學(xué)院計算機系制造3課堂練習(xí)6 例題:請輸入10個學(xué)生的姓名和成果,輸出高于平均分的學(xué)生姓名和
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年網(wǎng)絡(luò)管理員考試復(fù)習(xí)全書試題及答案
- 2025年業(yè)務(wù)增長與市場策略試題及答案
- 尋找VB考試試題與答案的途徑
- 2025年計算機二級VB試題及答案綜述
- 高考作文探索人生意義試題及答案
- 高效復(fù)習(xí)數(shù)學(xué)試題及答案
- 高考數(shù)學(xué)突破自我試題及答案
- 闡釋內(nèi)心世界的2023年高考作文試題及答案
- 2025合法的個體技術(shù)授權(quán)合同及注意事項(合同范本)
- 2025設(shè)備轉(zhuǎn)讓協(xié)議合同
- 股權(quán)終止合作協(xié)議書
- 入團(tuán)考試試題及答案大學(xué)
- 2025園林景觀設(shè)計合同范本
- 2025年北京高考語文三輪復(fù)習(xí)之微寫作
- 阿片類藥物不良反應(yīng)和處置
- 貴港離婚協(xié)議書模板
- 2025年公安機關(guān)人民警察基本級執(zhí)法資格備考題庫
- 2025保密在線教育培訓(xùn)題庫(含答案)
- 2.1 充分發(fā)揮市場在資源配置中的決定性作用 課件-高中政治統(tǒng)編版必修二經(jīng)濟(jì)與社會
- 2024年河南鄭州航空港投資集團(tuán)招聘真題
- 2024年寶應(yīng)縣公安局招聘警務(wù)輔助人員真題
評論
0/150
提交評論