黄色在线观看视频-黄色在线免费看-黄色在线视频免费-黄色在线视频免费看-免费啪啪网-免费啪啪网站

首頁考試吧論壇Exam8視線考試商城網絡課程模擬考試考友錄實用文檔求職招聘論文下載
2013中考
法律碩士
2013高考
MBA考試
2013考研
MPA考試
在職研
中科院
考研培訓 自學考試 成人高考
四 六 級
GRE考試
攻碩英語
零起點日語
職稱英語
口譯筆譯
申碩英語
零起點韓語
商務英語
日語等級
GMAT考試
公共英語
職稱日語
新概念英語
專四專八
博思考試
零起點英語
托福考試
托業考試
零起點法語
雅思考試
成人英語三級
零起點德語
等級考試
華為認證
水平考試
Java認證
職稱計算機 微軟認證 思科認證 Oracle認證 Linux認證
公 務 員
導游考試
物 流 師
出版資格
單 證 員
報 關 員
外 銷 員
價格鑒證
網絡編輯
駕 駛 員
報檢員
法律顧問
管理咨詢
企業培訓
社會工作者
銀行從業
教師資格
營養師
保險從業
普 通 話
證券從業
跟 單 員
秘書資格
電子商務
期貨考試
國際商務
心理咨詢
營 銷 師
司法考試
國際貨運代理人
人力資源管理師
廣告師職業水平
衛生資格 執業醫師 執業藥師 執業護士
會計從業資格
基金從業資格
統計從業資格
經濟師
精算師
統計師
會計職稱
法律顧問
ACCA考試
注冊會計師
資產評估師
審計師考試
高級會計師
注冊稅務師
國際內審師
理財規劃師
美國注冊會計師
一級建造師
安全工程師
設備監理師
公路監理師
公路造價師
二級建造師
招標師考試
物業管理師
電氣工程師
建筑師考試
造價工程師
注冊測繪師
質量工程師
巖土工程師
造價員考試
注冊計量師
環保工程師
化工工程師
咨詢工程師
結構工程師
城市規劃師
材料員考試
監理工程師
房地產估價
土地估價師
安全評價師
房地產經紀人
投資項目管理師
環境影響評價師
土地登記代理人
繽紛校園 實用文檔 英語學習 作文大全 求職招聘 論文下載 訪談|游戲
計算機等級考試
您現在的位置: 考試吧(Exam8.com) > 計算機等級考試 > 計算機二級 > C語言 > 復習資料 > 正文

2013年計算機等考二級《C語言》復習筆記第三章第4節

