《計(jì)算機(jī)程序設(shè)計(jì)(C語言)》第4章-第4節(jié)-選擇結(jié)構(gòu)程序設(shè)計(jì)的應(yīng)用_第1頁
《計(jì)算機(jī)程序設(shè)計(jì)(C語言)》第4章-第4節(jié)-選擇結(jié)構(gòu)程序設(shè)計(jì)的應(yīng)用_第2頁
《計(jì)算機(jī)程序設(shè)計(jì)(C語言)》第4章-第4節(jié)-選擇結(jié)構(gòu)程序設(shè)計(jì)的應(yīng)用_第3頁
《計(jì)算機(jī)程序設(shè)計(jì)(C語言)》第4章-第4節(jié)-選擇結(jié)構(gòu)程序設(shè)計(jì)的應(yīng)用_第4頁
《計(jì)算機(jī)程序設(shè)計(jì)(C語言)》第4章-第4節(jié)-選擇結(jié)構(gòu)程序設(shè)計(jì)的應(yīng)用_第5頁
已閱讀5頁,還剩8頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第4章選擇結(jié)構(gòu)程序設(shè)計(jì)4.4選擇結(jié)構(gòu)程序設(shè)計(jì)的應(yīng)用4.4.1if語句程序?qū)嵗纠?.8】

輸入3個數(shù),按從大到小的順序輸出【解題思路分析】設(shè)3個數(shù)分別是a、b和c,把它們中最大者存放在a中,把次大者存放在b中,c中存放最小者,然后依次輸出a、b和c。4.4.1if語句程序?qū)嵗?include"stdio.h"voidmain(){inta,b,c,t;printf("pleaseinputthethreenumber:");scanf("%d,%d,%d",&a,&b,&c);if(a<b){t=a;a=b;b=t;}/*a和b的值交換*/if(a<c){t=a;a=c;c=t;}/*a和c的值交換*/if(b<c){t=b;b=c;c=t;}/*b和c的值交換*/printf("%d,%d,%d\n",a,b,c);}程序運(yùn)行結(jié)果:2,3,1↙3,2,14.4.1if語句程序?qū)嵗绦蛘f明:(2)3條if語句它們是平行的,先執(zhí)行if(a<b),如果條件成立,a,b進(jìn)行互換;否則不執(zhí)行。接下來執(zhí)行if(a<c),如果條件成立,a,c進(jìn)行互換;否則不執(zhí)行。最后執(zhí)行if(b<c),如果條件成立,b,c進(jìn)行互換;否則不執(zhí)行。通過3個if語句,最終a中保存的最大值,b中保存的是次大值,c中最小值。(3)最后通過printf("%d,%d,%d\n",a,b,c);把值輸出在屏幕上。(1)利用scanf("%d,%d,%d",&a,&b,&c);輸入值分別賦給a,b,c;注意輸入過程中a,b,c直接用逗號隔開。4.4.1if語句程序?qū)嵗纠?.9】比較兩個數(shù)的大小關(guān)系。【解題思路分析】假設(shè)兩個數(shù)a,b比較大小,將有三種情況a大于b或a等于b或a小于b。#include<stdio.h>voidmain(){inta,b;printf("pleaseinputa,b:");scanf("%d,%d",&a,&b);if(a!=b)if(a>b)printf("%d>%d\n",a,b);elseprintf("%d<%d\n",a,b);elseprintf("%d==%d\n",a,b);}程序運(yùn)行結(jié)果:3,4↙3<44.4.1if語句程序?qū)嵗绦蛘f明:(1)程序比較兩個數(shù)的大小,我們首先要清楚,比較會有3個結(jié)論,a>b、a<b、a==b。

(2)該程序輸入a,b的值后執(zhí)行順序,判斷if(a!=b),如果條件成立,執(zhí)行內(nèi)嵌的“if(a>b)printf("a>b\n");”,“elseprintf("a<b\n");”,繼續(xù)判斷if(a>b),如果條件成立,執(zhí)行“printf("a>b\n")”;否則執(zhí)行”printf("a<b\n")”;否則直接執(zhí)行最后“

elseprintf("a==b\n");”。4.4.1if語句程序?qū)嵗纠?.10】寫程序,判斷某一年是否閏年。【解題思路分析】首先要知道判斷閏年的方法。滿足下列條件之一即為閏年:1.year能被4整除,但不能被100整除2.year能被400整除。4.4.1if語句程序?qū)嵗?include<stdio.h>voidmain(){inty;printf("\npleaseinputtheyear:");scanf("%d",&y);if(y%4==0&&y%100!=0)printf("%disleapyear",y);elseif(y%400==0)printf("%disleapyear",y);elseprintf("%disnotleapyear",y);}程序運(yùn)行結(jié)果:2016↙2016isleapyear4.4.1if語句程序?qū)嵗绦蛘f明:

本例使用嵌套if語句來判斷某一年是否是閏年,實(shí)際上根據(jù)前面的分析可以把判斷閏年的程序段簡化為(y%4==0&&y%100)||(y%400==0)程序?qū)⒆兊檬趾啙崱?.4.1if語句程序?qū)嵗?include<stdio.h>voidmain(){inty;printf("\npleaseinputtheyear:");scanf("%d",&y);if((y%4==0&&y%100)||(y%400==0))printf("%disleapyear",y);elseprintf("%disnotleapyear",y);}4.4.2switch語句程序?qū)嵗纠?.11】運(yùn)輸公司對用戶計(jì)算運(yùn)費(fèi)。路程(s)越遠(yuǎn),每公里運(yùn)費(fèi)越低。標(biāo)準(zhǔn)如下:s<300km沒有折扣300km<=s<=600km5%折扣600km<=s<1200km8%折扣1200km<=s<2400km10%折扣2400km<=s<3600km15%折扣3600km<=s20%折扣設(shè)每公里每噸貨物的基本運(yùn)費(fèi)為p,貨物重為w,距離為s,折扣為d,則總運(yùn)費(fèi)f的計(jì)算公式為:f=p*w*s*(1-d)4.4.2switch語句程序?qū)嵗窘忸}思路分析】首先分析折扣變化的規(guī)律性:折扣的“變化點(diǎn)”都是300的倍數(shù)在橫軸上加一種坐標(biāo)c,c的值為s/300。c代表300的倍數(shù)。

c<1無折扣1<=c<2d=5%折扣;2<=c<4d=8%折扣;4<=c<8d=10%折扣;8<=c<12d=15%折扣;c>=12d=20%折扣。4.4.2switch語句程序?qū)嵗?include<stdio.h>voidmain(){intc,s;floatp,w,d,f;scanf("%f,%f,%d",&p,&w,&s);if(s>=3600)c=12;elsec=s/300;switch(c){case0:d=0;break;case1:d=5;break;case2:case3:d=8;break;case4:case5:ca

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論