



版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、第一章C 語言程序設計初步一、主要知識點(一)程序設計語言的發展1、機器語言2、匯編語言設計語言(二)C程序設計語言的執行過程1、編輯2、編譯3、連接(三)用庫函數組裝 C程序例 1:計算 2.1715的正弦值。#include math.h 3、面向過程的語言4、執行4、面向對象的程序main()float a;a=sin(2.1715);printf(%n ,a);/* 定 義 a 為 實 型 變 量 */* 調 用 sin 函 數 */* 調 用 printf函 數 , 輸 出a 的 值 */詳 解 :1 、 在 本 例 中 用 到 的 sin 函 數 稱 為 數 學 函 數 , 它 是
2、 為 了 用 戶 使 用 方 便 , 由 一批廠家開發編寫的函數,并不是 C 語言的一部分。在使用數學函數時,往往要用 到 函 數 執 行 時 所 需 的 一 些 信 息 ( 例 如 宏 定 義 ), 這 些 信 息 包 含 在 math.h 中 。因 此 在 程 序 開 頭 用 #include math.h 將 有 關 的 標 頭 文 件 包 括 到 程 序 中 。2、一個 C 語言源程序文件由一個或多個函數組成,C 語言的基本組成單位是 函 數 。 一 個 完 整 的 C 語 言 程 序 有 且 只 有 一 個 稱 為 主 函 數 的 main 函 數 , 程 序 總是 從 main 函
3、 數 開 始 執 行 , 調 用 其 它 函 數 后 再 回 到 main 函 數 , 在 main 函 數 中 結束整個程序的運行。3 、 main 是 函 數 名 稱 , 沒 有 參 數 可 以 不 寫 , 但 圓 括 號 不 能 省 略 , main ( ) 后面 有 一 對 花 括 號 , 花 括 號 內 的 部 分 稱 為 函 數 體 , main 函 數 可 以 在 程 序 的 任 意 位置 。4、C規定每個語句以分號(;)結束,分號是語句不可缺少的組成部分,每行中可以寫多條語句。5、/*與*/之間為注釋信息,對程序運行結果不發生影響,也不被編譯,注釋說明可以放在語句的任意位置。6
4、、 float a ; 此 語 句 是 把 a 定 義 為 一 個 實 型 變 量 。7、 C 語 言 本 身 沒 有 輸 入 、 輸 出 語 句 , 本 例 使 用 prinft函 數 輸 出 數 據 。 prinft函數的括號內包括兩部分內容:雙引號內的部分、雙引號外的部分。雙 引號內的部分是“格式字符串”,用于指定輸出雙引號外的變量的打印格式。此例中雙引號 中 有 一 個 %f,它 是 輸 出 一 個 保 留 小 數 點 后 6 位 數 字 的 格 式 字 符 ,小 數 點 前 的位數不指定。二、練習(一)選擇題1、以下敘述正確的是_C_ 。( A ) 在 C 程 序 中 , main
5、函 數 必 須 位 于 程 序 的 最 前 面( B)C 程序的每行中只能寫一條語句( C)C 語言本身沒有輸入輸出語句( D)在對一個 C 程序進行編譯的過程中,可發現注釋中的拼寫錯誤2 、 C 語 言 規 定 : 在 一 個 源 程 序 中 , main函 數 的 位 置 _C_ 。( A)必須在最開始( B)必須在系統調用庫函數的后面( C)可以任意( D)必須在最后3、一個 C 語言程序是由_B 。( A)一個主程序和若干子程序組成( B)函數組成( C)若干過程組成( D)若干子程序組成4、一個 C 程序的執行是從 A_ 。( A ) 本 程 序 的 main 函 數 開 始 , 到
6、 main 函 數 結 束( B)本程序文件的第一個函數開始,到本程序文件的最后一個函數結束( C ) 本 程 序 的 main 函 數 開 始 , 到 本 程 序 文 件 的 最 后 一 個 函 數 結 束( D ) 本 程 序 文 件 的 第 一 個 函 數 開 始 , 到 本 程 序 main 函 數 結 束5、以下敘述不正確的是_D_ 。( A)一個 C 源程序可由一個或多個函數組成( B ) 一 個 C 源 程 序 必 須 包 含 一 個 main 函 數( C)C 程序的基本組成單位是函數( D)在 C 程序中,注釋說明只能位于一條語句后面(二)填空題:1 、 一 個 C 源 程
7、序 中 至 少 包 括 一 個_main函 數 _ 。2、在一個C源程序中,注釋部分兩側的分界符分別為_/*_和_*/_。第二章數據描述與基本操作一、主要知識點(一)C的基本數據類型節基本類型數據類型構造類型指針類型空 類 型 (void)()整 型字 符 型 (char)實型(浮點型)枚舉類型數組類型結 構 類 型 (struct)共 用 類 型 (union)文 件 類 型 (FILE)短 整 型 ( short )整 型(int)長 整 型(long)單 精 度 型(float)雙 精 度 型(double)1、常量定義:在程序運行過程中,其值不能被改變的量稱為常量。常量常區 分 不 同
8、 的 類 型 , 如 12 、 0 、 -3 為 整 型 常 量 , a、 D為 字 符 常 量 。2、符號常量:用一個標識符代表一個常量的,稱為符號常量,即標識符形式的常量。常量不同于變量,它的值在作用域內不能改變,也不能再被賦值。例 1:已知商品的單價及數量求商品的總價值。#definePRICE30main()int num=10,total;total=num*PRICE;printf( total=%d ,total);輸 出 結 果 : total=300詳 解 :1 、 程 序 中 用 #define 命 令 行 定 義 PRICE 代 表 常 量 30 , 此 后 凡 在 此
9、文 件 中 出現的 PRICE 都代表 30,可以和常量一樣進行運算。2、符號常量不同于變量,它的值在其作用域內不能改變,也不能再被賦值。如再用以下賦值語句給 PRICE賦值:PRICE=40;是錯誤的。(三)變量1、變量定義:其值可以改變的量稱為變量。2、標識符的命名規范和其它高級語言一樣,用來標識變量名、符號常量名、函數名、數組名、類型名、文件名的有效字符序列稱為標識符,語言中的標識符命名規范為:變量名只能由字母、數字和下劃線三種字符組成,且第一個字符必須為字母或下劃線。C語言中標識符的長度(字符個數)無統一規定,隨系統而不同。許多系統(如 IBM PC 的 MS C)取前 7個字符,假如
10、程序中出現的變量名長度大于 7 個字符,則只有前面 7個字符有效,后面的不被識別。 語 言 有 32 個 關 鍵 字( 例 如 if 、 else 、 while )它 們 已 有 專 門 含 義 ,不 應 用采用與它們同名的變量名。 C語言將大寫字母和小寫字母認為是兩個不同字。例 2:在下列符號中,可以選用哪些作變量名?哪些不可以?a3B3aB+a-b*x$_ b5_ifnext_daye_2OK?integerMAXNUMBERi*j答 案 : _ b5_a3Bnext_daye_2MAXNUMBER可 作 變 量 名 , 其 它的作變量名不可以。詳 解 : MAXNUMBER 可作變量名
11、。習慣上符號常量名用大寫,變量名用小寫以示區別,但大寫字母作變量名并無錯誤。 if 、 integer屬 于 保 留 字 , 保 留 字 不 可 作 變 量 名 。 +a-b*x$OK?i*j不 可 作 變 量 名 ,因 為 變 量 名 只 能 由 字 母 、數字和下劃線三種字符組成。 3aB 不 可 作 變 量 名 , 因 為 變 量 名 的 第 一 個 字 母 必 須 為 字 母 或 下 劃 線 。(四)整型數據1、整型常量整型常量即整常數。C語言整常數可用以下三種表示形式。十進制表示。如 231、 -56.478八進制表示。以0開頭的數是八進制數。如0123即(123)8=1*82+2*
12、81+3*80 =64+16+3=83。十六進制表示。以0x 開 頭 的 數 是16 進制。如0x123即(123)16 =1*162+2*161 +3*160 =256+32+3=291。2、整型變量整型變量分為:基本型、短整型、長整型、和無符號型四種。 基 本 型 , 以 int表 示 短 整 型 , 以 short int表 示 或 以 short表 示 長 整 型 , 以 long int表 示 , 或 以 long表 示 無 符 號 型 ,存 儲 單 元 中 全 部 二 進 制 位 (bit)用 作 存 放 數 本 身 ,而 不 包 括 符 號 。無 符 號 型 中 又 分 為 無
13、符 號 整 型 、無 符 號 短 整 型 和 無 符 號 長 整 型 ,分 別 以 unsignedint、 unsigned short和 unsigned long表 示 。3、整型數據的取值范圍C 標準沒有具體規定各類型所占內存字節數,各種機器處理上有所不同,以IBMPC為例,數的范圍如表 2.1 所示。表 2.1所占位數數的范圍Int16-32768 32767即-215(215-1 )shortint16-32768 32767即-215(215-1 )Longint32-2147483648 2147483647即 -2 31( 231-1)Unsignedint160 65535
14、即 0( 216-1)Unsigned short160 65535即 0( 216-1)Unsigned long320 4294967295即 0(232-1 )4、整型常量的分類 一 個 整 常 量 ,如 果 其 值 在 -32768 32767范 圍 內 ,認 為 它 是 int型 ,它 可 以賦 值 給 int型 和 long int型 變 量 。一個整常量,如果其值超過了上述范圍,而在-2147483648 2147483647范 圍 內 , 則 認 為 它 是 long int型 , 可 以 將 它 賦 值 給 一 個 long int型 變 量 。 如 果 某 一 計 算 機
15、系 統 的 C 版 本 確 定 的 shortint 與 int型 在 內 存 中 占 據 的 長度 相 同 , 則 一 個 int型 的 常 量 出 同 時 一 個 short int型 常 量 。 常 量 中 無 unsigned型 。但 一 個 非 負 值 的 整 常 量 可 以 賦 值 給 unsigned型 整 變量 ,只 要 它 的 范 圍 不 超 過 變 量 的 取 值 范 圍 即 可 。例 如 :將 50000賦 給 一 個 unsignedint型 變 量 是 可 以 的 , 而 將 70000賦 給 它 是 不 行 的 ( 溢 出 )。 在 一 個 整 常 量 后 面 加
16、一 個 字 母 l 或 L , 則 認 為 是 long int型 常 量 。(五)實型數據1、實型常量實數在 C 語言中又稱為浮點數。實數有兩種表示形式:十進制形式。它由數字和小數點組成(注意必須有小數點)。例如:0.123 、 .123 、 123.0 、0.0 都是十進制數形式。 指 數 形 式 。 如 123.56e4或 123.56E4都 代 表 123.56*104。但字母e( 或 E)之 前 必 須 有 數 字 , e 后 面 指 數 必 須 為 整 數 。 例 如 : e3 、 2.1e3.5 、 .e3 、 e 等 都 不 是合法的指數形式。例 3:下面四個選項中,均是不合法
17、的浮點數的選項是_ 。( A ) 160.0.12e3( B) 1232e4.2.e5( C ) -.18 123e40.0( D ) -.e3.2341e3答案:B詳 解 : 160. 0.12 -.18 123e4 0.0 .234 1e3 是 實 數 的 十 進 制 形 式 或 指 數形 式 。 e3 2e4.2 .e5 -.e3 不 是 正 確 的 指 數 形 式 。 因 為 正 確 的 字 母 e( 或 E )之 前 必 須 有 數 字 , e 后 面 指 數 必 須 為 整 數 。 對 于 數 據 表 示 形 式 .e5 以 及 -.e3 , e 前的.與-.不是有效的數字表示形式
18、。 123 是整數形式。2、實型變量C 實 型 變 量 分 為 單 精 度 ( float型 ) 和 雙 精 度 ( double型 ) 兩 類 。在 一 般 系 統 中 ,一 個 單 精 度 型 數 據 在 內 存 中 占 4 個 字 節( 32 位 ),一 個 double型 數 據占 8個 字 節 。 一 個 單 精 度 型 變 量 能 接 收 7 位 有 效 數 字 , 一 個 double型 變量 能 接收 17位有效數字,數值的范圍隨機器系統而異。在 IBM PC 中,單精度實 數 的范 圍 約 為 ( 3.4E10 -3 8 3.4E10 3 8),雙 精 度 實 數 的范 圍
19、約 為 (1.7E10-3081.710 3 08 )。例 4 :main( ) float a; a=111111.666666;printf(%f ,a);輸 出 結 果 : 111111.640621詳 解 : 一 個 實 型 常 量 不 分 float型 和 double型 。 一 個 實 型 常 量 可 以 賦 給 一 個 float型 或 double型 變 量 。 根 據 變 量 的 類 型 截 取 實 型 常 量 中 相 應 的 有 效 位 數 字 。 由 于 float型 變 量 只 能 接 收 7 位 有 效 數 字 , 因 此 在 把 111111.666666賦 給 a
20、時 , a 只 接 收 了 111111.6 ,由 于 輸 出 函 數 printf中 的 %f 格 式 表 示 輸 出 小 數 點 后 的6位小數,所以 111111.6后的 40621屬于無意義數字。 如 果 a 改 為 double型 , 則 能 全 部 接 收 上 述 12 位 數 字 。(六)字符型數據1、字符常量:普通形式的字符常量:用引號(即撇號)括起來的一個字符,如 a、 D、 $、 ?等 都 是 字 符 常 量 。轉義符:以“”開頭的字符序列。常用的以“ ”開頭的特殊字符見表 2.2表 2.2字符形式ntvbrfdddxhh例 5:若有說明語句:(A)包含 1個字符(C)包含
21、 3個字符答案:D功 能換 行橫向跳格豎向跳格退 格回 車走紙換頁反斜杠字符單引號字符1到 3位 8進進制所代表的字符1到 2位 16進制數所代表的字符char c= 729 ;則 變 量 c_ 。( B)包含 2個字符( D)說明不合法詳解:后可以有 1 到 3 位 8 進制所代表的字符,本題中后的72屬于8進制所代表的字符,而 9則不屬于 8進制位所代表的字符,則 729中包含了兩個字符常量72和9。而字符常量是用引號(即撇號)括起來的一個字符,所以答案為 D。2、字符變量字符變量是用來存放字符常量的存儲單元。3、字符數據在內存中的存儲形式將一個字符常量存放到一個字符變量中,實際上并不是把
22、該字符本身存放到內存單元中去,而是將該字符的相應的 ASCII 碼值存放到存儲單元中去。例 6:將小寫字母轉換成大寫字母main( ) char c1=a;c1=c1-32;printf( %c ,c1);輸出結果:A詳 解 : a的 ASCII碼 為 97 , 所 以 c1=a;語 句 的 功 能 是 把 97 賦 值 給 了 c1 。 c1=c1-32;語 句 的 功 能 是 把 97-32的 值 65 賦 值 給 c1 。 printf函 數 中 的 %c 格 式 表 示 以 字 符 方 式 輸 出 。ASCII碼 值 為 65 的 字 符 為所以運行結果為:A(七)字符串常量A ,字符
23、常量是用一對雙引號括起來的零個或多個字符序列。C 規定以字符0作 為 字 符 串 結 束 標 志 。 所 以 字 符 串 a實 際 上 包 含 2 個 字 符 : a、 0, 因 此 下面的語句:c= a;把 一 個 串 賦 值 給 一 個 字 符 變 量 c 是 錯 誤 的 。例 7:下面不正確的字符串常量是_ 。( A ) abc( B ) 1212( C) 0( D ) 答案:A詳 解 : abc是 用 單 引 號 引 來 的 , 所 以 abc不 是 正 確 的 字 符 串 常 量 。(八)算術運算符和算術表達式1、基本算術運算符 C語言中有 5個基本算術運算符: (加法運算符。如 3
24、+5、+3)(減法運算符。如 5-2、-)(乘法運算符,如 3*5 )(除法運算符,如 5/3,5.0/3 )(求余運算符,要求%兩側均為整型數據)例 8:在 C 語言中,要求運算數必須是整型的運算符是_。(A)/(B)+(C)!=(D)%答案:D詳解:對于%運算符來說,要求兩側均為整型數據,所以表達式3.5%2與3%2.0是錯誤的。例 9:寫出下列程序的輸出結果main( )pr intf( %d,%dn ,5/3,5%3);printf( %d,%dn,-5/-3,-5%-3);printf( %d,%dn,-5/3,-5%3);printf( %d,%dn ,5/-3,5%-3);輸出結
25、果:1 , 21, -2-1, -2-1, 2詳解:兩個同號整數相除時結果為正整數,如 5/3、-5/-3 的結果值為 1。兩個異號整數相除時結果為負整數,多數機器采取“向零取整”法,即-5/-3=-1 ,5/-3=-1 ,但如果參加運算的兩個數中有一個數為實數時結果為實數。對于求余(%)運算,運算結果與第一個數的符號相同。優先級別:先*、/、%后+、運算量:雙元運算量,前后必須為整數。左右結合性:自左至右參預運算。2、自加自減運算符C語言中有 4種形式的自加自減運算符: i( 先 使 i 加 1后使用)i ( 先 使 用 后 使 i 加 1) i( 先 使 i 減 1后使用)i ( 先 使
26、用 后 使 i 減 1)優先級別:高于算術運算。例 10 : 若 x 和 n 均 是 int型 變 量 , 且 x 和 n 的 初 值 均 為 5 , 則 計 算 表 達 式 后x 的 值 為 _ , n 的 值 為 _ 。x+=n+答案:106詳 解 : 根 據 優 先 級 別 選 運 算 表 達 式 n+ , 因 為 n+ 是 后 綴 表 示 形 式 , 所 以 n 先 參 預 運 算 , 再 運 算 表 達 式 x+=n , 則 x 為 10 , 最 后 n 自 加 為 6 。例 11:main()int x,y,m,n;x=2;y=2m=x+*5;n=+y*5;printf( %d,%
27、d,%d,%d ,x,y,m,n);輸 出 結 果 : 3,3,10,15詳 解 : 對 于 后 綴 來 說 是 先 使 用 后 運 算 , 所 以m 的 值 為x 在 自 加 以 前 的 2*5得 10 賦 值 給 m 后 , x 自 加 變 為 3 。 對 于 前 綴 來 說 是 先 運 算 后 使 用 , 所 以 m 的 值為 x 在 自 加 以 后 的 3*5 得 15 賦 值 給 n。 運 算 量 : 單 元 運 算 量 , 此 運 算 量 必 須 為 變 量 , 所 以 表 達 式 5+ 、 (x+y)+是錯誤的。左右結合性:自右至左參預運算。(九)關系運算1、C 語言提供的關系運
28、算符有:(大于)=(大于或等于)(小于)=(小于或等于)=(等于)是!=(不等于)2、優先級別:關系運算符的優先級別低于純算術類,高于賦值類。后兩個的 優 先 級 小 于 前 四 個 。 如 表 達 式 a+bc+d 完 全 等 價 于 表 達 式 (a+b)(c+d) 。3、運算量:關系運算符是雙元運算符,整型、實型、字符都可以參預運算。4、左右結合性:從左向右的結合方向5、關于關系運算符的進一步說明:關系表達式的值是整型數 0或 1,故也可以將其看成一種整型表達式。例如:int i=1,j=7,a;a=i+(j%4!=0);的 執 行 結 果 為 : a 的 值 為 2 。 要 說 明 x
29、 在 區 間 a,b 中 , 普 通 數 學 中 使 用 表 達 式 a x b 。 但 C 語 言 中 應寫 成 a=x&x278在數學上是不允許的,而在 C中是允許的。按自左至右求解 。字符數據的比較按其 ASCII碼值進行。在判定兩個浮點數是否相等時,由于存儲上的誤差,會得出錯誤的結果。例 如 :1.0/3.0*3.0=1.0該表達式的值為 0。(十)邏輯運算1、C 語言提供的邏輯運算符:& (邏輯與)|(邏輯或)!(邏輯非)2、優先級別:& 與|的優先級別低于關系運算符,高于條件運算符,& 的優先級別高于|,!的優先級別與自加運算符(+)、自減運算符(-)同級。3、運算量:& 和|是雙
30、元運算符,!是單元運算符。例 12 :已 知 x=43,ch= A,y=0 ;則 表 達( x=y&chB&!y)的 值 是(A)0(B)語法錯(C)1(D)“真”_。答案:C詳解:C 語言不提供邏輯性數據“真”和“假”,在進行邏輯運算時,結果不是1就是0。4、左右結合性:& 和|運算符的結合方向為自左至右,!的結合方向為自右至 左 。5、關于邏輯運算符的進一步說明:在一個& 表達式中,若& 的一端為 0,則不必再計算另一端,該表達式的值肯定為 0。在一個|表達式中,若 |的一端為 0,則不必再計算另一端,該表達式的值肯定為 1。例13:寫出下面程序的輸出結果。main( )int x,y,z
31、;x=y=z=0;+x&+y|+z;printf( %d,%d,%d ,x,y,z);x=y=z=0;+x|+y&+z;printf( %d,%d,%d ,x,y,z);輸出結果:1,1, 01,0, 0詳 解 : 因 為 & 的 優 先 級 別 高 于 | , 所 以 表 達 式 +x&+y|+z是 一 個 或 表 達 式 ,根 據 | 的 一 端 為0, 則 不 必 再 計 算 另 一 端 的 原 則 , 先 計 算 表 達 式 +x&+y的 值 為1, 因 為 1 或 任 何 值 都 為 1 , 所 以 表 達 式 +z沒 有 運 算 , 輸 出 結 果 為 : 1 , 1 , 0 。
32、表 達 式 +x|+y&+z也 是 一 個 或 表 達 式 , 同 樣 根 據 |的 一 端 為0, 則 不 必再 計 算 另 一 端 的 原 則 , 先 計 算 表 達 式 +z 的 值 為 1 , 因 為 1 或 任 何 值 都 為 1, 所 以表 達 式 +y&+z 沒 有 運 算 , 輸 出 結 果 為 : 1 , 0 , 0 。(十一)賦值運算1、基本的賦值運算符:= (將賦值運算符右側的表達式賦給左側的變量)2、自反算術賦值運算符C 語言中有 5個基本自反算術賦值運算符: = ( a =3等 價 于 a=a 3) = ( a =3等 價 于 a=a 3 ) = ( a =3等 價
33、于 a=a 3 ) = ( a =3等 價 于 a=a 3 ) = ( a =3等 價 于 a=a 3)3、優先級別:賦值運算符與自反算術賦值運算符屬于同等級別,低于條件運 算 符 , 高 于 逗 號 運 算 符 。 如 對 于 表 達 式 x%=y+3完 全 等 價 于 x%=(y+3)。例 14:若有以下定義,則能使值為 3的表達式是_ 。Int k=7,x=12;( A ) x%=(k%5)( B ) x%=(k-k%5)( C ) x%=k-k%5( D ) (x%=k)-(k%=5)答案:D詳 解 : 表 達 式 (x%=k)-(k%=5)完 全 等 價 于 (x=x%k)-(k=k
34、%5)等 價 于 5-2 , 此 表達式的結果為 3。4、運算量:雙元運算量,賦值運算符與自反算術賦值運算的第一個量必須為 變 量 , 且 = 前 后 必 須 為 整 型 數 據 。 如 對 于 表 達 式a*3+=2是 錯 誤 的 。 因 為 此表 達 式 完 全 等 價 于 (a*3)=(a*3)+2。5、左右結合性:自右至左參預運算。例 15 :若 a 是 int型 變 量 ,且 a 的 初 值 為 6 ,則 計 算 表 達 式 后 a 的 值 為 _ 。a+=a-=a*a答案:-60詳 解 : 表 達 式 從 左 向 右 運 算 , 先 計 算 表 達 式 a=a-36后 a 為 -3
35、0 , 再 計 算 表 達式 a=a+a 后 a 的 值 變 為 -60 。(十二) 條件運算:1、條件運算符的基本形式及功能:條件運算是一種在兩個表達式的值中選擇一個的操作。它的一般形式為:e1?e2:e3它 的 操 作 過 程 為 , 若 e1 為 真 , 則 表 達 式 的 值 為 e2, 若 為 假 表 達 式 的 值 為 e3 。2、優先級別:低于邏輯運算,高于賦值運算。3 、運 算 量 :三 元 運 算 量 , e1 一 般 為 算 術 表 達 式 , e2 、 e3 可 以 是 任 意 類 型 的表 達 式 , 條 件 表 達 式 的 值 的 類 型 為 e2 與 e3 二 者
36、中 類 型 較 高 的 。例 16 : 若 有 條 件 表 達 式 ( exp式 ( exp ) 的 是 _ 。答 案 : exp!=0) ?a+:b-,則以下表達式中能完全等價于表達詳 解 : 對 于 表 達 式 e1?e2:e3 , e1 一 般 為 算 術 表 達 式 、 邏 輯 表 達 式 、 關 系 表達 式 , 結 果 為 1 ( 真 ) 或 0 ( 假 )。 也 可 以 為 數 值 exp , 結 果 為 結 果 為 非 0( 真 )或 0 ( 假 ) 在 本 例 中 與 exp 完 全 等 價 的 表 達 式 是 exp!=0 。4、左右結合性:自右至左運算。例 17:以下程序
37、的運行結果是_ 。 main()int k=4,a=3,b=2,c=1;printf( %d ,ka?k:cb?c:a);答案:1詳 解 : 條 件 表 達 式 是 從 右 向 左 運 算 , 所 以 在 本 例 中 先 計 算 表 達 式cb?c:a的值 , 把 各 數 值 代 入 此 表 達 式 的 值 為 1 。 再 計 算 表 達 式 ka?k:1的 值 , 因 為 km , 則 自 動 取 n 值 , 即 保 證 n 個 字 符 正 常 輸 出 。 f 格 式 : 用 來 輸 出 實 數 ( 包 括 單 、 雙 精 度 ), 以 小 數 形 式 輸 出 。 有 以 下 幾 種用 法 :%f : 不 指 定 寬 度 , 整 數 部 分 全 部 輸 出 并 輸 出 6 位 小 數 。%m.nf: 輸 出 共 占m 列 , 其 中 有n 位 小 數 , 如 數 值 寬 度 小 于m 左 端 補 空格 。%-m.nf: 輸 出 共 占n 列 , 其 中 有n 位 小 數 , 如 數 值 寬 度 小 于m 右 端 補 空格 。 e 格 式 : 以 指 數 形 式 輸 出 實 數 。 可 用 以 下 形 式 :%e : 數 字 部 分 ( 又 稱 尾 數 ) 輸 出 6 位 小 數 , 指 數 部 分 占 5 位 或 4 位 。%m.
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年心理咨詢師資格考試理論試卷及答案
- 2025年信息與通信工程考試試題及答案解析
- 2025年數字媒體藝術與設計考核試卷及答案
- Riluzole-13C6-PK-26124-sup-13-sup-C-sub-6-sub-生命科學試劑-MCE
- Paulomenol-A-生命科學試劑-MCE
- 2025年設備維護與管理考試試題及答案
- 2025年量子計算原理與應用測試題及答案
- 2025年公共事務與危機管理考試試卷及答案
- 英語語法入門:詞性及用法解析
- 酒店經營租賃合同
- 2025年重慶市中考數學試卷真題(含標準答案)
- 農機耕地合同協議書范本
- 精裝分包勞務合同協議書
- T/CNESA 1203-2021壓縮空氣儲能系統性能測試規范
- T/CGMA 031003-2020一般用離心空氣壓縮機
- 2025年四年級下冊美術期末測試題附答案
- 店面借給別人合同協議書
- 圖像編輯基礎Photoshop試題及答案
- 計量經濟學知到智慧樹期末考試答案題庫2025年南開大學
- 2024年深圳市中考歷史試卷真題(含答案解析)
- 公司內部文件管理規定及辦法
評論
0/150
提交評論