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

正文內容

c程序設計教程(下)清華ppt-資料下載頁

2025-01-19 09:03本頁面
  

【正文】 ifdef PI s=2*PI*r。 else define PI s=2*PI*r。 endif printf(s=%f\n, s)。 } 78 格式三 ifndef 標識符 程序段 1 else 程序段 2 endif 或者 ifndef 標識符 程序段 1 endif 79 2.條件編譯的用途 ⑴ 便于程序調試 ⑵ 增強程序的可移植性 例如,下面的程序段: define TYPE 2 if TYPE==2 define SIZE 32 else define SIZE 16 endif 80 【 例 】 編寫一個程序:定義一個判斷字符是大寫字母的宏、一個判斷字符是小寫字母的宏以及實現(xiàn)大小寫字母相互轉換的宏,并將用戶輸入的一個字符串中的大小寫字母互換。 include define isupper(c) ((c)=39。A39。amp。amp。(c)=39。Z39。) define islower(c) ((c)=39。a39。amp。amp。(c)=39。z39。) define tolower(c) (isupper(c)?((c)+(39。a39。- 39。A39。)):(c)) define toupper(c) (islower(c)?((c)- (39。a39。- 39。A39。)):(c)) 81 main() { char s[20]。 int i。 printf(Input the string:)。 scanf(%s, s)。 for(i=0。s[i]。i++) if(isupper(s[i])) s[i]=tolower(s[i])。 else if (islower(s[i])) s[i]=toupper(s[i])。 printf(Output the string:%s\n, s)。 } 82 【 例 】 編寫一個程序,用戶輸入一個字符串,可以原樣輸出,也可逆向輸出,使用條件編譯的方法加以控制。 include define CONVERSE main() { char str[50], *p。 p=str。 printf(Input the string:)。 scanf(%s, str)。 printf(Output the string:)。 83 ifndef CONVERSE printf(%s\n, str)。 /*原樣輸出 */ else p=str+strlen(str)- 1。 /*逆序輸出 */ while(p=str) printf(%c, *p-- )。 printf(\n)。 endif } 84 第 11章 位運算 一 二 三 85 字節(jié)與位 對于大多數(shù)計算機系統(tǒng)而言,字節(jié)是由 8個更小的叫作“位”的單位組成的,一個位可取 0或 1。 86 位運算符 C語言提供了 6種位運算符 運算符 含義 運算符 含義 amp。 按位與 ~ 取反 | 按位或 左移 ^ 按位異或 右移 87 1.按位與運算符 amp。 表 按位與真值表 b1 b2 b1amp。b2 0 0 0 0 1 0 1 0 0 1 1 1 88 【 例 】 計算一個給定整數(shù)的二進制碼中 1的個數(shù)。 int GetOneNumber(unsigned int m) { int num=0。 while(m!=0) { if(m%2==1) num++。 m=m/2。 } return num。 } 89 2.按位或運算符 | 表 按位或真值表 b1 b2 b1|b2 0 0 0 0 1 1 1 0 1 1 1 1 90 3.按位異或運算符 ^ 表 按位異或真值表 b1 b2 b1^b2 0 0 0 0 1 1 1 0 1 1 1 0 91 4.取反運算符 ~ 取反運算符是位運算符中唯一的一個單目運算符,它用來對數(shù)據的各個二進制位求反,即 1變 0, 0變 1。 例如 ~053=0324: 053?00101011 ; ~053?11010100=0324 92 5.左移運算 a的值 a的補碼 a1 a2 溢出部分 結果 溢出部分 結果 64 0100000 0 10000000 01 00000000 127 01111111 0 111111110 01 11111100 93 6.右移運算 【 例 】 將 a進行循環(huán)右移,如原來右端 3位移到最左端 3位。 1101111110101011 0111101111110101 main() { unsigned a, b, c。 int n。 scanf(a=%o, n=%d, amp。a, amp。n)。 b=a(16n)。 c=an; c=c|b。 printf(“%o\n%o”, a, c)。 } 94 7.位運算符與賦值運算符的組合 復合賦值運算符 amp。= 例: a amp。= b 相當于 a=a amp。 b |= 例: a |= b 相當于 a=a | b = 例: a = b 相當于 a=a b = 例: a = b 相當于 a=a b ^= 例: a ^= b 相當于 a=a ^ b 95 位運算舉例 【 例 】 右移運算和邏輯與運算結合示例。 main(){ unsigned a, b。 printf(input a number: )。 scanf(%d, amp。a)。 b=a5。 b=bamp。15。 printf(a=%d\tb=%d\n, a, b)。 } 96 【 例 】 左移運算和邏輯與運算結合示例 . main(){ char a=39。a39。, b=39。b39。 int p, c, d。 p=a。 p=(p8)|b。 d=pamp。0xff。 c=(pamp。0xff00)8。 printf(a=%d\nb=%d\nc=%d\nd=%d\n, a, b,c, d)。 } 97 【 例 】 寫一個函數(shù),計算所使用的系統(tǒng)中整型數(shù)據的長度 int intlen() { int i=0。 unsigned int v=~0。 while(v!=0) { v=v1。 i++。 } return i。 } 98 【 例 】 將十進制數(shù)轉換為二進制數(shù)。 include int main() { int x, i。 scanf(%d, amp。x)。 for(i=31。i=0。i) printf(%d, xiamp。1)。 system(pause)。 } 99 【 例 】 編寫一個函數(shù) invert_end(),反轉一個值中最后 n位,并將結果返回。 intinvert_end(int num, int bits) { int mask=0。 int bitval=1。 while(bits 。0) { mask|=bitval。 bitval=1。 } return num^mask。 } 100 謝 謝
點擊復制文檔內容
教學課件相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1