freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

安徽工程科技學(xué)院(存儲版)

2025-03-16 10:22上一頁面

下一頁面
  

【正文】 define D1 D NL define D2 D D NL define D3 D D D NL define D4 D D D D NL define S %s main( ) { int a,b,c,d。 PR(D3,a,b,c)。可以看到,程序中寫輸出語句就比較簡單了,只要根據(jù)需要選擇已定義的輸出格式即可。圖 (a)為文件,它有一個 include命令,然后還有其他內(nèi)容(以 A表示)。 【例 】 可以將例 : ( 1)文件 define PR printf define NL \n define D %d define D1 D NL define D2 D D NL define D3 D D D NL define D4 D D D D NL define S %s ( 2)文件 include main( ) { int a,b,c,d。 PR(D3,a,b,c)。但是應(yīng)當(dāng)注意,被包含文件修改后,凡包含此文件的所有文件都要全部重新編譯。 (4)include 命令中,文件名可以用雙撇號或尖括號括起來,如可以在 include 或 include “ ” 都是合法的。但是有時希望對其中一部分內(nèi)容只在滿足一定條件才進(jìn)行編譯,也就是對一部分內(nèi)容指定編譯的條件,這就是“條件編譯”。當(dāng)然以上介紹的只是一種簡單的情況,讀者可以根據(jù)此思路設(shè)計出其他的條件編譯。用條件編譯,則不必一一刪改printf語句,只需刪除前面的一條“ define DEBUG”命令即可,這時所有的用 DEBUG作標(biāo)識符的條件編譯段都使其中的 printf語句不起作用,即起統(tǒng)一控制的作用,如同一個“開關(guān)”一樣。 ( 3) if 表達(dá)式 程序段 1 else 程序段 2 endif 它的作用是當(dāng)指定的表達(dá)式值為真(非零)時就編譯程序段 1,否則編譯程序段2。 else if(c=′A′ c=′Z′) c=c+ 32。 程 序 舉 例 例 編寫兩個函數(shù)分別求兩個整數(shù)的最大公約數(shù)和最小公倍數(shù) 。 } main() { int m,n。 int k,j。 printf(input x :)。j++) if(m%j==0) return(0) return (1)。 。 :56:0902:56:09March 15, 2023 1意志堅強(qiáng)的人能把世界放在手中像泥塊一樣任意揉捏。 :56:0902:56Mar2315Mar23 1越是無能的人,越喜歡挑剔別人的錯兒。 2023年 3月 15日星期三 2時 56分 9秒 02:56:0915 March 2023 1一個人即使已登上頂峰,也仍要自強(qiáng)不息。 , March 15, 2023 閱讀一切好書如同和過去最杰出的人談話。 :56:0902:56Mar2315Mar23 1世間成事,不求其絕對圓滿,留一份不足,可得無限完美。 :56:0902:56:09March 15, 2023 1他鄉(xiāng)生白發(fā),舊國見青山。 for(j=2。} return (flag)。 函數(shù)流程圖如圖 。 k=max(x,y)。當(dāng)條件編譯段比較多時,目標(biāo)程序長度可以大大減少。 while(c=str[i]!=′\0′) { i++。 endif 如果在此之前未對 RUN定義,則輸出 x、 y、z的值。的確,這是可以的??梢杂靡韵碌臈l件編譯來處理: ifdef CMPUTER_A define INTEGRE_SIZE 16 else define INTEGER_SIZE 32 endif 即如果 COMPUTER_A在前面已被定義過,則編譯下面的命令行: define INTEGER_SIZE 16 否則,編譯下面的命令行: define INTEGER_SIZE 32 如果在這組條件編譯命令之前曾出現(xiàn)以下命令行: define COMPUTER_A 0 或?qū)?COMPUTER_A定義為任何字符串,甚至是 define COMPUTER_A 則預(yù)編譯后程序中的 INTEGER_SIZE都用 16代替,否則都用 32代替。因此,如果 態(tài)變量,它也在 ,不必用 extern聲明。例如,上面的問題也可以這樣處理,見圖 。當(dāng)然不用“ .h”為后綴,而用“ .c”為后綴或者沒有后綴也是可以的,但用“ .h”作后綴更能表示此文件的性質(zhì)。 PR(D1,a)。這樣每個人就可以不必重復(fù)定義這些符號常量。 C語言提供了 include命令用來實現(xiàn)“文件包含”的操作。以 D1代表輸出完 1個整數(shù)后換行, D2代表輸出 2個整數(shù)后換行, D3代表輸出 3個整數(shù)后換行, D4代表輸出 4個整數(shù)后換行。 PR(D1,a)。 請仔細(xì)分析以上兩種方法。如: define MAX(x,y) (x)(y)?(x) :(y) main( ) { int a,b,c,d,t。v=*5926*r*r*r。V=*PI*R*R*R main( ) { float r,l,s,v。宏定義時,字符串可以是任何類型的數(shù)據(jù)。但是帶參的宏定義與函數(shù)是不同的。 為了得到這個結(jié)果,應(yīng)當(dāng)在定義時,在字符串中的形式參數(shù)外面加一個括弧。 } 運(yùn)行結(jié)果如下: r= area= 賦值語句“ area=S(a)”;經(jīng)宏展開后為 area=*a*a。在程序中用了 S( 3, 2),把 2分別代替宏定義中的形式參數(shù) a、 b,即用 3*2代替 S( 3, 2),因此賦值語句展開為 area=S(3,2); 對帶參的宏定義是這樣展開置換的:在程序中如果有帶實參的宏(如 S( 3, 2)),則按 define命令行中指定的字符串從左到右進(jìn)行置換。 } 運(yùn)行情況如下: L= S= ? 經(jīng)過宏展開后, printf函數(shù)中的輸出項 L被展開為 2**, S展開為 **,printf函數(shù)調(diào)用語句展開為 ? printf(” L=%f\nS=%f\n” ,2**,5926**)。 ? 經(jīng)過宏展開后,該語句為 ? area=*r*r; ? 顯然出現(xiàn)語法錯誤。 例如,定義數(shù)組大小,可以用: # define array_size 1000 int array[array_size]; 先指定 array_size代表常量 1000,因此數(shù)組 array大小為 1000,如果需要改變數(shù)組大小,只需改# define行: # define array_size 500 使用宏定義,可以提高程序的通用性。 宏定義 用一個指定的標(biāo)識符(即名子)來代表一個字符串,它的一般形式為 # define 標(biāo)識符 字符串 這就是已經(jīng)介紹過的定義符號常量。若程序中用# include命令包含一個文件“ ”,則在預(yù)處理時將 代替該命令)。在前面幾章中曾多次使用過# include命令,并提到過:# include命令所指定的“頭文件”中包含有調(diào)用庫函數(shù)時所需的信息。 Extern聲明的形式就是在函數(shù)原型基礎(chǔ)上加關(guān)鍵字 extern(見本例 main函數(shù)中的聲明形式)。從圖中可以看到,應(yīng)該使 str[0]賦給 str[0],str[1]str[1], str[2]str[2], str[3]str[3],然后, str[5]str[4], …… 請讀者注意分析如何控制 i和 j的變化,以便使被刪除的字符不保留在原數(shù)組中。 str[j]= \0 ; } (文件 4) print_string(char str[ ]) /*定義外部函數(shù)print_string*/ { printf(%s ,str)。 ? 如函數(shù)首部可以寫為 ? extern int fun (int a, int b) ? 這樣,函數(shù) fun 就可以為其他文件調(diào)用。 6. 8 內(nèi)部函數(shù)和外部函數(shù) 同一個源程序文件中的函數(shù)之間是可以互相調(diào)用的,不同源程序文件中的函數(shù)之間也是可以互相調(diào)用的,根據(jù)需要我們也可以指定函數(shù)不能被其他文件調(diào)用。 外部存儲類型變量具有靜態(tài)性。 寄存器存儲類型 關(guān)鍵字 register表示變量是寄存器存儲類型 。 變量的存儲方式 C語言中的變量不僅有類型屬性,而且還有存儲類別的屬性。 關(guān)于局部變量的作用域需要說明以下幾點。i0。 sort(a,5)。 for(i=0。 ( 1) 對 5個數(shù)兩兩比較 , 如果相臨的兩個數(shù)不是從小到大排列的 , 則交換使之變?yōu)閺男〉酱笈帕?, 比較結(jié)束后最大值在序列底部 , 于是得到序列 (3,8,4,1,9)。 用數(shù)組名作為函數(shù)參數(shù)應(yīng)注意以下幾點 。x[1]=temp。 } 程序運(yùn)行的結(jié)果為: 數(shù)組名作函數(shù)的參數(shù) 數(shù)組名代表數(shù)組的首地址 , 在數(shù)組名作為函數(shù)的參數(shù)時 , 形參和實參都應(yīng)該是數(shù)組名 。 else return y。 scanf(%d,n)。 float fac(int n) { float f。 } float f2(x,h) float x,h。 main()調(diào)用函數(shù) f2(), 在函數(shù)f2()的執(zhí)行過程中又調(diào)用了函數(shù) f1(), main()嵌套調(diào)用了函數(shù) f1()。 ( 2) 實參和形參的結(jié)合方向是自右向左的 。 函數(shù)調(diào)用前后實參 、 形參的變化情況如圖 。 ① 給函數(shù)體內(nèi)的變量分配存儲空間 。 { float z。下面用例。 ( 2) 實際參數(shù) 在調(diào)用函數(shù)時 , 函數(shù)名后的參數(shù)稱作實際參數(shù) , 簡稱實參 。如例 c?sum(m)中的 m就是有確定值的實際參數(shù) , sum(m)是對函數(shù)的調(diào)用 , 調(diào)用結(jié)束后得到返回值賦值給變量 c。 a=1,b=2。 main() { int m。 函數(shù)的調(diào)用 當(dāng)函數(shù)被調(diào)用時 , 函數(shù)對應(yīng)的程序代碼才開始執(zhí)行 , 才能實現(xiàn)相應(yīng)的函數(shù)功能 。 ( 1) 返回一個值給主調(diào)函數(shù) 。 { float temp。 函數(shù)頭給出函數(shù)相關(guān)信息(類似“黑盒子”中的入口和出口),而函數(shù)體具體實現(xiàn)函數(shù)的功能。 2. 從函數(shù)形式分 從函數(shù)形式角度 , 函數(shù)可分為以下兩類 。 一個 C語言程序是若干函數(shù)構(gòu)成的 , 在構(gòu)成 C程序的諸多函數(shù)中有而且只有一個主函數(shù) 。 ? ( 6)從函數(shù)的形式看,函數(shù)分兩類: ? ①無參函數(shù)。一個源文件可以為多個 C程序公用。要善于利用函數(shù)庫中的函數(shù),以減少重復(fù)編寫程序段的工作量。 圖 模塊化程序設(shè)計 大任務(wù) 小任務(wù) 小任務(wù) 小任務(wù) 小任務(wù) 小任務(wù) 小任務(wù) 小任務(wù) 小任務(wù) 小任務(wù) 小任務(wù) 小任務(wù) 小任務(wù) ? 在程序設(shè)計中,常將一些常用的功能模塊編寫成函數(shù),放在函數(shù)庫中供公共選用。這樣可以分別編寫、分別編譯,提高調(diào)度效率。 ? ②用戶自己定義的函數(shù),用戶自己編寫的用以解決特定問題。 C語言程序結(jié)構(gòu) 函數(shù)是構(gòu)成 C語言程序的基本功能模塊 ,它完成一項相對獨立的任務(wù) 。 具體使用方法將在本章中詳細(xì)介紹 。 函數(shù)的定義 函數(shù)由兩部分構(gòu)成:函數(shù)頭和函數(shù)體。 float max(x, y) float x, y。 return語句的功能有 3個 。 除需要分析已知和未知外 , 還需要確定已知和未知的數(shù)據(jù)類型 , 從而完成對函數(shù)頭的設(shè)計 。 例 函數(shù)聲明示例 。 int k。 } 函數(shù)調(diào)用的一般形式 1. 函數(shù)調(diào)用的一般形式 函數(shù)名 ( 實際參數(shù)表列 ) 實際參數(shù)表列是函數(shù)入口參數(shù)的實際值 。一旦函數(shù)結(jié)束運(yùn)行 , 系統(tǒng)馬上釋放相應(yīng)的存儲單元 。 3.實參和形參的結(jié)合方式 C語言中實參和形參的結(jié)合采取的是“單向值傳遞”方式,只有實參傳遞參數(shù)給形參,形參不回傳參數(shù)給實參。 } float add( x, y) floa
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1