版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、用 C 程序實現(xiàn)的算法可以沒有輸入但必需要有輸出 C 語言源程序文件名的后綴是 .c 經過編譯后生成的文件(目標 文件)的后綴是 .obj 經過連接后生成的文件的后綴是 .exe 結構化程序由次序 選擇 循環(huán)三種基本結構組成 標識符 字母數(shù)字下劃線 字母不能打頭 不能調用關鍵字( int double 等)能調用預定義標識符( printf define 等) 實型常量:小數(shù)和指數(shù) 都不行 整型常量: 指數(shù) e 或 E 后面必需跟整數(shù) 零和小數(shù) %取余符號兩邊必需是整數(shù) 3%7=3 由于除不動就取被除數(shù) 整型除以整型為整型 5/2=2 在全部的運算符中,逗號的用算符最低; 復制表達式中前面不能
2、是組合 比如 a+7=b+c 是錯的 K=8 ; Printf “%d,%d/n ”,k,+k ;輸出結果不是 89 而是 99 在逗號用算符中,雖然取最終一個值 ,但前面的表達式也執(zhí)行; 區(qū)分于三目運算符“. : ”就不需要運算另一個不取值的表達式 Bmain int x=1,y=2,z; z=xy.+x:+y; printf%d,%d,%dn,x,y,z; A)1,2,3 B)1,3,3 C)2,3,3 D) 2,2,3 在三目運算符“. :”中,xy 不成立,取 +y 的值,而 +x 不需要運算, 所以 x 為原值 1,y 為 3, z 也為 3; 輸入數(shù)據(jù)時逗號緊跟其后 scanf(“
3、%d,%d”,&a,&b); 1第 1 頁,共 12 頁空, 2 不對 1,2 對 1,空 2 對 優(yōu)先級從高到低 ?。ㄒ?guī)律非)算術用算符,關系用算符, & 邏 輯與 ,|(規(guī)律或),賦值用算符; 用 break 語句可以是流程跳出 switch 語句體, 也可用 break 語句 在循環(huán)結構中終止本層循環(huán)體,從而提前終止本層循環(huán); Continue 語句的作用是跳過本次循環(huán)體中余下尚未執(zhí)行的語句, 立刻進行下一次的循環(huán)體判定,可以懂得為僅終止本次循環(huán) .B 已 知 #int t=0; while t=1 . 就以下表達正確選項 A 循環(huán)把握表達式的值 為 B 循環(huán)把握表達式的值 為 C 循環(huán)
4、把握表達式不合 法 0 1D 以上說法都不 對 循環(huán)把握表達式的值為 1t=1 是將 t 賦值為 1,所以循環(huán)把握表 達式的值為 1;判定 t 是否等于 1時,應用 t=1, 留意 = 與= 的用 法; C 語言中 ,在定義并初始化二維數(shù)組時 , 可以省略數(shù)組第一維的長 度,但是不能省略其次維的長度 x4 錯的 %c 字符型 接受空格 回車 例: scanf (“%c%c%c ”, &a,&b,第 2 頁,共 12 頁&c);如輸入 THE 就 a 讀 T b 讀 H c 讀回 車符; 如在格式說明符之間家空格就空格回車符 跳格符都將 被認作 間隔符讀入 %d 不接受空格 回車 %s 字符串的
5、輸入和輸出,不接受空格回車 C 語言的簡潔數(shù)據(jù)類型有:整型 實型 字符型 函數(shù)定義: 1 在同一程序中函數(shù)名必需唯獨, 2 形參只有在統(tǒng)一函 數(shù)中唯獨即可; 3 不能在函數(shù)內部定義函數(shù) 4 如函數(shù)名沒有定義 類型就默認為 int 型 5 除了返回值類型為 int 和 char 型的函數(shù)外, 函數(shù)必需先定義后調用 6 假如沒有函數(shù)值,就必需把函數(shù)定義成 void 型 如輸出 NULL 0 0 就都輸出為 0 一位數(shù)組中 *p+ 的意思 先取出指針 p 所指示儲存單元值 然后讓 指針 p 向后移 *P+ 也一樣 二維數(shù)組中 *p+ 是先取出指針 p 指示儲存單元值 然后讓指針 p 向下移一行 以下
6、程序的運行結果是 c main int i; char aa3=a,b,c,d,e,f; char *p3=aa; fori=0;i2;i+ ifi=0 aaii+1=*p+; printf%cn,*p; A) a B) b C) d D)c Double x【 8】由于定義 x 數(shù)組有 8 個元素, 因此下標表達式的值 第 3 頁,共 12 頁必需大于或等于 0 并且小于 8 切必需是整數(shù) 數(shù)組名中存放的是地址常量,它代表整個數(shù)組的首地址!不行以 給數(shù)組名重新賦值 語句 a=&x a+ 都是非法的,由于不能給 a 重 新賦地制值 s【10 】 , s=“hello”賦值不合法 在函數(shù)內部不要
7、把函數(shù)內部的變量作為返回值? 二維數(shù)組 a【 3】【 2】 m=a【3】【2】賦值不合法 由于只有兩 行 在二維數(shù)組里 a【 0】+這樣的賦值不合法 +1,表達式中一的單位應當是 4 個字節(jié) 如有表達式 a【0】 char str 【10】=s,t,r,i,n,g,!0;字符數(shù)組共有十個元素 但作為字符串,其長度是 7char str【】 =s,t,r ,i,n,g,?。欢x了一個有七個元素的字 符數(shù)組,由于沒有串終止的標志,所以這時不能把他當作字符串 來使用 char str 【】=“string!”;系統(tǒng)將按字符串中實際的字符個數(shù)來定義 數(shù)組的大小,在此數(shù)組包含八個元素(含系統(tǒng)自動加的 /
8、0) gets puts 函數(shù)在終端輸入或輸出一行字符串 gets 函數(shù)認空格 不認回車 用來從終端鍵盤讀入字符串 (包括空格符),直到讀入 一個換行符為止 puts 函數(shù)遇到第一個 /0 的時候終止輸出,并自 動輸出一個換行符(與 printf 的區(qū)分) 全部的 /和后面的任一字符都能組成一個轉義字符 /012 的話以大 范疇為主 第 4 頁,共 12 頁Register 變量將變量的值保留在 cpu 的寄存器里 有助于提高程 序的運行速度 Static 變量靜態(tài)儲存變量在內存的靜態(tài)儲備變量中占據(jù)著永久性 的儲備單元 遂于未賦初值的靜態(tài)局部變量, c 編譯程序自動給 他賦初值 0 宏定義:
9、1 當宏定義在一行中寫不下時,需要在下一行連續(xù)時; 只需在最終一個字符后緊接著加 / 2 替換文本不能替換雙引號中與宏名相同的字符串; 3 用作宏名的標識符通常用大寫字母表示,這并不是語法規(guī)定,只是 一種習慣,以便與程序中的其他標識符相區(qū)分 4 在 c 程序中,宏定義的定義位置一般寫在程序的開頭 5 宏替換和函數(shù)調用的區(qū)分,宏替換對參數(shù)沒有類型的要求 6 宏替換在編譯前由預處理程序完成的, 因此宏替換不占運行的時間 7 假如宏定義是表達式,就在調用的時候應整體搬下來 C#define N 2 #define M N+1 #define NUM M+1*M/2 main int i,n=0; f
10、ori=0;iNUM;i+ n+; printf%dn,n; A) 5 B) 6 C) 8 D)9 Typedef 類型名 標識符 typedef int a 就 a 成為了一個 int 類 型的類型名 使用 typedef 說明一個結構體類型名 typedef stuct STUCT; 第 5 頁,共 12 頁對于結構體變量后面未賦值的成員,系統(tǒng)自動為數(shù)值型和字符型 數(shù)據(jù)賦初值 0 以wt 方式寫入的是字符文件 ,轉義字符 n被看作兩個字符來處 理;而 wb 方式寫入的是二進制文件 ,轉義字符 n是一個字符; B 對于下述程序 ,在方式串分別接受 wt 和wb 運行時 , 兩次生成的 文件
11、TEST 的長度分別是 #include void main FILE *fp=fopenTEST,; fputc A,fp;fputc n,fp; fputc B,fp;fputc n,fp; fputc C,fp; fclosefp; A7 字節(jié), 7 字 節(jié) B7 字節(jié), 5 字 節(jié) C5 字節(jié), 7 字 節(jié) D5 字節(jié), 5 字 節(jié) 鏈表的數(shù)據(jù)結構 ,必需利用指針變量才能實現(xiàn) ,即一個結點中應包 含一個指針變量 ,用它存放下一結點的地址; D 如有以下定 義 : struct link int data; struct link *next; 第 6 頁,共 12 頁 a,b,c,*p
12、,*q; 且變量 a 和 b 之間已有如下圖所示的鏈表結: 之間并形成 構 指針 p 指向變量 a,q 指向變量 c;就能夠把 c 插入到 a和 b新的鏈表的語句組是 : Aa.next=c; c.next=b; Bp.next=q; q.next=p.next; Cp-next=&c; q-next=p-next; D*p.next=q; *q.next=&b; a=5 b=4 c=3 d=abc d=0 由于是先判定 ab 為真 所 以為 1 1 大于 3 不成立 所以為 0 文件: 1 FILE *P1 *P2;P1,P2 均被定義為指向文件類型的文件指 針變量 稱為文件指針 ; 2打開
13、文件 fopen (文件名,文件使用 方式); fopen(“file”,“r”) “r”:為讀打開文本文件“w”為寫而 打開文本文件 “a”為在文件后面添加數(shù)據(jù)而打開文件; 3 關閉文 件 fclose(文件指針);當成功的執(zhí)行了關閉操作, 函數(shù)返回 0 否 第 7 頁,共 12 頁就返回非 0 函數(shù) Fputc ( putc )函數(shù)輸出一個 字符 puts ( ch, fp)的功能是將字 符 ch 寫到文件指針 fp 所指的文件指針去 Fgetc ( getc )函數(shù)輸入一個 字符 ch=gets (pf)的功能是從 pf 指定的文件中讀入一個字符; 判定文件終止函數(shù) feof 為 1,否
14、就為 0假如遇到文件終止 函數(shù) feof( fp)的值 Fscanf 函數(shù)只能是從文本文件中按格式輸入; Fscanf 函數(shù)和 scanf 函數(shù)的區(qū)分是 fscanf 函數(shù)輸入的對象是磁盤上文本文件中 的數(shù)據(jù) 函數(shù)的調用形式 fscanf ( fp,“%d”, &a) Fprintf 函數(shù)按格式將內存中的數(shù)據(jù)轉換成對應的 ASCII 代碼形式 輸出到文本文件中 fprintf 函數(shù)與 printf 函數(shù)的區(qū)分 f 輸出的內容 將按格式存放在磁盤的文本文件中 “%d”, a) ;函數(shù)的調用形式 fscanf( fp, Fgets 函數(shù)用來從文件中讀入 字符串 ;調用形式 fgets(str,n,
15、fp); fp 是文件指針 str 是存放字符串的起始地址, n 是一個 int 型變 量,長度限制最多接受 n-1 個;函數(shù)的功能是從 fp 所指文件中讀 入 n-1 個字符放入以 str 為起始地址的空間內; Fputs 函數(shù)用來把 字符串 輸入到文件中,調用形式如下 fputs(str, fp); Fread 函數(shù) fwrite 函數(shù)分別用來讀寫二進制文件; 調用形式如下: 第 8 頁,共 12 頁freadbuffer,size,count,fp; fwritebuffer,size,count,fp;buffer 是 數(shù)據(jù)塊的指針 size 是數(shù)據(jù)塊的字節(jié)數(shù) count 用來指定每讀
16、寫一 次 文件定位函數(shù) fseek 函數(shù)用來移動文件位置指針到指定的位置上 調用形式: fseek ( pf, offset , origin);從 origin開頭往后挪 offset 個字節(jié) ftell 函數(shù)用以獲得文件當前位置指針的位置,函數(shù)給出當前位置 指針相對于文件開頭的字節(jié)數(shù);調用形式: t= ftell (fp ); 當打開一個文件時,通常并不知道該文件的長度,通過以下函數(shù) 調用可以求出文件的字節(jié)數(shù) Fseek (fp,oL,SEEK_END ); T=ftell (fp ); Rewind 函數(shù)此函數(shù)沒有返回值 ,函數(shù)的功能是使文件的位置指 針回到文件開頭; C 有以下程序 #
17、include main FILE *fp;char str10; fp=fopenmyfile.dat,w; fputsabc,fp;fclosefp; fpfopenmyfile.data,a+; fprintffp,%d,28; 第 9 頁,共 12 頁rewindfp; fscanffp,%s,str; putsstr; fclosefp; 程序運行后的輸出結果是 Aabc B 28c C abc28 D 因類型不一樣而出錯 C 以下程序的功能是; #include main FILE *fp; long int n; fp=fopenwj.txt,rb; fseekfp,0,SEEK
18、_END; n=ftellfp; fclosefp; printf%ld,n; B A )運算文件 wj.txt 的起始地址 B)運算文件 wj.txt 的終止地址 C)運算文件 wj.txt 的長度 D)將文件指針定位到文件末尾 以下程序運行結果是 main char a5= ABCD,1234,abcd,5678,EFGH;int i;fori=0;i3;i+ printf%s,ai;A) A1a B) ABCD1234abcdC) ABC D)ABCD1234abcd5678EFGH分析:對于二維數(shù)組,其元素為一維數(shù)組,它表示行地址,依據(jù) 行地址可輸出該行的字符串; 給數(shù)組賦值 x8=Turbo C 錯; x=T
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 生物標志物在藥物臨床試驗中的藥物研發(fā)前沿方向
- 生物制品穩(wěn)定性試驗濁度評估
- 生物制劑臨床試驗中盲法揭盲流程規(guī)范
- 生物傳感器在藥物代謝研究中的應用
- 翻譯專員資格考試題庫含答案
- 華為研發(fā)團隊主管的面試問題及答案
- 深度解析(2026)《GBT 19416-2003山楂汁及其飲料中果汁含量的測定》
- 瓣膜介入術后腎功能保護策略
- 現(xiàn)代醫(yī)案治未病個體化方案應用
- 密碼審計專員專業(yè)面試題集
- 《市場營銷專業(yè)申報》課件
- 廣東開放大學2024年秋《國家安全概論(S)(本專)》形成性考核作業(yè)參考答案
- 批生產記錄的培訓
- 靜脈輸液工具的合理選擇患者篇課件
- MOOC 電子線路設計、測試與實驗(一)-華中科技大學 中國大學慕課答案
- 醫(yī)學裝備管理與使用理論考核試題及答案
- 醫(yī)院產科培訓課件:《妊娠期宮頸疾病的診治策略》
- 水質監(jiān)測服務投標方案(技術標)
- 國家集采中選目錄1-8批(完整版)
- 【員工關系管理研究國內外文獻綜述2800字】
- 《三只小豬蓋房子》拼音版故事
評論
0/150
提交評論