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

正文內(nèi)容

安徽工程科技學院-資料下載頁

2025-02-24 10:22本頁面
  

【正文】 文件( )與其所在的文件(即用 include命令的源文件 ),在預編譯后已成為同一文件(而不是兩個文件)。因此,如果 態(tài)變量,它也在 ,不必用 extern聲明。 條件編譯 一般情況下,源程序中所有的行都參加編譯。但是有時希望對其中一部分內(nèi)容只在滿足一定條件才進行編譯,也就是對一部分內(nèi)容指定編譯的條件,這就是“條件編譯”。有時,希望當滿足某條件時對一組語句進行編譯,而當條件不滿足時則編譯另一組語句。 條件編譯命令有以下幾種形式: ( 1) ifdef 標識符 程序段 1 else 程序段 2 endif 它的作用是當所指定的標識符已經(jīng)被 define命令定義過,則在程序編譯階段只編譯程序段 1,否則編譯程序段 2。其中 else部分可以沒有,即 ifdef 標識符 程序段 1 endif 這里的“程序段”可以是語句組,也可以是命令行。這種條件編譯對于提高 C源程序的通用性是很有好處的。如果一個 C源程序在不同計算機系統(tǒng)上運行,而不同的計算機又有一定的差異(例如,有的機器以 16位( 2個字節(jié))來存放一個整數(shù),而有的則以 32位存放一個整數(shù)),這樣往往需要對源程序作必要的修改,這就降低了程序的通用性??梢杂靡韵碌臈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 則預編譯后程序中的 INTEGER_SIZE都用 16代替,否則都用 32代替。 這樣,源程序可以不必作任何修改就可以用于不同類型的計算機系統(tǒng)。當然以上介紹的只是一種簡單的情況,讀者可以根據(jù)此思路設(shè)計出其他的條件編譯。 例如,在調(diào)試程序時,常常希望輸出一些所需的信息,而在調(diào)試完成后不再輸出這些信息??梢栽谠闯绦蛑胁迦胍韵碌臈l件編譯段: ifdef DEBUG printf(” x=%d,y=%d,z=%d\n,” ,x,y,z)。 endif 如果在它的前面有以下命令行: define DEBUG 則在程序運行時輸出 x、 y、 z的值,以便調(diào)試時分析。測試完成后只需將這個 define命令行刪去即可。有人可能覺得不用條件編譯也可達此目的,即在調(diào)試時加一批 printf語句,調(diào)試后一一將 printf語句刪去。的確,這是可以的。但是,當調(diào)試時加的 printf語句比較多時,修改的工作量是很大的。用條件編譯,則不必一一刪改printf語句,只需刪除前面的一條“ define DEBUG”命令即可,這時所有的用 DEBUG作標識符的條件編譯段都使其中的 printf語句不起作用,即起統(tǒng)一控制的作用,如同一個“開關(guān)”一樣。 ( 2) ifndef 標識符 程序段 1 else 程序段 2 endif 只是第一行與第一種形式不:將“ ifdef”改為“ ifndef”。它的作用是若標識符未被定義過則編譯程序段 1,否則編譯程序段 2。這種形式與第一種形式的作用相反。 以上兩種形式用法差不多,根據(jù)需要任選一種,視方便而定。例如,上面調(diào)試時輸出信息的條件編譯也可以改為 ifndef RUN printf(” x=%d,z=%d\n” ,x,y,z” )。 endif 如果在此之前未對 RUN定義,則輸出 x、 y、z的值。調(diào)試完成后,在運行之前,加以下命令行: define RUN 則不再輸出 x、 y、 z的值。 ( 3) if 表達式 程序段 1 else 程序段 2 endif 它的作用是當指定的表達式值為真(非零)時就編譯程序段 1,否則編譯程序段2。可以事先給定一定的條件,使程序在不同的條件下執(zhí)行不同的功能。 【例 】 輸入一行字母字符,根據(jù)需要設(shè)置條件編譯,使之能將字母全改為大寫輸出,或全改為小寫字母輸出。 define LETTER 1 main( ) { char str[20]= C Language,c。 int i。 i=0。 while(c=str[i]!=′\0′) { i++。 if LETTER if(c=′a′ c=′z′) c=c32。 else if(c=′A′ c=′Z′) c=c+ 32。 endif printf(%c,c)。 } } 運行結(jié)果為: C LANGUAGE 現(xiàn)在先定義 LETTER為 1,這樣在對條件編譯命令進行預處理時,由于 LETTER為真(非零),則對第一個 if語句進行編譯,運行時使小寫字母變大寫。如果將程序第一行改為 define LETTER 0 則在預處理時,對第二個 if語句進行編譯處理,使大寫字母變成小寫字母(大寫字母與相應的小寫字母的 ASCII代碼差 32)。此時運行情況為 c language 有的讀者可能會問,不用條件編譯命令而直接用 if語句也能達到要求,用條件編譯命令有什么好處呢?的確,此問題完全可以不用條件編譯處理,但那樣做目標程序長(因為所有語句都編譯),運行時間長(因為在程序運行時對if語句進行測試)。而采用條件編譯,可以減少被編譯的語句,從而減少目標程序的長度,減少運行時間。當條件編譯段比較多時,目標程序長度可以大大減少。 本節(jié)介紹的預編譯功能是 C語言特有的,有利于程序的可移植性,增加程序的靈活性。 程 序 舉 例 例 編寫兩個函數(shù)分別求兩個整數(shù)的最大公約數(shù)和最小公倍數(shù) 。 int max(int x,int y) { int k。 for(k=xy?x:y。k=1。k) if(x%k==0y%k==0) return(k)。 } int min(int x,int y) { int k。 k=max(x,y)。 return (x*y/k)。 } main() { int m,n。 printf(input m,n:)。 scanf(%d ,%d,m,n)。 printf(%d,%d\n,max(m,n),min(m,n))。 } 例 編寫函數(shù)判斷整數(shù) m是否為素數(shù) 。 設(shè)函數(shù)名是 f, 函數(shù)的形參只有一個 m, 它代表被判斷的整數(shù) , 函數(shù)需返回一個邏輯量 flag,代表是素數(shù)或不是素數(shù) , 設(shè)返回整數(shù) 1和 0代表是和不是 。 函數(shù)流程圖如圖 。 fla g= 1 k= m j=2 ~ k j 是 m 的因子 1 0 fla g= 0 b r e a k ret urn fla g 圖 例 NS流程圖 include int f(int m) { int flag=1。 int k,j。 k=sqrt(m)。 for(j=2。j=k。j++) if(m%j==0) {flag=0。break。} return (flag)。 } 編寫主函數(shù)完成函數(shù)的功能: main() { int x。 printf(input x :)。 scanf(%d,x)。 if(f(x)==1) printf(yes\n)。 else printf(no\n)。 } 如果將函數(shù) f()改為: int f(int m) { int k,j。 k=sqrt(m)。 for(j=2。j=k。j++) if(m%j==0) return(0) return (1)。 } 靜夜四無鄰,荒居舊業(yè)貧。 , March 15, 2023 雨中黃葉樹,燈下白頭人。 02:56:0902:56:0902:563/15/2023 2:56:09 AM 1以我獨沈久,愧君相見頻。 :56:0902:56Mar2315Mar23 1故人江海別,幾度隔山川。 02:56:0902:56:0902:56Wednesday, March 15, 2023 1乍見翻疑夢,相悲各問年。 :56:0902:56:09March 15, 2023 1他鄉(xiāng)生白發(fā),舊國見青山。 2023年 3月 15日星期三 上午 2時 56分 9秒 02:56: 1比不了得就不比,得不到的就不要。 。 2023年 3月 上午 2時 56分 :56March 15, 2023 1行動出成果,工作出財富。 2023年 3月 15日星期三 2時 56分 9秒 02:56:0915 March 2023 1做前,能夠環(huán)視四周;做時,你只能或者最好沿著以腳為起點的射線向前。 上午 2時 56分 9秒 上午 2時 56分 02:56: 沒有失敗,只有暫時停止成功!。 , March 15, 2023 很多事情努力了未必有結(jié)果,但是不努力卻什么改變也沒有。 02:56:0902:56:0902:563/15/2023 2:56:09 AM 1成功就是日復一日那一點點小小努力的積累。 :56:0902:56Mar2315Mar23 1世間成事,不求其絕對圓滿,留一份不足,可得無限完美。 02:56:0902:56:0902:56Wednesday, March 15, 2023 1不知香積寺,數(shù)里入云峰。 :56:0902:56:09March 15, 2023 1意志堅強的人能把世界放在手中像泥塊一樣任意揉捏。 2023年 3月 15日星期三 上午 2時 56分 9秒 02:56: 1楚塞三湘接,荊門九派通。 。 2023年 3月 上午 2時 56分 :56March 15, 2023 1少年十五二十時,步行奪得胡馬騎。 2023年 3月 15日星期三 2時 56分 9秒 02:56:0915 March 2023 1空山新雨后,天氣晚來秋。 上午 2時 56分 9秒 上午 2時 56分 02:56: 楊柳散和風,青山澹吾慮。 , March 15, 2023 閱讀一切好書如同和過去最杰出的人談話。 02:56:0902:56:0902:563/15/2023 2:56:09 AM 1越是沒有本領(lǐng)的就越加自命不凡。 :56:0902:56Mar2315Mar23 1越是無能的人,越喜歡挑剔別人的錯兒。 02:56:0902:56:0902:56Wednesday, March 15, 2023 1知人者智,自知者明。勝人者有力,自勝者強。 :56:0902:56:09March 15, 2023 1意志堅強的人能把世界放在手中像泥塊一樣任意揉捏。 2023年 3月 15日星期三 上午 2時 56分 9秒 02:56: 1最具挑戰(zhàn)性的挑戰(zhàn)莫過于提升自我。 2023年 3月 上午 2時 56分 :56March 15, 2023 1業(yè)余生活要有意義,不要越軌。 2023年 3月 15日星期三 2時 56分 9秒 02:56:0915 March 2023 1一個人即使已登上頂峰,也仍要自強不息。 上午 2時 56分 9秒 上午 2時 56分 02:56: MOMODA POWERPOINT Lorem ipsum dolor sit amet, consectetur adipiscing elit. Fusce id urna blandit, eleifend nulla ac, fringilla purus. Nulla iaculis tempor felis ut cursus. 感 謝 您 的 下 載 觀 看 專家告訴
點擊復制文檔內(nèi)容
教學課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1