版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
總復(fù)習(xí)1第一章C程序設(shè)計(jì)概述1、C語(yǔ)言的標(biāo)識(shí)符
保留字符:32個(gè)關(guān)鍵字 預(yù)定義標(biāo)識(shí)符:
系統(tǒng)庫(kù)數(shù):如sin,printf,scanf等
預(yù)編譯命令:如define,include,undef,ifdef,endif等用戶定自義標(biāo)識(shí)符22、算法 ★傳統(tǒng)流程圖,
★結(jié)構(gòu)化流程圖(N-S流程圖)l
起止框:表示算法的開始和結(jié)束。l
處理框:表示初始化或運(yùn)算賦值等操作。l
輸入輸出框:表示數(shù)據(jù)的輸入輸出操作。l
判斷框:表示根據(jù)一個(gè)條件成立與否,決定執(zhí)行兩種不同操作中的其中一個(gè)。l
流程線:表示流程的方向。3圖1-7例1-1的算法流程圖
輸入A、B、C例1-1輸入三個(gè)數(shù),然后輸出其中最大的數(shù)
例1-1算法的N—S流程圖
43、C語(yǔ)言的程序結(jié)構(gòu)例1-3在屏幕輸出一行文字“HelloC!”#include<stdio.h>voidmain(){
printf("HelloC!\n");}其執(zhí)行結(jié)果是在屏幕上輸出一行信息:HelloC!頭包含文件程序開始程序結(jié)束打印輸出函數(shù)主函數(shù)輸出內(nèi)容每個(gè)原程序都必須有且只有一個(gè)主函數(shù)!
!每個(gè)函數(shù)至少有一組{}5第二章數(shù)據(jù)類型、運(yùn)算符和表達(dá)式注意:在程序中用到的常量與變量必須是上面的數(shù)據(jù)類型的一種;
1、數(shù)據(jù)類型62各類數(shù)據(jù)在內(nèi)存中的存放方式
1、機(jī)器數(shù)與原碼、補(bǔ)碼和反碼表示2、實(shí)數(shù)的機(jī)器內(nèi)表示方法:定點(diǎn)數(shù)、浮點(diǎn)數(shù)3、字符在內(nèi)存中的表示:ASCII碼73常量的表示方法定義:
在程序運(yùn)行過程中,值不能被改變的量叫常量。包括“數(shù)值常量”和“符號(hào)常量”。如5,3.14159,‘a(chǎn)’等
常量數(shù)值常量符號(hào)常量整型常量實(shí)型常量八進(jìn)制整數(shù):以0做前綴eg:015十進(jìn)制整數(shù)十六進(jìn)制整數(shù):以0x做前綴eg:0x2A十進(jìn)制小數(shù)形式eg:12.45十進(jìn)制指數(shù)形式aEneg:12.5E+2字符常量:‘’括起來的字符字符串常量:“”括起來的字符序列84、變量必須先定義后使用。變量包括:變量名字和數(shù)據(jù)類型
通過名字來引用一個(gè)變量,而數(shù)據(jù)類型則決定了該變量的存儲(chǔ)方式和在內(nèi)存中占據(jù)存儲(chǔ)單元的大小變量的賦值:定義的時(shí)候賦初值先定義后賦初值。95運(yùn)算符與表達(dá)式注意:運(yùn)算符的功能、優(yōu)先級(jí)、結(jié)合方向、運(yùn)算結(jié)果的類型算術(shù)運(yùn)算符(+,-,*,/,%)關(guān)系運(yùn)算符(>,<,==,>=,<=,!=)邏輯運(yùn)算符(!,&&,||)增1減1運(yùn)算符(++,――)基本運(yùn)算符賦值運(yùn)算符(=
)算術(shù)復(fù)合賦值運(yùn)算符(+=,-=,*=,/=,%=)逗號(hào)運(yùn)算符(,)條件運(yùn)算符(?:)(數(shù)據(jù))長(zhǎng)度運(yùn)算符(sizeof)C語(yǔ)言運(yùn)算符位邏輯運(yùn)算符(~,&,^,|)位運(yùn)算符位移位運(yùn)算符(>>,<<)位復(fù)合賦值運(yùn)算符(&=,|=,^=,>>=,<<=)強(qiáng)制運(yùn)算符(())(數(shù)組)下標(biāo)運(yùn)算符([])專用運(yùn)算符成員運(yùn)算符(->,.)指針運(yùn)算符(&,*)C運(yùn)算符106指針和指針變量基本概念:變量的地址、變量的指針、指針變量指針變量的定義: 類型符*標(biāo)識(shí)符;給指針變量賦初值(目的:確定指向關(guān)系)指針變量的使用:對(duì)變量的訪問:兩種方法。使用變量的名字訪問通過指針變量訪問。Inta,*p=&a;Inta,*p;p=&a;a等價(jià)于*p&a等價(jià)于p11第三章簡(jiǎn)單的C程序1、輸入輸出函數(shù)的格式和使用方法 printf(“格式字符串”,輸出項(xiàng)列表)格式說明:%-0m.n格式字符指定輸出類型輸出寬度說明及精度指定空位是否填0指定是否左對(duì)齊輸出122、scanf(“格式控制”,地址表列
)在輸入數(shù)據(jù)時(shí),遇以下情況時(shí)該數(shù)據(jù)認(rèn)為結(jié)束。 ①遇空格,或按“回車”或“跳格”(tab)鍵。 ②按指定的寬度結(jié)束,如“%3d”,只取3列。 ③遇非法輸入。
scanf(“%d%c%f”,&a,&b,&c); 輸入:1234a123o.26用“%c”格式輸入字符時(shí),空格字符和“轉(zhuǎn)義字符”都作為有效字符輸入:
scanf(“%c%c%c”,&c1,&c2,&c3); 如果輸入:a?b?c時(shí)c1,c2,c3
的值是多少呢?c1=‘a(chǎn)’c2=‘?’c3=‘b’13例如:voidmain(){inta=123;floatx=12.345678;
printf(“a=%5d,x=%5.2f\n",a,x);
printf("%2d,%2.1f\n",a,x);}
scanf
(“%d∶%d∶%d”,&h,&m,&s); 輸入應(yīng)該用以下形式:12∶23∶36
scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);
輸入應(yīng)該用以下形式:a=12,b=24,c=36143、字符數(shù)據(jù)輸入輸出函數(shù)putchar()getchar()scanf(“%c”,&c1);等價(jià)于c1=getchar();printf(“%c”,ch);等價(jià)于putchar(ch);15例3-9編一程序,從鍵盤輸入一個(gè)大寫字母,要求改用小寫字母輸出思路:大寫字母對(duì)應(yīng)的ASCII碼序號(hào)比相應(yīng)的小寫字母的ASCII碼序號(hào)小32。#include"stdio.h"voidmain(){charc1,c2;c1=getchar();printf("%c,%d\n",c1,c1);c2=c1+32;printf("%c,%d\n",c2,c2);}16第四章控制結(jié)構(gòu)選擇結(jié)構(gòu)(if語(yǔ)句、switch語(yǔ)句)循環(huán)結(jié)構(gòu)(for語(yǔ)句、while語(yǔ)句、do..while語(yǔ)句)其它控制語(yǔ)句(break、continue語(yǔ)句)
典型例題:求1.。100的和(可以用for、while、dowhile等語(yǔ)句改寫)求幾個(gè)數(shù)中的最大值(if語(yǔ)句的使用)按照成績(jī)分等次(switchcase、break的使用)求n!打印9*9乘法表、打印圖形等(雙重循環(huán)的使用)驗(yàn)證某一個(gè)數(shù)是否水仙花數(shù)。(if語(yǔ)句和關(guān)系運(yùn)算符)17第五章數(shù)組、字符串、指針1、數(shù)組的定義方法2、給數(shù)組賦初值的方法在定義數(shù)組的時(shí)候賦初值在程序語(yǔ)句中給數(shù)組元素賦初值(不能整體賦值)3、數(shù)組元素的引用方法:a[]一維數(shù)組:inta[3];a[0]=5;a[1]=8;a[2]=9;intk,a[10];for(k=1;k<10;k++)a[k]=1; inta[5]={1,2,3,4,5};
for(i=0;i<10;i++)printf("%d",a[i]);184、典型例題:怎么樣給一維數(shù)組的每一個(gè)元素賦以鍵盤輸入的數(shù)值?怎樣輸出數(shù)組元素的值?求數(shù)組中最大元素及其下標(biāo)。求數(shù)組中各個(gè)元素的平均值。一維數(shù)組元素的倒置。(注意:循環(huán)一半)19二維數(shù)組二維數(shù)組的定義、賦初值、引用方法.二維數(shù)組的基本操作:1.給二維數(shù)組a[2][3]輸入數(shù)據(jù)。將該數(shù)組中的元素輸出。2、求二維數(shù)組中元素的最大值以及最大元素的下標(biāo)值。3、矩陣的轉(zhuǎn)置4、矩陣求和1.按行分段賦值可寫為
int[2][3]={{80,75,92},{61,65,71}}2.按行連續(xù)賦值可寫為
inta[2][3]={80,75,92,61,65,71};205.4數(shù)組與指針5.4.1一維數(shù)組與指針
定義指針變量
int*p,array[10];
令p=&array[0];或者p=array;或int*p=&array[0];或int*p=array;a[i]p[i]
*(p+i)*(a+i)一維數(shù)組元素的引用:四種方法&a[0]p
a&a[i]p+i
a+i數(shù)組地址的使用方法:21inta[10]={0,3,5,6,8},*p=a;請(qǐng)問:1、(*p)++=?2、*(p+2)=?3、P++;*P=*P+5225.5字符數(shù)組與字符串
字符數(shù)組:charch[10];字符串:“hello”字符數(shù)組可以用來存放字符的組合也可以存放字符串charc[10]={‘h’,‘e’,‘l’,‘l’,‘o’};charc[10]={‘h’,‘e’,‘l’,‘l’,‘o’,’\0’};charc[10]=“hello”;charc[10]={“hello”};23字符數(shù)組的輸入輸出一般采用下面兩種方法:
1、用“%c”格式符逐個(gè)字符輸入輸出。
2、用“%s”格式符按字符串輸入輸出。例用%smain(){charstr[5];
scanf(“%s”,str);
printf(“%s”,str);}例用%cmain(){charstr[5];
inti;for(i=0;i<5;i++)
scanf(“%c”,&str[i]);for(i=0;i<5;i++)
printf(“%c”,str[i]);}用字符數(shù)組名,不要加&輸入串長(zhǎng)度<數(shù)組維數(shù)遇空格或回車結(jié)束自動(dòng)加‘\0’用字符數(shù)組名,遇‘\0’結(jié)束245.6字符串字符指針5.6.1指向字符串的指針C語(yǔ)言中使用字符數(shù)組或者字符指針來處理字符串。字符指針初始化:把字符串首地址賦給string
char*string;//字符指針變量定義
str[30]=“IloveChina!”;string=str;string=&str[0];string=“ILoveChina”引用字符串中的字符:可以用下標(biāo)方法:str[0]或者指針方法*string字符指針變量:存放的仍然是某一個(gè)字符元素的地址25例將字符串a(chǎn)復(fù)制為字符串bmain(){ chara[]="iamaboy.",b[20];inti;for(i=0;
;i++)
;
*(b+i)=′\0′;printf("stringais:%s\n",a);printf("stringbis:");for(i=0;b[i]!=′\0′;i++)
printf("%c",b[i]);}*(a+i)!=′\0′;*(b+i)=*(a+i);方法2:定義
char*p1=a,*p1=b;循環(huán)體換成:for(;*p1!=‘\0’;p1++,p2++)
*p2=*p1;26常用的字符串處理函數(shù)string.h字符串輸出函數(shù)puts格式:puts(字符數(shù)組)字符串輸入函數(shù)gets格式:gets(字符數(shù)組)字符串連接函數(shù)strcat格式:strcat(字符數(shù)組1,字符數(shù)組2)字符串拷貝函數(shù)strcpy格式:strcpy(字符數(shù)組1,字符串2)字符串比較函數(shù)strcmp格式:strcmp(字符串1,字符串2)字符串長(zhǎng)度函數(shù)strlen格式:strlen(字符數(shù)組)27例:charstr1[10]=“hello”,str2[5]=“how”strcat(str1,str2)得到的是?;得到字符串的長(zhǎng)度是?即strlen(strcat(str1,str2))strcpy(str1,str2)得到的是?;strcmp(str1,str2)得到的是?28第6章函數(shù)本章重點(diǎn)掌握函數(shù)的定義與調(diào)用方法;掌握C語(yǔ)言的參數(shù)傳遞方式,尤其是數(shù)組參數(shù)的傳遞特點(diǎn);掌握變量的作用域和存儲(chǔ)方式。291、函數(shù)的定義:2、函數(shù)聲明的方法:
函數(shù)類型函數(shù)名(形參類型[形參名],…..);
或函數(shù)類型函數(shù)名(); 3、調(diào)用形式
函數(shù)名(實(shí)參表)合法標(biāo)識(shí)符函數(shù)返回值類型缺省int型無返回值void函數(shù)體函數(shù)類型函數(shù)名(形參類型說明表){
說明部分 語(yǔ)句部分}30返回語(yǔ)句形式:return(表達(dá)式);
或
return表達(dá)式;
或
return;功能:使程序控制從被調(diào)用函數(shù)返回到調(diào)用函數(shù)中,同時(shí)把返回值帶給調(diào)用函數(shù)說明:函數(shù)中可有多個(gè)return語(yǔ)句,但是只能有一個(gè)被執(zhí)行。只能返回一個(gè)表達(dá)式的值。return語(yǔ)句不是必須的。若函數(shù)類型與return語(yǔ)句中表達(dá)式值的類型不一致,按前者為準(zhǔn),自動(dòng)轉(zhuǎn)換------函數(shù)調(diào)用轉(zhuǎn)換31#include<stdio.h>voidmain(){intmax(intx,inty);//函數(shù)聲明
inta,b,c;//變量定義
scanf("%d,%d",&a,&b);c=max(a,b);//函數(shù)調(diào)用
printf("Maxis%d",c);}intmax(intx,inty)//函數(shù)定義{intz;z=x>y?x:y;return(z);}326.3參數(shù)的傳遞和函數(shù)的調(diào)用定義參數(shù)目的:實(shí)現(xiàn)主調(diào)函數(shù)和被調(diào)用函數(shù)間的數(shù)據(jù)傳遞參數(shù)分類:實(shí)際參數(shù)、形式參數(shù)實(shí)參到形參的傳遞方法:數(shù)值傳遞、地址傳遞。數(shù)值傳遞:是單向“值傳遞”,形參的改變不會(huì)改變實(shí)參數(shù)值。如果想通過形參的改變而改變實(shí)參:使用地址傳遞(傳遞數(shù)組的名字、變量的地址、指針變量等)33voidswap(int*a,int*b); /*函數(shù)聲明*/voidmain(){int
x,y;
x=10;
y=20;swap(&x,&y);
/*用變量地址傳遞*/
printf("Afterswapping:x=%dy=%d\n",x,y);}voidswap(int*a,int*b) {intt;t=*a;*a=*b;*b=t;}34#include<stdio.h>void
swap2(int
x[]){intz;z=x[0];x[0]=x[1];x[1]=z;}main(){inta[2]={1,2};
swap2(a);printf("a[0]=%d\na[1]=%d\n",a[0],a[1]);}用數(shù)組做函數(shù)參數(shù),進(jìn)行地址傳遞356.6函數(shù)與變量的作用域1、局部變量與全局變量局部變量---內(nèi)部變量定義:在函數(shù)內(nèi)定義的變量,只在本函數(shù)內(nèi)有效;在復(fù)合語(yǔ)句中定義的變量,只在該復(fù)合語(yǔ)句中有效局部變量包括:函數(shù)內(nèi)部定義的變量復(fù)合語(yǔ)句中定義的變量
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 湖南省某廢鋼基地項(xiàng)目可行性研究報(bào)告
- 2024租賃期滿后購(gòu)買選擇權(quán)協(xié)議
- 2025年度特色餐廳餐飲配送服務(wù)承包合同4篇
- 中國(guó)防水膠卷材項(xiàng)目投資可行性研究報(bào)告
- 2025年度個(gè)人創(chuàng)業(yè)貸款擔(dān)保合同樣本4篇
- 2025年涂裝勞務(wù)分包合同范本大全:涂裝工程安全3篇
- 2025年度個(gè)人房產(chǎn)抵押融資合同規(guī)范文本2篇
- 2025年度個(gè)人汽車貸款合同標(biāo)準(zhǔn)格式4篇
- 2025年度個(gè)人汽車租賃保險(xiǎn)附加服務(wù)合同3篇
- 2025年江蘇海州發(fā)展集團(tuán)有限公司招聘筆試參考題庫(kù)含答案解析
- CNAS實(shí)驗(yàn)室評(píng)審不符合項(xiàng)整改報(bào)告
- 農(nóng)民工考勤表(模板)
- 承臺(tái)混凝土施工技術(shù)交底
- 臥床患者更換床單-軸線翻身
- 計(jì)量基礎(chǔ)知識(shí)培訓(xùn)教材201309
- 中考英語(yǔ) 短文填詞、選詞填空練習(xí)
- 一汽集團(tuán)及各合資公司組織架構(gòu)
- 阿特拉斯基本擰緊技術(shù)ppt課件
- 初一至初三數(shù)學(xué)全部知識(shí)點(diǎn)
- 新課程理念下的班主任工作藝術(shù)
- (完整版)企業(yè)破產(chǎn)流程圖(四張)
評(píng)論
0/150
提交評(píng)論