



版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、譽(yù)達(dá)勿外傳C 語言重點1、只有一個主函數(shù)Main()2、C 語句必須以分號結(jié)束3、用戶標(biāo)識符的:C 語言規(guī)定,標(biāo)識符只能是字母(AZ,az)、數(shù)字(09)、下劃線(_)組成的字,并且其第一個字符必須是字母或下劃線。用戶所定義的標(biāo)識符必須以字母或下劃線開頭。如:以下不合法的用戶標(biāo)識符是:CA)j2_KEYB)DoubleC) 4dD) _8_以下不能定義為用戶標(biāo)識符的是(D)。A)MainB)_0 C)_int D)sizeof4、數(shù)值的:八進(jìn)制以 0 開頭; 指數(shù)形式由十進(jìn)制數(shù),加階碼標(biāo)志“e”或“E”以及階碼(只能為整數(shù),可以帶符號)組成。其一般形式為a E n (a 為十進(jìn)制數(shù),n 為十進(jìn)
2、制整數(shù))其值為 a*10,n如: 2.1E5 (等于2.1*10,5), 3.7E-2 (等于 3.7*10,)-2*)0.5E7 (等于 0.5*10,7), -2.8E-2 (等于-2.8*10,)-2*)以下不是合法的實數(shù) 345 (無小數(shù)點)E7 (階碼標(biāo)志E 之前無數(shù)字) 53.-E3 (負(fù)號位置不對)2.7E (無階碼)1.35E013(合法,013 是十進(jìn)制的 13)-5 (無階碼標(biāo)志)以下不合法的數(shù)值是 CA)011B)lelC) 8.0 E0.5D) 0xabcd以下選項中可作為 C 語言合法A)-80.的是 (A)。譽(yù)達(dá)勿外傳B)-080C)-8e1.0D)-80.0e以下
3、選項中,不能作為合法A)1.234e04的是 (B)。B)1.234e0.4C)1.234e+4D)1.234e05、字符及轉(zhuǎn)義字符a在內(nèi)存中占一個字節(jié),可表示為:a "a"在內(nèi)存中占二個字節(jié),可表示為:a0 符號dddxhh13 位八進(jìn)制數(shù)所代表的字符 51212 位十六進(jìn)制數(shù)所代表的字符xa3以下不合法的字符是:AA)'018'B '”'C) ''D) xcc'以下能正確定義字的語句是:DA)charstr=064'B)charstr=”x43”;C)charstr=”;D)charstr=”0”;數(shù)字字符
4、 0 的 ASCII 值為 48,若有以下程序:譽(yù)達(dá)勿外傳main() char a='1',b='2'printf("%c,",b+);printf("%d ",b-a);程序運(yùn)行后的輸出結(jié)果是(C)。A)3,2B)50,2C)2,2D)2,506、變量類型的轉(zhuǎn)換1. 若參與運(yùn)算量的類型不同,則先轉(zhuǎn)換成同一類型,然后進(jìn)行運(yùn)算。2. 轉(zhuǎn)換按數(shù)據(jù)長度增加的方向進(jìn)行,以保證精度不降低。如 int 型和 long 型運(yùn)算時,先把int 量轉(zhuǎn)成 long 型后再進(jìn)行運(yùn)算。3. 所有的浮點運(yùn)算都是以雙精度進(jìn)行的,即使僅含 float
5、 單精度量運(yùn)算的表轉(zhuǎn)換成 double 型,再作運(yùn)算。4. char 型和 short 型參與運(yùn)算時,必須先轉(zhuǎn)換成 int 型。5. 在賦值運(yùn)算中,賦值號兩邊量的數(shù)據(jù)類型不同時, 賦值號右邊量的類型將轉(zhuǎn)換為左邊量的類型。例如:1/3 的值是 0,所以計算代數(shù)式 1/3*sin(1/2)*sin(1/2)不能獲得預(yù)想的結(jié)果。,也要先又如,表3.6-5/2+1.2+5%2 的值是:DA)4.3B)4.8C)3.3D)3.87、字符的函數(shù):getc()gets()getchar()scanf()譽(yù)達(dá)勿外傳8、變量賦初值的語句以下能正確定義且賦初值的語句是(B)。A)int n1=n2=10;C)fl
6、oat f=f+1.1;B)char c=32;D)double x=12.3E2.5;9、數(shù)組的初始化賦值以下數(shù)組定義中錯誤的是:BA)intx3=0;B)intx23=1,2,3,4,5,6;C)intx3=1,2,3,4,5,6;D)intx23=1,2,3,4,5,6;10、強(qiáng)制類型轉(zhuǎn)換設(shè)有定義:int k=1,m=2; float f=7;,則以下選項中錯誤的表是(C)。A)k=k>=kB)-k+C)k%int(f)D)k>=f>=m11、+和-的使用:表+i*+i+-i+i+的值:CA)8B)6C)10D)1212、循環(huán)變量的值的變化:運(yùn)行 for(i=0;i+&
7、lt;6;)后,i 的值是:CA)5B)6C)7D) 813、輸入輸出格式在輸入語句中,%d、%f、%c、%s 后面跟的是變量的地址;在輸出語句中,%d、%f、%c 后面跟的是變量,%s 后面跟的是變量的地址或指針變量; 有定義語句:int b;char c10; ,則正確的輸入語句是 (B)。A) scanf("%d%s",&b,&c);B) scanf("%d%s",&b,c);C) scanf("%d%s",b,c);D) scanf("%d%s",b,&c);有定義語句:in
8、t b;char c10; ,則正確的輸出語句是 (C)。A) printf("%d%s",&b,&c);B) printf ("%d%s",&b,c);C) printf ("%d%s",b,c);D) printf ("%d%s",b,&c);寬度:用十進(jìn)制整數(shù)指定輸入的寬度(即字符數(shù))。例如: scanf("%5d",&a);輸入: 12345678譽(yù)達(dá)勿外傳只把 12345 賦予變量 a,其余部分被截去。又如: scanf("%4d%4d
9、",&a,&b);輸入:12345678將把 1234 賦予 a,而把 5678 賦予 b。scanf 函數(shù)中沒有精度,如: scanf("%5.2f",&a); 是的。14、條件表:若整型變量a、b、c、d 中的值依次為:1、4、3、2。則條件表a<b?a:c<d?c:d 的值 (A)。A)1B)2C)3D)4可理解為:a<b?a:(c<d?c:d)條件運(yùn)算符的結(jié)合方向是自右至左。15、整型賦予字符型,只把低八位賦予字符量。如,int k=255;char a;a=k;則 printf(“%d”,a);的輸入結(jié)果:
10、( B )A)1B)-1C)15D)-15以下程序的輸出結(jié)果是: int x;char y; x=258;y=x; printf(“%d”,y);結(jié)果是:2分析:char 是一個字節(jié),int 是 2 個字節(jié),當(dāng)大于 255 時就變成 0,1,2,16、雖然 C 編譯在給出邏輯運(yùn)算值時,以“1”代表“真”,“0 ”代表“假”。 但反過來在一個量是為“真”還是為“假”時,以“0”代表“假”,以非“0”的數(shù)值作為“真”。只要表的值為非 0,即為“真”。如在 if(a=5);中表的語句總是要執(zhí)行的的值永遠(yuǎn)為非0,所以其后17、break 和continue 語句:break語句只能用在switch 語
11、句或循環(huán)語句中,其作用是跳出switch語句或跳出本層循環(huán), 轉(zhuǎn)去執(zhí)行后面的程序。continue 語句只能用在循環(huán)體中,其語義是:結(jié)束本次循環(huán),即不再執(zhí)行循環(huán)體中 continue語句之后的語句,轉(zhuǎn)入下一次循環(huán)條件的次的循環(huán),并不跳出循環(huán)。與執(zhí)行。應(yīng)注意的是,本語句只結(jié)束本層本18、字常用函數(shù):字輸出函數(shù) puts 格式: puts (字符數(shù)組名) 功能:把字符數(shù)組中的字器。#include"stdio.h" main()static char c="BASICndBASE" puts(c);輸出到顯示譽(yù)達(dá)勿外傳字輸入函數(shù) gets 格式: gets
12、(字符數(shù)組名) 功能:從標(biāo)準(zhǔn)輸入設(shè)備鍵盤上輸入一個字。#include"stdio.h" main()char st15; printf("input string:n"); gets(st);puts(st);字連接函數(shù) strcat 格式: strcat (字符數(shù)組名 1,字符數(shù)組名 2) 功能:把字符數(shù)組 2中的字連接到字符數(shù)組 1 中字的后面,并刪去字1 后的串標(biāo)志“0”。本函數(shù)返回值是字符數(shù)組 1 的首地址。#include"string.h" main()static char st130="My name is
13、 " int st210;printf("input your name:n"); gets(st2);strcat(st1,st2); puts(st1);字拷貝函數(shù) strcpy 格式: strcpy (字符數(shù)組名 1,字符數(shù)組名 2) 功能:把字符數(shù)組 2拷貝到字符數(shù)組 1 中。串結(jié)束標(biāo)志“0”也一同拷貝。字符數(shù)名 2, 也可以是中的字一個字。這時相當(dāng)于把一個字賦予一個字符數(shù)組。#include"string.h" main()static char st115,st2="C Language" strcpy(st1,
14、st2);puts(st1);printf("n");字比較函數(shù) strcmp 格式: strcmp(字符數(shù)組名 1,字符數(shù)組名 2) 功能:按照 ASCII 碼順序比較兩個數(shù)組中的字,并由函數(shù)返回值返回比較結(jié)果。字字字1字2字1字2,返回值0;2,返回值0;2,返回值0。本函數(shù)也可用于比較兩個字#include"string.h" main() int k;,或比較數(shù)組和字。譽(yù)達(dá)勿外傳static char st115,st2="C Language" printf("input a string:n");get
15、s(st1); k=strcmp(st1,st2);if(k=0) printf("st1=st2n"); if(k>0) printf("st1>st2n"); if(k<0) printf("st1<st2n");測字長度函數(shù) strlen 格式: strlen(字符數(shù)組名)功能:測字的實際長度(不含字符串結(jié)束標(biāo)志0) 并作為函數(shù)返回值。#include"string.h" main() int k;static char st="C language" k=strl
16、en(st);printf("The lenth of the string is %dn",k);19、函數(shù)的參數(shù):函數(shù)的形參和實參具有以下特點:1.形參變量只有在被調(diào)用時才分配內(nèi)存單元,在調(diào)用結(jié)束時,即刻所分配的內(nèi)存單元。因此,形參只有在函數(shù)內(nèi)部有效。函數(shù)調(diào)用結(jié)束返回主調(diào)函數(shù)后則不能再使用該形參變量。2.實參可以是、變量、表、函數(shù)等, 無論實參是何種類型的量,在進(jìn)行函數(shù)調(diào)用時,它們都必須具有確定的值,以便把這些值傳送給形參。因此應(yīng)預(yù)先用賦值,輸入等辦法使實參獲得確定值。3. 實參和形參在數(shù)量上,類型上,順序上應(yīng)嚴(yán)格一致, 否則會發(fā)生“類型不匹配”的錯誤。4. 函數(shù)調(diào)用中
17、發(fā)生的數(shù)據(jù)傳送是單向的。即只能把實參的值傳送給形參,而不能把形參的值反向地傳送給實參。因此在函數(shù)調(diào)用過程中,形參的值發(fā)生改變,而實參中的值變化。下例可以說明這個問題。void main()int n;printf("input numbern"); scanf("%d",&n);s(n); printf("n=%dn",n);int s(int n)int i;for(i=n-1;i>=1;i-)譽(yù)達(dá)勿外傳n=n+i; printf("n=%dn",n);20 在語言中,對變量的類型說明有以下四種:a
18、uto register externstatic自動變量寄存器變量外部變量靜態(tài)變量自動變量和寄存器變量屬于動態(tài)方式,外部變量和靜態(tài)變量屬于靜態(tài)方式。靜態(tài)動態(tài)變量通常是在變量就分定單元并一直保持不變,直至整個程序結(jié)束。變量是在程序執(zhí)行過程中,使用它時才分配單元, 使用完畢立即。 典型的例子是函數(shù)的形式參數(shù),在函數(shù)時,才予以分配, 調(diào)用函數(shù)完畢立即并不給形參分配。單元,只是在函數(shù)被調(diào)用函數(shù)內(nèi)凡未加auto。類型說明的變量均視為自動變量,也就是說自動變量可省去說明符21、指針就是內(nèi)存的地址變量取地址使用&指針取對應(yīng)單元的值使用*char *ps="C Langage"或
19、者char *ps; ps="C Language"都是合法的。22、#define 和 typedef宏定義#define 只是的字代換,是在預(yù)處理完成的,而 typedef 是在編譯時處理的,它不是作簡單的代換, 而是對類型說明符重新命名。23、帶定義:#define 宏名(形參表) 字定義中,宏名和形參表之間不能有空格出現(xiàn)。定義中,形式參數(shù)不分配內(nèi)存單元,因此不必作類型定義。1.2.3.帶在帶在宏定義中的形參是標(biāo)識符,而宏調(diào)用中的實參可以是表#define SQ(y) (y)*(y)main() int a,sq;printf("input a number
20、: "); scanf("%d",&a); sq=SQ(a+1);printf("sq=%dn",sq);。4. 在宏定義中,字內(nèi)的形參通常要用括號括起來以避免出錯。 在上例中的宏定義中(y)*(y)表的 y 都用括號括起來,因此結(jié)果是正確的。譽(yù)達(dá)勿外傳5. 對于宏定義不僅應(yīng)在參數(shù)兩側(cè)加括號, 也應(yīng)在整個字外加括號。24、對文件包含命令的幾點說明:1. 包含命令中的文件名可以引號括起來,也可以用尖括號括起來。例如以下寫法都是的: #include"stdio.h"#include<math.h> 但是這兩
21、種形式是有區(qū)別的:使用尖括號表示在包含文件目錄中去查找(包含目錄是由用戶在設(shè)置環(huán)境時設(shè)置的), 而不在源文件目錄去查找; 使錄中去查找。2. 一個 include include 命令。3. 文件包含引號則表示首先在當(dāng)前的源文件目錄中查找,若未找到才到包含目命令只能指定一個被包含文件, 若有多個文件要包含,則需用多個嵌套,即在一個被包含的文件中又可以包含另一個文件。25、使用預(yù)處理功能便于程序的修改、閱讀、移植和調(diào)試,也便于實現(xiàn)模塊化程序設(shè)計。26、FILE *fp;fphzk=("C:hzk16,"rb")27、對于文件使用方式有以下幾點說明:1. 文件使用方式
22、由 r,w,a,t,b,+六個字符拼成,各字符的含義是: r(read): 讀w(write): 寫a(append): 追加t(text): 文本文件,可省略不寫b(banary): 二進(jìn)制文件+: 讀和寫2. 凡用“r”打開一個文件時,該文件必須已經(jīng)存在, 且只能從該文件讀出。3. 用“w”打開的文件只能向該文件寫入。 若打開的文件不存在,則以指定的文件名建立該文件,若打開的文件已經(jīng)存在,則將該文件刪去,重建一個新文件。4. 若要向一個已存在的文件追加新的信息,只能用“a ”方式打開文件。但此時該文件必須是存在的,否則將會出錯。5. 在打開一個文件時,如果出錯,fopen 將返回一個空指針
23、值NULL。在這一信息來判別是否完成打開文件的工作,并作相應(yīng)的處理。可以用6. 把一個文本文件讀入內(nèi)存時,要將 ASCII 碼轉(zhuǎn)換成二進(jìn)制碼, 而把文件以文本方式寫入磁盤時,也要把二進(jìn)制碼轉(zhuǎn)換成 ASCII 碼,因此文本文件的讀寫要花費(fèi)較多的轉(zhuǎn)換時間。對二進(jìn)制文件的讀寫不存在這種轉(zhuǎn)換。28、fclose 函數(shù)調(diào)用的一般形式是: fclose(文件指針); 例如:fclose(fp); 正常完成關(guān)閉文件操作時,fclose 函數(shù)返回值為 0。如返回非零值則表示有錯誤發(fā)生。文件的讀寫對文件的讀和寫是最常用的文件操作。譽(yù)達(dá)勿外傳29、在語言中提供了多種文件讀寫的函數(shù):·字符讀寫函數(shù) : fgetc 和 fputc·字件指針)讀寫函數(shù):fgets 和 fputsfgets(字符數(shù)組名,n,文件指針);fputs(字,文·數(shù)據(jù)塊讀寫函數(shù):fread 和 fwrite·格式化讀寫函數(shù):fscanf 和 fprinffread(buffer,size,count,fp); fwrite(buffer,size,count,fp);fscanf(文件指針,格式字,輸入表列); fprintf(文件指針,格式字,輸出表列);對 fgets 函數(shù)有兩點說明:1. 在讀出 n-1 個字符之前,如遇到了
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO/IEC 15421:2010 FR Information technology - Automatic identification and data capture techniques - Bar code master test specifications
- 【正版授權(quán)】 ISO/IEC 8183:2023 FR Information technology - Artificial intelligence - Data life cycle framework
- 2025至2030中國白色家電行業(yè)市場運(yùn)行分析及競爭格局與投資方向報告
- 2025至2030中國男士商務(wù)正裝行業(yè)深度研究及發(fā)展前景投資評估分析
- 2025至2030中國用于食品和飲料的金屬罐行業(yè)產(chǎn)業(yè)運(yùn)行態(tài)勢及投資規(guī)劃深度研究報告
- 2025至2030中國玻璃門行業(yè)深度研究及發(fā)展前景投資評估分析
- 2025至2030中國玫瑰花露行業(yè)供需分析及發(fā)展前景報告
- 2025至2030中國物理治療軟件行業(yè)市場深度研究及發(fā)展前景投資可行性分析報告
- 商業(yè)培訓(xùn)中激勵措施的心理機(jī)制研究
- 商業(yè)環(huán)境中殘疾人餐具使用的培訓(xùn)與指導(dǎo)
- 2022年一級造價工程師考試《建設(shè)工程技術(shù)與計量(土木建筑工程)》真題及解析
- 專利基礎(chǔ)知識教學(xué)課件
- 2015海灣消防JB-QB-GST200 火災(zāi)報警控制器(聯(lián)動型)安裝使用說明書
- 中國各省區(qū)地圖、基本資料
- 2025年上半年中國長江三峽集團(tuán)限公司“脫貧家庭畢業(yè)生”招聘(173人)易考易錯模擬試題(共500題)試卷后附參考答案
- 關(guān)于辦公室安全的培訓(xùn)
- 2025年高考物理復(fù)習(xí)之小題狂練600題(實驗題):測量電壓表或電流的內(nèi)阻(10題)
- 2024年工廠車間主管年終總結(jié)
- 血管導(dǎo)管相關(guān)感染預(yù)防與控制指南課件
- 中建全套消防專項施工方案
- 出國境保密培訓(xùn)
評論
0/150
提交評論