版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、實(shí)驗(yàn)二選擇結(jié)構(gòu)程序設(shè)計(jì)一、實(shí)驗(yàn)?zāi)康暮鸵?. 掌握關(guān)系表達(dá)式和邏輯表達(dá)式的使用。2. 熟悉選擇結(jié)構(gòu)程序設(shè)計(jì)。3. 熟練使用if語句進(jìn)行程序設(shè)計(jì)。4. 使用switch語句實(shí)現(xiàn)多分支選擇結(jié)構(gòu)實(shí)驗(yàn)設(shè)備PC 機(jī)Visual C+6.0三、實(shí)驗(yàn)內(nèi)容(一) 實(shí)驗(yàn)準(zhǔn)備1. 從程序流程的角度來看,程序可以分為三種基本結(jié)構(gòu),即順序結(jié)構(gòu)、分支(選 擇)結(jié)構(gòu)、循環(huán)結(jié)構(gòu)。2.lf-else 語句:一般形式為:if (表達(dá)式)語句1 ;else語句2 ;該語句用于實(shí)現(xiàn)分支結(jié)構(gòu),根據(jù)表達(dá)式的值選擇語句 1或語句2中的一條 執(zhí)行。首先求解表達(dá)式,如果表達(dá)式的值為“真”,則執(zhí)行語句1;如果表達(dá)式 的值為“假”,則執(zhí)行語句2
2、.2. switch 語句switch語句可以處理多分支選擇問題,根據(jù)其中break語句的使用方法,一般分為三種情況。(二) 實(shí)驗(yàn)項(xiàng)目1.計(jì)算 a+|b|#i nclude<stdio.h>int main(v oid)int a,b, z;prin tf("Please en ter a,b:n");sca nf("%d,%d",&a,&b);if (b>=0) Ib=b;elseb=-b;z=a+b;prin tf("%d+%d=%dn",a,b,z);return 0 ;判斷一個(gè)整數(shù)是否可以被3
3、和5整除#in clude<stdio.h>int main(v oid)int a ;prin tf("Please en ter a:n");sca nf("%d",&a);if (a%3=0)printf("a可以被 3 整除:n");elseif (a%5=0)printf("a可以被 5 整除:n");else printf("a不可以被5整除,也不可以被3整除:n");3. 從鍵盤輸入一個(gè)字符型數(shù)據(jù),若輸入一個(gè)數(shù)字字符('0'-9),則將其轉(zhuǎn)換成相
4、應(yīng)的整數(shù)顯示出來;若輸入其它字符,則顯示出錯(cuò)信息。#in clude<stdio.h>int main(v oid)int a ;prin tf("please en ter a char:n");scan f("%d",&a);if(0<=a)&&( a<=9)prin tf("This char is %d:n",a);elseprintf("這個(gè)字符不是個(gè)整數(shù):n");return 0 ;4. 編寫一個(gè)程序,其功能為:從鍵盤輸入三個(gè)數(shù)x、y、z,判斷x+y=z是
5、否成立, 若成立輸出“ x+y=z”的信息,否則輸出“ x+y!=z ”的信息。#in clude<stdio.h>int main(v oid)int x,y,z;printf (" 請(qǐng)輸入 x, y, z:n");sea nf ("%d,%d,%d", &x, &y, &z);if (x+y=z)printf ("x+y=zn");elseprintf ("x+y!=zn");return 0;5. 編寫一個(gè)程序,其功能為:輸入三個(gè)整數(shù),輸出最大數(shù)和最小數(shù)#i nclude&
6、lt;stdio.h>int main(v oid)int a,b,c,x,y;printf ("請(qǐng)輸入三個(gè)數(shù)字:n");scanf ("%d,%d,%d",&a,&b,&c);x=0;if (a>b)x=a;if (x>c)x=x;elsex=c;elsex=b;if(x>c)x=x;elsex=c;y=0;if (a<b)y=a;if (y<c) y=y;elsey=c;elsey=a; if(y>c)y=c; elsey=y; printf (" 最大數(shù)是d,最小值是dn&
7、quot;,x,y);return 0;6. 如下兩個(gè)線性方程組的兩個(gè)未知數(shù)為x1和x2:ax1+bx2=mcx1+dx2=n該方程的唯一解為(ad-cb不等于零時(shí)):請(qǐng)編寫一個(gè)程序,讀取a、b、c、d的值,計(jì)算x1和x2的值。如果ad-cd等于 零,應(yīng)給出適當(dāng)?shù)奶崾拘畔ⅰ?i nclude<stdio.h>int main(v oid)int a,b,c,d,m, n,x1,x2;printf(”請(qǐng)輸入方程組 a,b,c,d,m,nn");sca nf("%d,%d,%d,%d,%d,%d",&a,&b,&c,&d,&
8、amp;m,&n);if(a*d-c*b=0)printf(" 此方程組無解n");elsex仁(m*d-b* n)/(a*d-c*b);x2=( n*a-m*c)/(a*d-b*c);printf(" 此方程組的解為 dft%dn",x1,x2);return 0;7. 某產(chǎn)品生產(chǎn)成本c=c1+mc2其中c1為固定成本,c2為單位產(chǎn)品可變成本。當(dāng) 生產(chǎn)數(shù)量 m<10000時(shí),c1=20000元,c2=10元;當(dāng)生產(chǎn)數(shù)量 m> 10000時(shí),c仁40000 元,c2=5元;編寫一個(gè)程序,其功能為:分別計(jì)算出生產(chǎn)數(shù)量為6000以及250
9、00 時(shí),總生產(chǎn)成本及單位生產(chǎn)成本。#i nclude<stdio.h>int main(v oid)int c,c1,c2,m;printf("請(qǐng)輸入生產(chǎn)數(shù)量m:n");sca nf("%d",&m);if (m<10000)c仁20000;c2=10;elsec1=40000;c2=5;c=c1+m*c2;printf("生產(chǎn)成本為 %dn",c);return 0;8. 編寫一個(gè)程序,計(jì)算下列函數(shù):y= < 2x-11 < x<103x-11 X > 10、J#i nclude&
10、lt;stdio.h>int main(v oid)int x,y;printf ("Plesse in put a x :n");sca nf ("%d",& x);if (x<1)y=x;elseif(x>=10)y=3*x-11;elsey=2*x-1;printf ("y=%dn",y);return 0;9. 編寫一個(gè)程序,其功能為:從鍵盤輸入一個(gè)字符,判別該字符的類別,并輸 出向相應(yīng)信息。#i nclude<stdio.h>int main(v oid)char i;sca nf(&q
11、uot;%c",&i);if (i<32)printf ("此字符為控制字符n");elseif(i>='0')&&( i<='9')printf ("此字符為數(shù)字字符n");elseif(i>='A')&&(i<='Z')printf ("此字符為大寫字母n");elseif(i>='a')&&(i<='z')printf (&qu
12、ot;此字符為小寫字母n");elseprintf("此字符為其他字符n");return 0;10. 編寫一個(gè)程序,其功能為:從鍵盤輸入一元二次方程ax2+bx+c=0的各項(xiàng)系數(shù) a、b、c的值,判斷方程實(shí)數(shù)解的不同情況,分別求解方程,并輸出(結(jié)果保留 兩位小數(shù),如無實(shí)根給出相應(yīng)的信息)。應(yīng)用如下規(guī)則:(1) 若a、b的值為零,則沒有解;(2) 若a為零,只有一個(gè)實(shí)數(shù)解;(3) 若b2-4ac為負(fù)數(shù),則沒有實(shí)數(shù)解;若b2-4ac為正數(shù),有兩個(gè)實(shí)數(shù)解;若 b2-4ac為零,有兩個(gè)相等的實(shí)數(shù)解。#i nclude <stdio.h>#in clude &
13、lt;math.h>int main(v oid)float a,b,c;double x1,x2;printf ("Please in put a,b,c n");sca nf ("%f%f%f",&a,&b,&c);if(a=0)&&( b=0)printf ("此方程沒有解n");elseif(a=0)printf("此方程有一個(gè)實(shí)根n");elseif(b*b-4*a*c)<0)printf ("此方程無實(shí)根n");elseif(b*b
14、-4*a*c)=0)x仁(-b)/(2*a);printf("此方程有兩個(gè)相等實(shí)根:x仁x2=%lfn",x1);elsex1=(-b+(sqrt(b*b-4*a*c)/(2*a); x2=(-b-(sqrt(b*b-4*a*c)/(2*a);printf("此方程有兩個(gè)實(shí)根:x仁%lfx2=%lfn",x1,x2);return 0;11. 編寫程序,輸入三角形三邊a、b、c,判斷a b、c能否構(gòu)成三角形,若不 能則輸出相應(yīng)的信息,若能則判斷組成的是等腰、等邊、直角還是一般三角形。#i nclude<stdio.h>int main(v o
15、id)int a,b,c;prin tf("piease in put a,b,c:n");sca nf("%d,%d,%d",&a,&b,&c);if(a+b>c )&&(a+c>b)&&( b+c>a)if(a=b&&b=c&&a=c)printf("能構(gòu)成等邊三角形n");elseif(a=b|b=c|a=c)printf("能構(gòu)成等腰三角形n");elseif(a*a=b*b+c*c|b*b=a*a+c
16、*c|c*c=a*a+b*b)printf("能構(gòu)成直角三角形n");elseprintf("能構(gòu)成一般三角形n");elseprintf("不能構(gòu)成三角形n");return 0;12.某個(gè)電力公司對(duì)其用戶的收費(fèi)規(guī)定如下:用電數(shù)量收費(fèi)標(biāo)準(zhǔn)0200x*0.5元201400100+(x-200)*0.65 元401600230+(x-400)*0.8 元601以上390+(x-600)*1.0 元編寫程序,對(duì)于一個(gè)輸入的用電數(shù)量,計(jì)算用戶的繳費(fèi)額#i nclude<stdio.h>int main(v oid)double
17、x,y;prin tf("piease in put x: n");sca nf("%lf", &x);if(x<0)pri ntf("輸入的數(shù)據(jù)有誤! n");elseif(x>=0&& x<=200)y=x*0.5;elseif(x>=201 && x<=400) y=100+(x-200)*0.65;elseif(x>=401 && x<=600) y=230+(x-400)*0.8;elsey=390+(x-600)*1.0;pr
18、in tf("y=%lfn",y); return 0;13某個(gè)服裝展示廳對(duì)所賣商品打折規(guī)定如下:購買總額折扣機(jī)加工產(chǎn)品手工產(chǎn)品0100-5%1012005%7.5%2013007.5%10.0%大于30010.0%15.0%編寫程序輸入購買總額,計(jì)算并輸顧客實(shí)際應(yīng)付的貨款。#i nclude "stdio.h"int main(v oid)double x,y;int lb;printf("請(qǐng)輸入顧客購買總額x: n");sca nf("%lf", &x);printf("請(qǐng)輸入顧客購買類別lb
19、 : n");sca nf("%d",&lb);if(x<0)prin tf("輸入購買總額數(shù)據(jù)有誤!");elseif(x>=0&& x<=100)if(lb=0)y=x;else if(lb=1)y=x*0.05;elseprin tf("輸入購買類別數(shù)據(jù)有誤!");else if(x>=101 && x<=200)if(lb=0)y=x*0.5;else if(lb=1) y=x*0.075;elseprin tf("輸入購買類別數(shù)據(jù)有誤!
20、");else if(x>=201 && x<=300)if(lb=O) y=x*0.075;else if(lb=1)y=x*0.1;elseprintf("輸入購買類別數(shù)據(jù)有誤!");else if(lb=O)y=x*0.1;else if(lb=1)y=x*0.15;elseprin tf("輸入購買類別數(shù)據(jù)有誤!");prin tf("x=%lf y=%lfn",x,y);return 0;14編程在屏幕上顯示一張如下所示的時(shí)間表: 1morning 2after noon 3ni ght
21、*Time*Please en ter your choice:根據(jù)用戶輸入的時(shí)間序號(hào)顯示相應(yīng)的問候信息, 選擇1時(shí)顯示“Goodmorning” , 選擇2時(shí)顯示“ Good afternoon ” ,選擇3時(shí)顯示“ Good night ” ,對(duì)于其他選 擇顯示“ Selection error! ”。#i nclude<stdio.h> int main (void) int xh;prin tf("nn*Time* n");prin tf("1 morni ngn");prin tf("2 after noonn"
22、);prin tf("3 n ightn");printf("nn請(qǐng)輸入您的選擇(1、2、3):");sca nf("%d", &xh);switch(xh) case 1: prin tf("nGood morni ngn");break; case 2: prin tf("nGood atferno onn");break; case 3: prin tf("nGood ni ght n");break;default: prin tf("nSelect
23、io n error!' n" );break;return 0;15編程設(shè)計(jì)一個(gè)簡單的計(jì)算器程序,要求根據(jù)用戶從鍵盤輸入的表達(dá)式: 操作數(shù)1運(yùn)算符op操作數(shù)2計(jì)算表達(dá)式的值,指定的運(yùn)算符為加(+)、減(-)、乘(*)、除(/)#i nclude<stdio.h>int main(v oid)float x,y,z;char op;printf(“請(qǐng)輸入表達(dá)式:”);scanf(“ f,%c,%f”,&x,&op,&y);if (op= +')z=x+y;if (op= -')z=x-y;if(op= *')z=x*
24、y;if (op= /')if (y!=0) z=x/y;else printf(“除數(shù)為 0”);printf( “%f%c%f=%fn ,x,op,y,z);#i nclude <stdio.h>void main() float x,y,z;char op;printf(“請(qǐng)輸入表達(dá)式:”);scanf(“ f,%c,%f”,&x,&op,&y);switch(op)case+ : z=x+y;case -' : z=x-y;case * ' : z=x*y;case /' : if (y!=0) z=x/y;else
25、printf(“除數(shù)為 0”);printf( “%f%c%f=%fn ,x,op,y,z);return 0;16輸入某學(xué)生的成績,經(jīng)處理后給出學(xué)生的等級(jí),等級(jí)分類如下:90分以上(包括90):A80至90分(包括80):B70至80分(包括70):C60至70分(包括60):D60分以下:E方法一:(用if語句的嵌套)#i nclude<stdio.h>int main(v oid)float score; printf(" 請(qǐng)輸入成績:");sca nf("%f",&score);if(score>=0&&score<=100)if(score>=90)prin tf("%fA",score);else if(score>=80)pri
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 跨境電商獨(dú)立站域名2025年銷售協(xié)議
- 初中幼兒師范考試題及答案
- 插秧機(jī)駕駛考試題及答案
- 建筑裝修設(shè)計(jì)試題及答案
- 2025-2026七年級(jí)法治測試卷
- 客運(yùn)站職業(yè)衛(wèi)生管理制度
- 中國古代衛(wèi)生院制度
- 基層衛(wèi)生間管理制度
- 衛(wèi)生局監(jiān)督工作制度
- 商場衛(wèi)生間保潔管理制度
- 江蘇省鹽城市大豐區(qū)四校聯(lián)考2025-2026學(xué)年七年級(jí)上學(xué)期12月月考?xì)v史試卷(含答案)
- 文化IP授權(quán)使用框架協(xié)議
- 2024年廣西壯族自治區(qū)公開遴選公務(wù)員筆試試題及答案解析(綜合類)
- 湖北煙草專賣局招聘考試真題2025
- 人教部編五年級(jí)語文下冊(cè)古詩三首《四時(shí)田園雜興(其三十一)》示范公開課教學(xué)課件
- AI領(lǐng)域求職者必看美的工廠AI面試實(shí)戰(zhàn)經(jīng)驗(yàn)分享
- 4.2《揚(yáng)州慢》課件2025-2026學(xué)年統(tǒng)編版高中語文選擇性必修下冊(cè)
- 捻線工三級(jí)安全教育(公司級(jí))考核試卷及答案
- 學(xué)校智慧校園建設(shè)協(xié)議
- 上海市中考物理基礎(chǔ)選擇百題練習(xí)
- 發(fā)電廠非計(jì)劃停機(jī)應(yīng)急預(yù)案
評(píng)論
0/150
提交評(píng)論