編程-計(jì)概b cw30279字符串是一個(gè)一維數(shù)組變量_第1頁
編程-計(jì)概b cw30279字符串是一個(gè)一維數(shù)組變量_第2頁
編程-計(jì)概b cw30279字符串是一個(gè)一維數(shù)組變量_第3頁
編程-計(jì)概b cw30279字符串是一個(gè)一維數(shù)組變量_第4頁
編程-計(jì)概b cw30279字符串是一個(gè)一維數(shù)組變量_第5頁
已閱讀5頁,還剩44頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

WangHoufeng內(nèi)習(xí)題2013-11- 當(dāng)數(shù)組的元素類型為char時(shí),稱為字符數(shù)chars[100];s是一個(gè)一維字符數(shù)組變素,過給定長度,不夠時(shí),后面自動(dòng)補(bǔ)‘\0’–引號(hào)初始化,引號(hào)內(nèi)的元素小于定義的長度,‘\0’或Char2013-1-

‘\Houfe,PK 用字符串常用字符串常 逐個(gè)字符賦char

2013-11- 可以

二維字符數(shù)組初始charApAppleOrangeGrapePearPeach2013-11- 二維字符數(shù)組初始chardiamond[][5{'*','.','.','.','*'},{'.','*','.','*'},{'.',....*.*.**...*.*.*..* 2013-11- 字符串在計(jì)算機(jī)內(nèi)部的表‘\0’(切記例char 共5個(gè)字符,因此,字符串長度為5,但在內(nèi)存占6hello0內(nèi)存存放字符ASCII2013-11- 例輸出IamaboIamaboy charc[10]={'I','','a','m','','a',' int printf(“%s\n”,c);//()無結(jié)束符 用“%s”輸出遇‘\0’結(jié) IamaIama2013-11- 例:輸出什么{{}hello2013-11- 例字符串輸入舉#include<stdio.h>{char

輸入:Howare輸入:Howare}

scanf中%s輸入時(shí),遇格或回車結(jié)2013-11-

字符串整體作為一個(gè)單元,變量即為地址HowareyoHowareyou? 若準(zhǔn)備將字符串“Thisisastring.”記錄AA((C)for(k=0;k<17;k++)注注意幾種輸入字符串的方2013-11- 常用的字符串處理函包含在頭文件#include<string.h格式:strcpy(字符數(shù)組1,字符串char

strcpy(str1,“ 2013-11- 格式:strcat(字符數(shù)組1,字符數(shù)組2013-11- strcpy與strcat#include<string.h>#include<stdio.h>voidmain(){charcharblank[]="",p[]=“Programming",DoubleC[]="C++";strcat(destination,blank);strcat(destination,p);printf("%s\n",destination);C++C++2013-11- 格式:strcmp(字符串1,字符串b若字符串1字符串2c若字符串1字符串2零說明:字符串比較不能用“==”,必須用strcmp字符串長度函數(shù)例對(duì)于以下字符串,strlen(s)的值為多少2s[3s[2013-11-串輸入/出的兩個(gè)字符串輸出函數(shù)2013-11- 例#includestdio.h>main() charstring[80];printf(“Inputastring:”);}輸入:輸入:Howare輸出:Howareyou2013-11- #include<string.h>#include<stdio.h> charstr1[]= o!",str2[]=”Howareint if(strcmp(str1, elseif(strcmp(str1,str2)<0) HowHoware2013-11- 例輸入一行字符,統(tǒng)計(jì)其中有多少個(gè)單當(dāng)真word==0當(dāng)真word==0輸出假c=空真 輸入一字符串給 charinti,num=0,word=0;charc;if(c=='')elseif(word= word=1; printf("Thereare%dwordsinthe}2013-11- 內(nèi)習(xí)題2013-11- 設(shè)計(jì)程序的基本思如何表示數(shù)據(jù)???數(shù)據(jù)加工的步數(shù)據(jù)變化:輸入數(shù)據(jù)中間數(shù)據(jù)1中間數(shù)據(jù)2中間數(shù)據(jù)n=>輸出數(shù)據(jù)畫出流程圖(或程序偽碼),用C2013-11- 需要的基本素問題分析與分解的能問題轉(zhuǎn)化為機(jī)械步驟的能尤其重要,輸入/出語句,賦值語句,控制2013-11- 例子-兩個(gè)正整數(shù)的最大公約數(shù)與最小公倍表示兩個(gè)正整數(shù)的變量(不妨設(shè)為表示最大公約數(shù)的變量(不妨設(shè)為表示最小公倍數(shù)的變量(不妨設(shè)為2013-11- 定理:設(shè)有不全為0的正整數(shù)m、n和r,mntr(0≤r<nt是整數(shù)那么,m與n的最大公因子等于n和r證明:設(shè)xm與n的最大公因子yn與r的最大公x是m的因子,因此x能整除ntr,即,x是n的因子,x也是r的因子,而y是n和r的最大公因子,因此同理,y是r的因子,同時(shí),y也是n的因子,因,y一定是m的因子,即,y是m和n的因子,于是綜合1、最大公約數(shù)/最小公倍假設(shè)mnp已經(jīng)計(jì)算出來,那么,最小公倍數(shù)q的計(jì)算公式為:qm*n/p;于是,關(guān)鍵問題是計(jì)算p;計(jì)算p的最基本步驟(輾轉(zhuǎn)相除法–假設(shè):m24?Step-1:p=m%n=24%15?Step-2由于p!=0;則,mnn?重復(fù)運(yùn)算:p15%93再使m=9?重復(fù)運(yùn)算:p=9%3=0余數(shù)0,停止3便為最大公約數(shù)2013-11- 程序設(shè)計(jì)要計(jì)算余數(shù)被除除數(shù)判斷余數(shù)是否為2013-11- 程{int流程if(m<n){temp=m;m=n;流程 }while}2013-11- 例子-正整數(shù)的質(zhì)因數(shù)分解(只輸出質(zhì)因數(shù)的積–待分解的正整數(shù)(m60當(dāng)前分解得到的質(zhì)因數(shù)(不妨用n表示2013-11- 例子-2(續(xù)此,可以從n=2開始依次試探;如果m小于n,則不能再進(jìn)行分解,停止如果m%n=0))n是質(zhì)因數(shù),可以輸出,每當(dāng)質(zhì)因數(shù)分解出去后,m的值必須縮重復(fù)2、3、2013-11- m%n0n=2是質(zhì)因 修改 共 m%n==0;(n=2)是質(zhì)因數(shù),輸出2共 修改 m%n!=0;(n=2)目前不是質(zhì)因數(shù) m%n==0;(n=3)是質(zhì)因數(shù),輸出3 修改 提 m%n!=0;(n=3)不是質(zhì)因數(shù)提 m%n!=0;(n=4)不是質(zhì)因 m%n==0;(n=5)是質(zhì)因數(shù),輸出 修改 mn,結(jié)

2013-11- 輸出n輸入輸出n2013-11- 如何控制程#include如何控制程{intm,n=2;while(m>n){while(m%{}

if(m>1)if的含義if的含義putchar('}2013-11- 例子-判斷某個(gè)正整數(shù)m是否是回文滿足回文數(shù)的條件:正序=逆方法m(m2013-11- 例子說明計(jì)算過程(設(shè)km10,k=5;n=n*10k0*10+5m=m/10,得km10,k=4;n=n*10m=m/10,得km10,得k=3;n=n*10m=m/10,得km10,k=2;n=n*10m=m/10,得km10,k=1;n=n*10m=m/10,得m=0(結(jié)束條件你能找出公共操作部分2013-11- 程求m的逆{求m的逆 } printf("%disnotapalindrome}2013-11- 回文串如何判ababcdeedcba方法:對(duì)稱點(diǎn)mnm=0;n=strlen(s)-–(m<n)?&&(s[m]==s[n])m++;

else2013-11- 例子-500個(gè)英文單待,如break與broke,high與highest均2013-11- 分?jǐn)?shù)據(jù)表chartext[500][11];//存放讀入的不同 的單詞charint可以不設(shè)置數(shù)據(jù)(直接針對(duì)詞計(jì)算,用什么函數(shù)2013-11- 分析(續(xù)如果還有單詞,則讀入1個(gè)單詞到word檢查text中是否已經(jīng)放入word(串比較如果沒有,則插入到text第一個(gè)空位置(相應(yīng)的count和長度(用strlen計(jì)算)2013-11- 進(jìn)制轉(zhuǎn)換:用數(shù) 轉(zhuǎn)換結(jié)2013-11- 十進(jìn)制整數(shù)轉(zhuǎn)換為二進(jìn)制整被除 除 112013-11- 被除 除 11112013-11- 商余數(shù)2121250010112013-11- 被除 除 1010112013-11- 商余數(shù)212125052212210010010112013-11- 商余數(shù)212125052212210 101010112013-11- 商余數(shù)21212505221221012010101010112013-11- 十進(jìn)制整數(shù)轉(zhuǎn)換為二進(jìn)制整intinti,b[32]=long/*十進(jìn)制數(shù)n轉(zhuǎn)換為二進(jìn)制數(shù)輸出i=while(n!=0)b[

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論