來源:考試吧Exam8.com) 2012-11-14 14:40:14 考試吧:中國教育培訓第一門戶 模擬考場

 

  switch語句

  C語言還提供了另一種用于多分支選擇的switch語句, 其一般形式為:

  switch(表達式){

  case常量表達式1: 語句1;

  case常量表達式2: 語句2;

  …

  case常量表達式n: 語句n;

  default : 語句n+1;

  }

  其語義是:計算表達式的值。 并逐個與其后的常量表達式值相比較,當表達式的值與某個常量表達式的值相等時, 即執行其后的語句,然后不再進行判斷,繼續執行后面所有case后的語句。 如表達式的值與所有case后的常量表達式均不相同時,則執行default后的語句。

  void main(){

  int a;

  printf("input integer number: ");

  scanf("%d",&a);

  switch (a){

  case 1:printf("Monday\n");

  case 2:printf("Tuesday\n");

  case 3:printf("Wednesday\n");

  case 4:printf("Thursday\n");

  case 5:printf("Friday\n");

  case 6:printf("Saturday\n");

  case 7:printf("Sunday\n");

  default:printf("error\n");

  }

  }

  本程序是要求輸入一個數字,輸出一個英文單詞。但是當輸入3之后,卻執行了case3以及以后的所有語句,輸出了Wednesday 及以后的所有單詞。這當然是不希望的。為什么會出現這種情況呢?這恰恰反應了switch語句的一個特點。在switch語句中,“case 常量表達式”只相當于一個語句標號, 表達式的值和某標號相等則轉向該標號執行,但不能在執行完該標號的語句后自動跳出整個switch 語句,所以出現了繼續執行所有后面case語句的情況。 這是與前面介紹的if語句完全不同的,應特別注意。為了避免上述情況, C語言還提供了一種break語句,專用于跳出switch語句,break 語句只有關鍵字break,沒有參數。在后面還將詳細介紹。修改例題的程序,在每一case語句之后增加break 語句, 使每一次執行之后均可跳出switch語句,從而避免輸出不應有的結果。

  void main(){

  int a;

  printf("input integer number: ");

  scanf("%d",&a);

  switch (a){

  case 1:printf("Monday\n");break;

  case 2:printf("Tuesday\n"); break;

  case 3:printf("Wednesday\n");break;

  case 4:printf("Thursday\n");break;

  case 5:printf("Friday\n");break;

  case 6:printf("Saturday\n");break;

  case 7:printf("Sunday\n");break;

  default:printf("error\n");

  }

  }

  在使用switch語句時還應注意以下幾點:

  1.在case后的各常量表達式的值不能相同,否則會出現錯誤。

  2.在case后,允許有多個語句,可以不用{}括起來。

  3.各case和default子句的先后順序可以變動,而不會影響程序執行結果。

  4.default子句可以省略不用。程序舉例:

  輸入三個整數,輸出最大數和最小數。

  void main(){

  int a,b,c,max,min;

  printf("input three numbers: ");

  scanf("%d%d%d",&a,&b,&c);

  if(a>b)

  {max=a;min=b;}

  else

  {max=b;min=a;}

  if(max

  max=c;

  else

  if(min>c)

  min=c;

  printf("max=%d\nmin=%d",max,min);

  1

  本程序中,首先比較輸入的a,b的大小,并把大數裝入max,小數裝入min中,然后再與c比較,若max小于c,則把c賦予max;如果c小于min,則把c賦予min。因此max內總是最大數,而min內總是最小數。最后輸出max和min的值即可。 計算器程序。用戶輸入運算數和四則運算符, 輸出計算結果。

  void main(){

  float a,b,s;

  char c;

  printf("input expression: a+(-,*,/)b \n");

  scanf("%f%c%f",&a,&c,&b);

  switch(c){

  case '+': printf("%f\n",a+b);break;

  case '-': printf("%f\n",a-b);break;

  case '*': printf("%f\n",a*b);break;

  case '/': printf("%f\n",a/b);break;

  default: printf("input error\n");

  }

  }

  本例可用于四則運算求值。switch語句用于判斷運算符, 然后輸出運算值。當輸入運算符不是+,-,*,/時給出錯誤提示。

  循環結構程序

  循環結構是程序中一種很重要的結構。其特點是, 在給定條件成立時,反復執行某程序段,直到條件不成立為止。 給定的條件稱為循環條件,反復執行的程序段稱為循環體。 C語言提供了多種循環語句,可以組成各種不同形式的循環結構。

  while語句

  while語句的一般形式為: while(表達式)語句; 其中表達式是循環條件,語句為循環體。

  while語句的語義是:計算表達式的值,當值為真(非0)時, 執行循環體語句。其執行過程可用圖3-4表示。 統計從鍵盤輸入一行字符的個數。

  #include

  void main(){

  int n=0;

  printf("input a string:\n");

  while(getchar()!='\n') n++;

  printf("%d",n);

  }

  本例程序中的循環條件為getchar()!='\n',其意義是, 只要從鍵盤輸入的字符不是回車就繼續循環。循環體n++完成對輸入字符個數計數。從而程序實現了對輸入一行字符的字符個數計數。

  使用while語句應注意以下幾點:

  1.while語句中的表達式一般是關系表達或邏輯表達式,只要表達式的值為真(非0)即可繼續循環。

  void main(){

  int a=0,n;

  printf("\n input n: ");

  scanf("%d",&n);

  while (n--)

  printf("%d ",a++*2);

  }

  本例程序將執行n次循環,每執行一次,n值減1.循環體輸出表達式a++*2的值。該表達式等效于(a*2;a++)

  2.循環體如包括有一個以上的語句,則必須用{}括起來, 組成復合語句。

  3.應注意循環條件的選擇以避免死循環。

  void main(){

  int a,n=0;

  while(a=5)

  printf("%d ",n++);

  }

  本例中while語句的循環條件為賦值表達式a=5, 因此該表達式的值永遠為真,而循環體中又沒有其它中止循環的手段, 因此該循環將無休止地進行下去,形成死循環。4.允許while語句的循環體又是while語句,從而形成雙重循環。

上一頁  1 2 3 4 5 6 下一頁

  編輯推薦:

  2012年9月計算機等級考試成績查詢短信提醒

  2013年上半年計算機等級考試報名時間預測

  2012年計算機等級考試二級VB重點知識匯總

文章責編:renyinan  
看了本文的網友還看了
沒有相關文章
文章搜索
版權聲明:如果計算機等級考試網所轉載內容不慎侵犯了您的權益,請與我們聯系800@exam8.com,我們將會及時處理。如轉載本計算機等級考試網內容,請注明出處。
主站蜘蛛池模板: 成人美女隐私免费 | 日韩精品第一区 | 国产色一区 | 久草高清| 久久精品观看影院2828 | 国产精品久久久久久一区二区三区 | 久久综合五月天婷婷伊人 | 五月婷婷开心综合 | 日韩美女片视频 | 欧美 日本 亚洲 | 白丝袜网站 | 中国一级片免费 | 视频三区精品中文字幕 | 男女在线| 久久中文字幕免费 | 三级黄色视屏 | www.黄色片 | 国产欧美日韩一区二区三区在线 | 多人性激烈的欧美三级视频 | 日日摸夜夜添夜夜添人人爽 | 我想看黄色一级片 | 亚洲国产成人久久三区 | 亚洲国产精品日韩高清秒播 | 人人澡人人澡 | 伊人久久免费视频 | 日日噜噜夜夜狠狠久久aⅴ 日日噜噜夜夜狠狠久久丁香七 | 亚洲欧美专区精品久久 | 怡红院日本一道日本久久 | 美女很黄很黄免费 | 2048国产精品原创综合在线 | 国产精品密蕾丝视频 | 亚洲第一免费视频 | 亚洲国产成人久久综合一 | 国产午夜一级鲁丝片 | 日韩欧美久久一区二区 | 亚洲网站在线看 | 伊人手机视频 | 又黄又爽的成人免费视频播放 | 欧洲乱码专区一区二区三区四区 | 亚洲婷婷网 | 欧美整片完整片视频在线 |