![高級(jí)語言c程序設(shè)計(jì)課件_第1頁](http://file4.renrendoc.com/view/88ce2abbede75150b1789a3e1a7de079/88ce2abbede75150b1789a3e1a7de0791.gif)
![高級(jí)語言c程序設(shè)計(jì)課件_第2頁](http://file4.renrendoc.com/view/88ce2abbede75150b1789a3e1a7de079/88ce2abbede75150b1789a3e1a7de0792.gif)
![高級(jí)語言c程序設(shè)計(jì)課件_第3頁](http://file4.renrendoc.com/view/88ce2abbede75150b1789a3e1a7de079/88ce2abbede75150b1789a3e1a7de0793.gif)
![高級(jí)語言c程序設(shè)計(jì)課件_第4頁](http://file4.renrendoc.com/view/88ce2abbede75150b1789a3e1a7de079/88ce2abbede75150b1789a3e1a7de0794.gif)
![高級(jí)語言c程序設(shè)計(jì)課件_第5頁](http://file4.renrendoc.com/view/88ce2abbede75150b1789a3e1a7de079/88ce2abbede75150b1789a3e1a7de0795.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、高級(jí)語言c程序設(shè)計(jì)課件高級(jí)語言c程序設(shè)計(jì)課件2/313.什么是指針?地址和指針有什么樣的關(guān)系?P139*=;初值:可缺省??梢允窃擃愋偷哪匙兞康牡刂?牛牛文庫文檔分享4/313.什么是指針?地址和指針有什么樣的關(guān)系?P1393/314.指針的值和類型是怎樣規(guī)定的?它有哪些運(yùn) 算?P139-140*=;類型名-基本類型名及派生類型名,用戶定義的類、枚 舉類型、結(jié)構(gòu)類型、聯(lián)合類型名初值可缺省。可以是該類型的某變量的地址運(yùn)算:取地址運(yùn)算&和取內(nèi)容運(yùn)算*; 數(shù)組指針的算術(shù)運(yùn)算; 指針的關(guān)系運(yùn)算; 指針的賦值運(yùn)算。 牛牛文庫文檔分享5/314.指針的值和類型是怎樣規(guī)定的?它有哪些運(yùn)4/315.用指針可有
2、幾種表示數(shù)組元素的方法,試簡 述3種方法的使用方法。P142指向數(shù)組元素的指針指向數(shù)組的指針指針數(shù)組 牛牛文庫文檔分享6/315.用指針可有幾種表示數(shù)組元素的方法,試簡指向數(shù)組元5/316.簡述指針和數(shù)組的關(guān)系。P142 牛牛文庫文檔分享7/316.簡述指針和數(shù)組的關(guān)系。P142www.niuwk6/317.指針有哪些運(yùn)算?和普通的數(shù)據(jù)類型的運(yùn) 算有什么不同?P139-140運(yùn)算:取地址運(yùn)算&和取內(nèi)容運(yùn)算*; 數(shù)組指針的算術(shù)運(yùn)算; 指針的關(guān)系運(yùn)算; 指針的賦值運(yùn)算。 牛牛文庫文檔分享8/317.指針有哪些運(yùn)算?和普通的數(shù)據(jù)類型的運(yùn)運(yùn)算:取地址7/318.&和*的用法各有幾種?它們的使用方法是
3、什么?P140&:取地址運(yùn)算; *:指針/取內(nèi)容運(yùn)算。 牛牛文庫文檔分享9/318.&和*的用法各有幾種?它們的使用方法是&:取地址8/319.試述函數(shù)指針的用法。在計(jì)算機(jī)上實(shí)現(xiàn) simpson函數(shù)。P147-148 牛牛文庫文檔分享10/319.試述函數(shù)指針的用法。在計(jì)算機(jī)上實(shí)現(xiàn)www.ni9/3110.試述指針在函數(shù)的參數(shù)傳遞中的作用及其 使用方法。P146指針作函數(shù)參數(shù)-函數(shù)的參數(shù)(引用型參數(shù)除外)在調(diào)用過程 中,實(shí)參(表達(dá)式)的值僅在調(diào)用中有意義 的形參,參加函數(shù)體的運(yùn)算。難以實(shí)現(xiàn)相 對(duì)于函數(shù)的外部的“全局”變量作某些處理。 牛牛文庫文檔分享11/3110.試述指針在函數(shù)的參數(shù)傳遞中的
4、作用及其指針作函10/3111.簡述指針和函數(shù)的關(guān)系。P146函數(shù)返回指針-指針型函數(shù):返回值為指針的函數(shù),返回類 型的說明應(yīng)指明指針的對(duì)象類型后加*。函數(shù)指針-函數(shù)的地址也可作指針的值,使函數(shù)作為 參數(shù)指針作函數(shù)參數(shù)-函數(shù)的參數(shù)(引用型參數(shù)除外)在調(diào)用過程 中,實(shí)參(表達(dá)式)的值僅在調(diào)用中有意義 的形參,參加函數(shù)體的運(yùn)算。難以實(shí)現(xiàn)相 對(duì)于函數(shù)的外部的“全局”變量作某些處理。 牛牛文庫文檔分享12/3111.簡述指針和函數(shù)的關(guān)系。P146函數(shù)返回指針-11/3112.怎樣使用動(dòng)態(tài)分配運(yùn)算符對(duì)指針變量進(jìn)行 動(dòng)態(tài)分配?P148new-動(dòng)態(tài)數(shù)據(jù)生成 生成1個(gè)無名的動(dòng)態(tài)變量,返回1個(gè)該類型的指針值,程
5、序中利用指針對(duì)該變量操作;newnewsize /數(shù)組new() 牛牛文庫文檔分享13/3112.怎樣使用動(dòng)態(tài)分配運(yùn)算符對(duì)指針變量進(jìn)行new-12/3112.怎樣使用動(dòng)態(tài)分配運(yùn)算符對(duì)指針變量進(jìn)行 動(dòng)態(tài)分配?P148deletedelete delete-動(dòng)態(tài)數(shù)據(jù)釋放 釋放/撤消new生成的動(dòng)態(tài)變量。 牛牛文庫文檔分享14/3112.怎樣使用動(dòng)態(tài)分配運(yùn)算符對(duì)指針變量進(jìn)行dele13/3113.什么是引用?P150,引用和指針的區(qū)別是 什么?P151&=;指針:對(duì)象變量的地址,表示對(duì)象變量時(shí), 用*;*=;引用變量:已定義的變量的別名,表示對(duì)象 變量時(shí),直接代表。 牛牛文庫文檔分享15/3113.
6、什么是引用?P150,引用和指針的區(qū)別是類14/3114.引用性參數(shù)具有哪些優(yōu)點(diǎn)?P152(1)函數(shù)外的變量以別名形式引入到函數(shù)體內(nèi)參 加運(yùn)算;(2)不必在調(diào)用時(shí)創(chuàng)建與實(shí)參變量/對(duì)象對(duì)應(yīng)的值 參數(shù)變量,當(dāng)實(shí)參變量/對(duì)象占用內(nèi)存較多時(shí), 節(jié)省內(nèi)存;(3) 指針可以改變內(nèi)容,任意賦值,不如引用參 數(shù)安全。 牛牛文庫文檔分享16/3114.引用性參數(shù)具有哪些優(yōu)點(diǎn)?P152(1)函數(shù)外15/3115.簡述指針在C+語言中的重要性和它在程 序安全方面的負(fù)面影響。P138-153 牛牛文庫文檔分享17/3115.簡述指針在C+語言中的重要性和它在程www16/3116.嘗試將6.1節(jié)中選擇排序的程序改造為
7、從 小到大的排列順序。P136#include#include void ssort(float*,int);void main(void)const int n=500;int i;float listn,*pf; /listi=*(list+i)for(i=0;in;i+) listi=rand();pf=&list0; /&list0= list= list首地址ssort(pf,n); /= ssort(list,n) 牛牛文庫文檔分享18/3116.嘗試將6.1節(jié)中選擇排序的程序改造為從#in17/31void swapl(float *a,float *b) float temp;
8、 temp=*a; *a=*b; *b=temp;void ssort(float *a,int m)/對(duì)m個(gè)浮點(diǎn)數(shù)組排序 int i,j,index; float elem; for(i=0;im-1;i+) elem=*(a+i); /*(a+i)=ai index=i; for(j=i+1;jm;j+) if(*(a+j)elem) elem=*(a+j); index=j; swapl(a+i,a+index); 牛牛文庫文檔分享19/31void swapl(float *a,float18/31練習(xí)題解答1.說明下面定義的指針的含義。 float *pf; / pf:未賦初值的fl
9、oat型的指針變量 double *pd23; /pd:2維的double型的指針數(shù)組 int(*pi)2; /指向int型1維數(shù)組的指針 P142 char *ch=“abcde”; /ch:字符串指針=a存儲(chǔ)地址 char *name=“Tom”,”John”,”Lennis”; /name:字符串指針數(shù)組 P145 牛牛文庫文檔分享20/31練習(xí)題解答1.說明下面定義的指針的含義。www.n19/312.讀下面的代碼并完成要求的問題。 已知程序的第1行輸出數(shù)據(jù)是65fdf4,請(qǐng)判斷下 面的4行上出哪些可以確定其輸入值,請(qǐng)寫出哪 些可以判斷的值。P140#include “stdio.h”
10、main()int tmp=10;int *p=&tmp;int *q=p;printf(“%xn”,q); /65fdf4printf(“%dn”,*p); /10printf(“%xn”,&tmp); /65fdf4printf(“%xn”,&p); /65fdf4-4=65fdf0 VC中,int占4Bprintf(“%xn”,p); /65fdf4tmp10p q&tmp 牛牛文庫文檔分享21/312.讀下面的代碼并完成要求的問題。#include20/313.下面語句聲明的是什么?P143 double *ara46; a.雙精度浮點(diǎn)型數(shù)組 b.雙精度浮點(diǎn)型指針數(shù)組 c.非法的聲明
11、牛牛文庫文檔分享22/313.下面語句聲明的是什么?P143www.niuw21/314.設(shè)有以下的語句: int a10=0,1,2,3,4,; int *p=a; 請(qǐng)指出以下的對(duì)a數(shù)組元素的正確引用是哪些? 并指出其值是什么。P1422p-a; /p2; /=*(p+2)=2*(*(a+1); /*(&a3); /3012340apP2a3 牛牛文庫文檔分享23/314.設(shè)有以下的語句:012340aP2a322/315.編制函數(shù)char *FindPlace(char *str,char c);該函 數(shù)返回字符串str中第1次出現(xiàn)字符c的位置以后的 字符串。若沒有c字符則返回1個(gè)空字符串
12、。#include#includechar *FindPlace(char *str,char c);main()char a15=This is a dog.;char charc,*p;int i;cout字符串:;for(i=0;i14;i+)coutai;coutendlcharc; 牛牛文庫文檔分享24/315.編制函數(shù)char *FindPlace(cha23/31coutendl查找到的字符串:;p=FindPlace(a,charc);if(p!=NULL) for(i=0;istrlen(p);i+) cout*(p+i);char *FindPlace(char *str,
13、char c)int i; bool flag; flag=false; for(i=0;istrlen(str);i+) if (*(str+i)=c) flag=true; return (str+i+1); break; if (flag=false) return (NULL); 牛牛文庫文檔分享25/31coutendl查找到的字符串:;ww24/31執(zhí)行結(jié)果 牛牛文庫文檔分享26/31執(zhí)行結(jié)果 牛牛文庫文檔分25/316.完成下面的一段程序,使該程序能夠輸出指定 的2維數(shù)組任意行任意列元素的值。P142main()static int a33=1,2,3,4,5,6,7,8,9;i
14、nt (*p)3,i,j;p=a;scanf(“i=%d”,&i,&j);printf(“a%d,%d=%dn”,i,j,_);請(qǐng)?jiān)诳崭裉幪钊氪a,使得運(yùn)行情況可以達(dá)到如下效果:i=0,j=0 a0,0=1aij/*(p)0 牛牛文庫文檔分享27/316.完成下面的一段程序,使該程序能夠輸出指定mai26/317.已知如下的結(jié)構(gòu): static char *name=“Tom”,”John”,”Follow me” 試編寫1個(gè)程序來輸出這個(gè)數(shù)組中的數(shù)據(jù),輸出效 果如下:Tom John Follow me P145#include #include main()int i;static cha
15、r *name=Tom,John,Follow me;for(i=0;i3;i+) printf(%sn,namei); 牛牛文庫文檔分享28/317.已知如下的結(jié)構(gòu):#include stdio27/31執(zhí)行結(jié)果 牛牛文庫文檔分享29/31執(zhí)行結(jié)果 牛牛文庫文檔分28/318.仔細(xì)檢查以下的代碼,完成題目。P149#include void main(void)int *p;p=new int;*p=10;cout“int value is:”*p;delete p;請(qǐng)指出程序的輸出。 牛牛文庫文檔分享30/318.仔細(xì)檢查以下的代碼,完成題目。P149www.29/318.仔細(xì)檢查以下的代
16、碼,完成題目。P149 #include void main(void)int *p;p=new int;*p=10;cout“int value is:”*p;delete p;詳細(xì)描述這段程序在內(nèi)存中執(zhí)行時(shí)的變化情況。10p 牛牛文庫文檔分享31/318.仔細(xì)檢查以下的代碼,完成題目。P14910pw30/318.仔細(xì)檢查以下的代碼,完成題目。P149 #include #include0 void main(void)1 int *p;2 p=new int;3 *p=10;4 cout“int value is:”*p;delete p;printf(“%xn”,&p);回答下列問題:
17、在程序的第3行執(zhí)行后,p中的數(shù)據(jù)是什么?*p的值是什么?在程序的第4行執(zhí)行后,p中的數(shù)據(jù)是什么?*p的值是什么?若在delete p;后還有輸出&p的printf(“%xn”,&p),這條語句是否意義?10p 牛牛文庫文檔分享32/318.仔細(xì)檢查以下的代碼,完成題目。P149 131/319.編寫求3*4階矩陣和其自身轉(zhuǎn)置矩陣的乘積的程 序,自定義結(jié)構(gòu)。要求具有比較好的模塊化功能。 完成上述題目后,嘗試編制可以允許用戶自己輸 入矩陣的階數(shù)的矩陣乘積程序。 牛牛文庫文檔分享33/319.編寫求3*4階矩陣和其自身轉(zhuǎn)置矩陣的乘積的程w32/31#includemain()int i,j,k;in
18、t a34=1,2,3,4,9,8,7,6,-10,10,-5,2;int b43,c33; /轉(zhuǎn)置矩陣,積for(i=0;i=2;i+) /行 for(j=0;j=3;j+) /列 bji=aij; /求乘積for(i=0;i=2;i+) for(k=0;k=3;k+) for(j=0;j=3 & j=i;j+) cij+=aik*bkj; 牛牛文庫文檔分享34/31#includewww.n33/3110.設(shè)計(jì)1種數(shù)據(jù)結(jié)構(gòu),編寫個(gè)函數(shù)Imalloc(n),當(dāng) 用戶輸入1個(gè)n后,可以在內(nèi)存中為用戶分配n個(gè) 字節(jié)的空間,并將內(nèi)存空間的首地址的指針返 回給用戶。編制函數(shù)IMFree()來釋放這些
19、內(nèi)存 空間。(提示:可參考11題的結(jié)構(gòu))#includestruct StringNode *IMalloc(int n);IMFree(struct StringNode *iNode);struct StringNodechar m_char;struct StringNode *Next; 牛牛文庫文檔分享35/3110.設(shè)計(jì)1種數(shù)據(jù)結(jié)構(gòu),編寫個(gè)函數(shù)Imalloc(34/31main()int n;struct StringNode *p;p=IMalloc(n);IMFree;struct StringNode *IMalloc(int n)int i; struct StringNo
20、de *Node; Node=NULL; for(i=1;iNext=new (struct StringNode); return Node; 牛牛文庫文檔分享36/31main() 牛牛文庫35/31IMFree(struct StringNode *iNode)int i; struct StringNode *Node,*tmp; Node=iNode; tmp=Node-Next; while(tmp!=NULL) Node=Node-Next-Next; delete tmp; tmp=Node-Next; delete Node; 牛牛文庫文檔分享37/31IMFree(struct StringNode 36/3111.有如下定義的結(jié)構(gòu):struct StringNodechar m_char;StringNode *Next; 試?yán)眠@種結(jié)構(gòu)存儲(chǔ)字符串,并編制函數(shù) SearchMax在這個(gè)字符串中檢索出出現(xiàn)次 數(shù)最多的字符。P157#include struct StringNodechar m_char;StringNode *Next;SearchMax(StringNode *str); 牛牛文庫文檔分享38/3111.有如下定義的結(jié)構(gòu):#include ios37/31main()/建立字符串struct StringNode *
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年鋰電池用特種玻璃粉項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告模范
- 2025年二手教練車銷售合同格式
- 2025年乳制品代理銷售合同
- 2025年阻沙固沙網(wǎng)項(xiàng)目立項(xiàng)申請(qǐng)報(bào)告模板
- 2025年不動(dòng)產(chǎn)權(quán)購房合同范本
- 2025年家禽購銷合同協(xié)議
- 2025年陶瓷基體項(xiàng)目申請(qǐng)報(bào)告模范
- 2025年健身器材購置合同
- 2025年合伙型股權(quán)分配合同
- 2025年度制造業(yè)租賃協(xié)議樣式
- 2024年司法考試完整真題及答案
- 【化學(xué)】高中化學(xué)手寫筆記
- 2024年執(zhí)業(yè)藥師繼續(xù)教育專業(yè)答案
- 2024年安全員-C證考試題庫及答案(1000題)
- 膽管惡性腫瘤護(hù)理查房課件
- 企事業(yè)單位全面風(fēng)險(xiǎn)清單(含內(nèi)控風(fēng)險(xiǎn)-2023版-雷澤佳編制)
- 高標(biāo)準(zhǔn)農(nóng)田建設(shè)項(xiàng)目監(jiān)理日志
- [整理]10kv開關(guān)站標(biāo)準(zhǔn)設(shè)計(jì)說明(最終版)
- 分級(jí)診療制度管理辦法
- 公務(wù)員入職登記表
- 九年級(jí)新目標(biāo)英語單詞表默寫最新版
評(píng)論
0/150
提交評(píng)論