freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

c語言程序設(shè)計一體化案例教程下ppt-文庫吧資料

2025-04-17 22:12本頁面
  

【正文】 t(2)。a=malloc(n*sizeof(int))。scanf(%d,amp。}}案例 輸入并輸出全班學(xué)生的成績 ( 續(xù) 2)int main(void){ int i,n,*a。j++)if(*(p+max)*(p+j))max=j。i++){ for(max=i,j=i+1。for(i=0。 malloc 和 free 函數(shù)的原型聲明在 中。…free(a)。in。 exit(2)。 /* 輸入班級實際人數(shù) *//* 在堆內(nèi)存中申請 n 個整型元素的一維數(shù)組 */a=malloc(n*sizeof(int))?!璼canf(%d,amp?!蛔悖?①若 nMAX , 則 a 數(shù)組的內(nèi)存有閑置;②若 nMAX ,程序無法運行,盡管并非沒有足夠內(nèi)存可用。in。 exit(2)。n)。 班級人數(shù)事先不知,如何定義數(shù)組?? 預(yù)估班級人數(shù)的最大值 ( 如 100) ,用符號常量 MAX 表示: define MAX 100 /* 預(yù)估班級人數(shù)的最大值 */…int n, a[MAX] 。}案例 通用算法函數(shù)設(shè)計 ( 續(xù) 2)? 程序運行結(jié)果:第一個積分值: 第二個積分值: 堆內(nèi)存的申請、使用和釋放案例 輸入并輸出全班學(xué)生的成績? 問題描述: 編寫程序,輸入并降序輸出全班學(xué)生的 C 語言成績。printf( 第二個積分值: % g \ n,integral( f2 ,1,3,1000))。return y*h。in。 int i。 }float f2(float x){ return (x+x*x)/(1+sin(x)+x*x)。 /* 返回值:積分值 */? 可變數(shù)據(jù)和可變函數(shù)參數(shù)化,使 integral 更通用。? 可變函數(shù)參數(shù)化 ( 用函數(shù)指針 ) : 被積函數(shù)。? 函數(shù)指針主要用作函數(shù)的參數(shù),用于編寫通用函數(shù)。/* 用函數(shù)指針調(diào)用函數(shù) */return 0。printf(2 + 3 =%g \ n, p(2,3) )。 /* 函數(shù)指針定義 */p=add。includefloat add(float x,float y){ return x+y。? 賦值后,可用它調(diào)用函數(shù)。? 函數(shù)指針變量使用說明:? 只能指向與其返回值類型和參數(shù)類型相同的函數(shù)。? 函數(shù)指針變量的定義格式 :類型名 (* 變量名 )( 參數(shù)表 )。案例 計算任意個整數(shù)的和 ( 續(xù) 2)? 程序運行結(jié)果:1+2+3=6 函數(shù)指針函數(shù)指針的定義和使用? 函數(shù)的指針: 即該函數(shù)的名。 并設(shè) 位于 C: \ T \ debug 目錄下。? 在 DOS 命令行環(huán)境中。 步驟:? 選 Project|Settings , 打開 Project Settings 對話框 ;? 選 Debug 選項卡,在 Program arguments: 編輯框中,輸入 1 2 3( 注意:此時不要包含命令名) 。案例 計算任意個整數(shù)的和 ( 續(xù) 1)? 程序調(diào)試與運行:? 在 VC++ IDE 中。return 0。i++)printf(+%s,argv[i])。for(printf(%s,argv[1]),i=2。iargc。return 1。? 程序?qū)崿F(xiàn):includeincludeint main(int argc,char*argv[]){ int i,sum。? 問題描述: 使用命令行參數(shù)計算任意個整數(shù)的和。? 在 DOS 環(huán)境下,輸入命令:C: \ T echo Apple Orange Green Cabbage ↙案例 理解 main 函數(shù)的參數(shù) ( 續(xù) 2)? 程序運行結(jié)果:C: \ T \ AppleOrangeGreen Cabbage? 操作系統(tǒng)獲得上述命令后,以空格為分隔標(biāo)志,統(tǒng)計出字符串的個數(shù)為4 傳遞給 main 的形參argc , 每個字符串的指針傳給指針數(shù)組 argv ,如右圖所示。return 0。iargc。 includeint main(int argc,char *argv[]){ int i。? C 語言標(biāo)準(zhǔn)規(guī)定, main 函數(shù)的返回值類型只能為整型,但某些編譯系統(tǒng) ( 如 Visual C++) 還允許為 void 。? 第一個參數(shù)保存實際命令行所帶的參數(shù)個數(shù)?;騣nt main(int argc,char **argv)。? 問題描述: 顯示命令行參數(shù),理解命令行 參數(shù)的數(shù)據(jù)結(jié)構(gòu)。如在 DOS 下:其作用是列出并顯示 A 盤文件目錄。若參數(shù)本身包含空格,則該參數(shù)需用雙引號括起來。? 命令行參數(shù): 命令后所帶的參數(shù),由字符 串組成,參數(shù)之用空格分隔。} 帶參數(shù)的 main 函數(shù)? 命令行參數(shù)簡介:? 命令行參數(shù)的作用: 增加程序的靈活性、適應(yīng)性。printf(%s,%s \ n,a,b)。a,amp。 }int main(void){ char *a= 張珊 ,* b= 李是 。*x=*y。 二級指針 ( 續(xù) 2)? 下列程序可快速驗證 Swap 函數(shù),下圖可直觀理解 Swap 函數(shù)的交換過程。sp[i])。 }再將 Sort 函數(shù)中交換兩個字符型指針的任務(wù)改由以下語句完成:Swap(amp。 *x = *y 。 回顧案例8 . 5 的程序可以發(fā)現(xiàn), Sort 函數(shù)中交換兩個字符型指針的任務(wù)由以下語句完成:p=sp[k],sp[k]=sp[i],sp[i]=p。? 若希望通過二級指針變量 q 訪問變量 x , 則可對 q 指針做兩次取變量運算,即 ** q 訪問的是普通變量 x 。? 二級指針變量 q 存放指針變量 p 的指針,如下圖所示。x, **q=amp。變量名前的兩個 “ * ” 表示定義的是二級指針變量。}案例 將一維數(shù)組轉(zhuǎn)換成二維數(shù)組 ( 續(xù) 2) 二級指針? 若要保存指針變量的指針值,則要使用二級指針變量。i++) printf(%s \ n,sp[i])。 /* 調(diào)用案例 定義的 Sort 函數(shù) */for(i=0。/*sp[n] 指向第 n 個字符串 */p1=p2,p2++。 \ 039。p1=p2=sp[0]=s,n=1。char*sp[10],*p1,*p2。案例 將一維數(shù)組轉(zhuǎn)換成二維數(shù)組 ( 續(xù) 1)? 使用上述思路,下列程序片段通過調(diào)用案例 定義的 Sort 函同樣可以完成字符串排序。 \ 0 39。 。 ,最后一個字符串的結(jié)束符后再由系統(tǒng)自動添加一個 39。圖中,每個字符串后 應(yīng)自添加一個 39。 對于案例 來說:? 用二維字符數(shù)組的一行存放一個字符串時,每行末 尾的存閑置,無法利用。 此后,通過指針數(shù)組 p 訪問 a 數(shù)組元素就像訪問二維數(shù)組一樣,例如,通過 p[0][0] 訪問 a[0] , 如下圖所示。則指針數(shù)組 p 將一維數(shù)組 a 分成三段,每段 3 個整型元素。i3。? 思路分析: 設(shè)有以下語句:int a[9], *p[3] ,i,j。return 0。j3。i3。這樣,二維數(shù)組元素 a[i][j] ( 0 ≤ i < 3 , 0 ≤ j < 3) 的訪問形式還可表示為:① *( p[i]+j)② *(*(p+i)+j)③ (*(p+i))[j]④ p[i][j]案例 通過指針數(shù)組訪問二維數(shù)組? 程序?qū)崿F(xiàn): includeint main(void){ int i,j, *p[3] ,a[3][3]={{1,2,3},{4,5,6},{7,8,9}}。i++) p[i]=a[i] 。for(i=0。? 思路分析: 先用二維數(shù)組的列指針初 始化指針數(shù)組元素,再用指針數(shù)組訪問二維數(shù)組。? 排序后,存 s 中 n 個已排序的字符串的下標(biāo)。return 0。in。Sort(s,sp,n)。}}int main(void){ char s[][100]={Follow me,BASIC,Great wall,Department,Computer design}。j++)if(strcmp(s[sp[k]],s[sp[j]])0) k=j。i++){ for(k=i,j=i+1。for(i=0。}案例 字符串排序 ( 續(xù) 3)? 程序運行結(jié)果:BASICComputer designDepartmentFollow meGreat wall? 問題討論: 也可用整型數(shù)組記錄待排序字符串的字符數(shù)組的下標(biāo),在不換字符串的情況下,將字符串排序后輸出。i++)printf(%s \ n, sp[i] )。for(i=0。n=sizeof(s)/sizeof(s[0])。char*sp[]={s[0],s[1],s[2],s[3],s[4]}。}}案例 字符串排序 ( 續(xù) 2)? 排序前,分別指向 n 個待排序的字符串;排序后,分 別指向 n 個已排序的字符串。j++)if(strcmp(sp[k],sp[j])0)k=j。i++)/* 選擇法排序 */{ for(k=i,j=i+1。for(i=0。? 程序?qū)崿F(xiàn):includeincludevoid Sort(char*sp[],int n){ char*p。案例 字符串排序 ( 續(xù) 1)依次直到在 sp[4] 指針?biāo)阜秶鸀橹?。首先?sp[0] ~ sp[4] 指針?biāo)阜秶业阶钚〉淖址?,并使該指針值與 sp[0] 中的指針交換,使sp[0] 指向最小的字符串。? 指針數(shù)組 sp 的每個元素指向一個字符串。再用指針 數(shù)組p 輸出所指數(shù)組 a 中各元素的值。i++)printf(%d \ t,*p[i])。for(i=0。指針數(shù)組中的每個元素均為指針。? 知識聚焦:? 指針數(shù)組的定義格式:[ 存儲種類 ] 類型 * 數(shù)組名 [ 整型常量表達式 ]。? 用字符串的值初始化 p 。? 數(shù)組名是常量指針,不可變;而指針變量可變。 /* 警告: p 指向不定,潛存危險 */p=s2 。scanf(%s,s1)。字符指針變量可接受任何字符指針。字符數(shù)組不能直接 賦值。char*p=You are a student!。? 定義方式不同:char*p,s[100]。? 不如用指針復(fù)制字符來得高效和簡便。mystrcpy(s2,s1)。 }但這樣不便于調(diào)用。return dest。 p[i]=src[i] 。 int i。 為止。? 程序?qū)崿F(xiàn):? 用指針逐個字符復(fù)制,直到復(fù)制到 39。 \ 0 39。? 問題分析:? 字符串存于字符數(shù)組,亦可用指針處理。return 0。mystrcpy(s3,s1) 。return dest。案例 用行指針訪問二維數(shù)組元素 ( 續(xù) 2)includechar*mystrcpy(char*dest,char*src){ char *p=dest。i3。}(* p)[ 0] (*amp。j++)printf(%d,%d,%d \ n,*(*(p+i)+j) , *(p[i]+j) , (*(p+i))[j] , p[i][j] )。i++)for(j=0。for(p=a,i=0。printf(%d,%d,%d \ n, (*p)[0] , (*p)[1] , (*p)[2]) 。i++){ p=amp。for(i=0。案例 用行指針訪問二維數(shù)組元素 ( 續(xù) 1)? 結(jié)論驗證: includeint main(void){ int a[3][3]={{1,2,3},{4,5,6},{7,8,9}},i,j,(*p)[3]。則 a[i][j] (0 ≤ i < 3 , 0 ≤ j < 4) 亦可用行指針 p 訪問:⑴ *( p[i]+j)⑵ *(*(p+i)+j)⑶ (*(p+i))[j]⑷ p[i][j]? 也可說明指向二維、三維數(shù)組的指針變量。? 因 p 是行指針,故 * p 、 *p+1 、 *p+2 、 *p+3 依次為 p 所指一維數(shù)組的 4 個元素的指針,對 p 所指一維數(shù)組的 4 個元素的訪問形式為: *(* p) 、 *(*p+1) 、 *(*p+2) 、 *(*p+3) , 再等價寫成一維數(shù)組元素形式: (* p)[0] 、(*p)[1] 、 (*p)[2] 、(*p)[3] 。? (* p) 指明 p 是指針變量,與 [4] 結(jié)合,表示 p 指向一個含有 4個整型元素的一維數(shù)組。? 指向一維數(shù)組的指針變量,即二維數(shù)組的行指針變量。}案例 用指針訪問二維數(shù)組元素 ( 續(xù) 5)? 程序運行結(jié)果:用指針輸出數(shù)組的全部元素:1 2 34 5 67 8 9用指針輸出數(shù)組的各個元素:1 2 34 5 67 8 9案例 用指針訪問二維數(shù)組元素 ( 續(xù) 6)用四種不同方法輸出數(shù)組的元素:1 1 1 12 2 2 23 3 3 34 4 4 45 5 5 56 6
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1