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

正文內(nèi)容

第四章程序流程控制語句(編輯修改稿)

2024-10-07 08:16 本頁面
 

【文章內(nèi)容簡介】 case 4: case 6: case 9: case 11: /* 處理 “ 小 ” 月 */ days=30。 break。 case 2: /* 處理 “ 平 ” 月 */ if ( year%4==0 amp。amp。 year%100!=0 || year%400==0 ) days=29。 /* 如果是閏年 */ else days=28。 /* 不是閏年 */ break。 default: /* 月份錯誤 */ printf(Input error!\n)。 days=0。 } if (days!=0) printf(”%d,%d is %ddays\n,year,month,days)。 } 省略 case子句之后的語句 第 33 頁 167。 442 選擇語句 switch語句 ? 省略 break語句 例如:某程序段中, error是進行出錯處理的函數(shù)。 flag=1。 /* error marker */ switch (i) { case 1: case 2: case 3: flag=0。 /* no error */ break。 case 4: flag=1。 /* error 1 */ case 5: error(flag)。 /* error process */ break。 default: flag=2。 /* other error */ } /* 假定函數(shù) error是出錯處理函數(shù) */ 當 i=1, 2, 3 時: flag=0; 退出。 當 i=5 時: flag = 1; 調(diào)用 erorr(flag); 退出。 當 i=4 時: flag = 1; 調(diào)用 error(flag); 退出。 第 34 頁 167。 442 選擇語句 switch語句 ? 例 : 請編寫一個程序計算表達式: data1 op data2的值。 main ( ) { float data1, data2。char op。 /* 定義操作數(shù)、操作符變量 */ printf(Enter your expression:)。 scanf (”%f%c%f”, amp。data1, amp。op, amp。data2)。 /* 輸入表達式 */ switch ( op ) /* 根據(jù)操作符分別進行處理 */ { case ’+’ : /* 處理加法 */ printf(%.2f+%.2f=%.2f\n, data1, data2, data1+data2)。break。 case ’’ : /* 處理減法 */ printf (%.2f%.2f=%.2f\n, data1, data2, data1data2)。break。 case ’*’ : /* 處理乘法 */ printf (%.2f*%.2f=%.2f\n, data1, data2, data1*data2)。break。 case ’/’ : /* 處理除法 */ if ( data2==0 ) /* 若除數(shù)為0 */ printf (Division by zero.\n)。 else printf (%.2f/%.2f=%.2f\n, data1, data2, data1/data2)。 break。 default: /* 輸入其它運算符 */ printf (Unknown operater.\n)。 } } 例 C3_4202 第 35 頁 167。 45 循環(huán)語句 ? 提出問題 提問: 從鍵盤上輸入 10個整數(shù)并求和,怎么編程? 回答: 在程序中寫入 10個 scanf( )語句。 提問: 從鍵盤上輸入 500個整數(shù)并求和,怎么編程? 回答: 這個,嗯 ……??? 不會讓我寫 500個 ...... 老師: 讓我們換一個角度來看待這些問題, 以上問題的實質(zhì)是:將 scanf函數(shù)重復(fù)執(zhí)行 N遍。 學(xué)生: 對!好象是這么回事 ...... 老師: 我們可以引出一個概念“ 循環(huán) ”,簡單而言: 循環(huán) 就是不斷 反復(fù)地執(zhí)行同一段程序。 學(xué)生: 這就是我們今天要學(xué)的新東西? 第 36 頁 167。 45 循環(huán)語句 ?循環(huán) 反復(fù)執(zhí)行同一段程序,直到滿足一定的條件后才停止執(zhí)行該段程序。 ?C語言中控制循環(huán)的語句: ◆ while ◆ for ◆ dowhile 第 37 頁 167。 451 while語句 ? while語句格式 while ( 表達式 ) 語句 ; 說明:語句 部分可以是 簡單語句 ,也可 以是復(fù)合語句 。 ? while語句的執(zhí)行流程 表達式 ? 執(zhí)行 語句 成立 不成立 執(zhí)行 while循環(huán)之后的語句 循環(huán)控制條件 循環(huán)體 第 38 頁 167。 451 while語句 實例 ? 例 從鍵盤輸入 10個整數(shù),求這 10個整數(shù)的和。 include main ( ) { int count,num,total。 /* count:計數(shù)器, num:輸入的整數(shù) */ count=0。 total=0。 /* total:存放累加和 */ while ( count10 ) /* 循環(huán)控制條件 */ { count ++。 /* 循環(huán)體 */ printf (Enter the No.%d=, count)。 scanf (%d, amp。num)。 total += num。 /* 計算累加和 */ } printf(Total=%d\n, total)。 } 例 C3_5101 第 39 頁 167。 451 while語句 實例 ? 例: 分析程序的運行結(jié)果 include main ( ) { int n=0。 while ( n3 ) printf (”n is %d\n”,n)。 n++。 printf(”That\’s all this program does.\n”)。 } 結(jié)果: 程序?qū)⒉煌5拇蛴 ?n is 0”, 直至終止程序 ? 無法正常終止的程序,稱為“ 死循環(huán) ”。 結(jié)論: while語句 循環(huán)體 中,一定要有能夠 對循環(huán)控制條件產(chǎn)生影響的語句 。避免出現(xiàn)“ 死循環(huán) ”現(xiàn)象。 例 C3_51011 { } 第 40 頁 167。 451 while語句 實例 ? 例 1: 分析下列程序段 index=1。 while ( index 5 ) printf(”Good morning!\n”)。 分析: 程序段將無限制打印字符串。 因為循環(huán)中 沒有 任何語句可以改變循環(huán)控制變量 index的初值 1。 第 41 頁 167。 451 while語句 實例 ? 例 2: 分析下列程序段 index=1。 while( index 5 ) printf(”Good morning!\n”)。 分析: 仍有問題,程序改變了 index,但方向錯了。 在 index達到系統(tǒng)能夠處理的最大負數(shù)時,將會產(chǎn)生下溢而終止程序。 結(jié)論: 循環(huán)體中必須有能夠使循環(huán) 正常停止 的條件。 第 42 頁 167。 451 while語句 實例 ? 例 : 從鍵盤中讀入一系列字符,直到輸入字母 a時才停止。 分析: 由于不知道要輸入的字符數(shù)量,只知停止條件是輸入字母 a, 則只能將循環(huán)控制條件設(shè)為 ch!=39。a39。 include main( ) { char ch=39。 39。 。 while ( ch!=39。a39。) putchar( ch = getch( ) ); } 例 C3_5103 改寫: include main( ) { char ch。 while ( (ch = getch( )) !=39。a39。 ) ; } 例 C3_51031 循環(huán)體為空語句 第 43 頁 167。 451 while語句 實例 ? 例 : 對輸入的行和字符進行計數(shù)。 分析: \n作為 行結(jié)束 標記的, DOS中有 [CTRL+Z]作為文件結(jié)束 標記 define EOF 1 include main ( ) { int c,nl=0,nc=0。 while ( ( c = getchar( ) ) != EOF ) { ++ nc。 if ( c == 39。\n39。 ) ++ nl。 } printf(chars=%d, lines=%d\n, nc, nl)。 } 例 C3_5104 定義文件結(jié)束標記 nl行計數(shù)器 nc字符計數(shù)器 進行字符計數(shù) 如果找到 \n, 則行計數(shù) 第 44 頁 167。 451 while語句 實例 ? 例 3: 求 1到 100的之和。 main ( ) { int total=0, i=1。 while ( i = 100 ) { total = total + i。 i ++。 } printf(”Total=%d\n, total)。 } 例 C3_51041 變形 1: while ( i = 100 ) total += i++。 == total+=i。 ++i 變形 2: int i=0。 while ( ++i = 100 ) == ++i。 判斷 i=100 total += i。 變形 3: int i=0。 while ( i++ 100 ) == 判斷 i100; i++ total += i。 變形 4: int i=0。
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1