《C語言程序設(shè)計》實驗設(shè)計習(xí)題答案_第1頁
《C語言程序設(shè)計》實驗設(shè)計習(xí)題答案_第2頁
《C語言程序設(shè)計》實驗設(shè)計習(xí)題答案_第3頁
《C語言程序設(shè)計》實驗設(shè)計習(xí)題答案_第4頁
《C語言程序設(shè)計》實驗設(shè)計習(xí)題答案_第5頁
已閱讀5頁,還剩17頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

1、3.4 編寫程序,用getchar函數(shù)讀入兩個字符c1,c2,然后分別用putchar函數(shù)輸出voidmain()charc1,c2;c1=getchar();c2=getchar();putchar(cl);putchar(c2);putchar('n');printf("%c%cn”,c1,c2);3.5 把790分鐘換成用小時和分鐘表示,然后輸出。voidmain()ints=790;printf("%d小時”,s/60);printf("%d分鐘”,s%60);3.6 將讀入三個數(shù)a,b,c,然后交換它彳門的值,把a的值給b,把b的值給c,

2、把c的值給a.main()inta,b,c,t;scanf("%d,%d,%d",&a,&b,&c);t=a;a=b;b=c;c=t;printf("%d,%d,%d”,a,b,c);3.7 輸入一個double類型的數(shù),使該數(shù)保留小數(shù)點后兩位,對第三位小數(shù)進(jìn)行四舍五入處理,然后輸出此數(shù),驗證處理是否真確。#include<stdio.h>voidmain()floatx,s,a;intz;scanf("%f",&x);a=100*x+0.5;z=(int)(a);s=z/100.0;printf(&

3、quot;%.2fn",s);main()inta,b,t;doublec;scanf("%lf",&c);b=100*c;t=1000*c;a=t%10;if(a>=5)b=b+1;elseb=b+0;c=1.0*b/100;printf("%7.2lf/n”,c);return0;voidmain()intx,y;scanf("%d",&x);if(x<0&&x>-5)y=x;if(x=0)y=x-1;if(x<10&&x>0)y=x+1;printf(

4、"%d",y);實驗四4.2不嵌套if語句voidmain()intx,y;scanf("%d",&x);if(x<0&&x>-5)y=x;if(x=0)y=x-1;if(x<10&&x>0)y=x+1;printf("%d",y);法二:嵌套if語句voidmain()intx,y;scanf("%d",&x);if(x>-5)&&(x<0)y=x;elseif(x=0)y=x-1;elseif(x<10&a

5、mp;&x>0)y=x+1;printf("%d",y);4.3 如下程序運用條件運算符求變量的絕對值?voidmain()inta,M;scanf("%d",&a);M=a>0?a:-a;printf("abs(a)=%d”,M);4.4 某服裝店經(jīng)營套服,也可單件出售,若買的不少于50套,每套80元,不足50套的每套90元,只買上衣每件60元,只買褲子每條45元,(讀入所買上衣C和褲子t的件數(shù),計算應(yīng)付款movoidmain()intc,t,m;printf("inputthenumberofcoata

6、ndtrousersyourwantbuy:n");scanf("%d%d”,&c,&t);if(t=c)if(c>=50)m=c*80;elsem=c*90;elseif(c>t)if(t>=50)m=t*80+(c-t)*60;elsem=t*90+(c-t)*60;elseif(c>=50)m=c*80+(t-c)*45;elsem=c*90+(t-c)*45;printf("%d",m);4.5 :從鍵盤中輸入三個數(shù),分別讓他們代表三條線段的長度,請編寫程序,判斷由這三條線段組成的三角形將是什么三角形(不等

7、邊,等腰,等邊或不構(gòu)成三角形)?Include<stdioh>main()inta,b,c;scanf("%d%d%d",&a,&b,&c);if(a+b>c&&b+c>a&&c+a>b)if(a=b)&&(b=c)printf("等邊三角形");elseif(a=b&&b!=c)|(b=c&&c!=a)printf("等腰三角形");elseprintf("不等邊三角形");els

8、eprintf("不構(gòu)成三角形");4.6 :判斷輸入的整數(shù)是否既是5又是7的倍數(shù),若是,則輸出yes,否則輸出novoidmain()intx;scanf("%d",&x);if(x%5=0&&x%7=0)printf("yes");elseprintf("no");實驗五5.2 輸入一行字母,將字母加密輸出(如"a'變成'c','b'變成'd','z'變成'b')main()intc;whi

9、le(c=getchar()!='n')if(c<='X'&&c>='A'|c<='x'&&c>='a')c+=2;elseif(c='y'|c='Y'|c='z'|c='Z')c=c-24;printf("%c",c);putchar('n');5.3 利用for循環(huán)編寫程序法一:#include"stdio.h"main()inti,j;

10、for(i=1;i<=4;i+)for(j=1;j<=6;j+)(if(i=2|i=3)(if(j=1|j=6)printf("*");elseprintf("");elseprintf("*");printf("n");)法二:#include"stdio.h"main()(inti,j;for(i=1;i<=4;i+)(if(i=1|i=4)(for(j=1;j<=6;j+)(printf("*");)printf("n");)

11、else(printf("*");for(j=1;j<=4;j+)(printf("");printf("*");printf("n");5.4 利用循環(huán)語句編程,輸出三角形狀的九九乘法表#include"stdio.h"main()inti,j,k;for(i=0;i<=9;i+)if(i=0)printf("*");else(printf("%4d",i);printf("n");for(i=1;i<=19;i+)

12、printf("_");printf("n");for(i=1;i<=9;i+)printf("%d",i);for(j=1;j<=i;j+)k=i*j;printf("%4d",k);)printf("n");5.5 :用while語句或do-while語句編寫程序,計算:e=1+1/1!+1/2!+.+1/n!.#include<stdio.h>#include"math.h"main()floats=1.0,e=1.0,t;inti=1;whil

13、e(fabs(t)>=1e-5)s=s*i;t=1/s;e=e+1.0/s;i+;printf("%fn",e);printf("%d",i);5.6 :如果一個數(shù)恰好等于它的所有因子(包括1但不包括自身)之和,則稱之為“完數(shù)”,例如:6的因子為1,2,3且6=1+2+3,所以6是完數(shù),輸出完數(shù)1+完數(shù)2+.=和值。voidmain()inti,j,sum,k;for(i=2;i<=1000;i+)sum=0;for(j=1;j<i;j+)if(i%j=0)sum+=j;if(sum=i)printf("%d的因子:n”,i)

14、;k=0;for(j=1;j<i;j+)if(i%j=0&&k=0)printf("%d",j);elseif(i%j=0)printf("+%d",j);k+;printf("=%d",sum);printf("n");)實驗六6.2 :將數(shù)組xx(有n個元素)的前K個元素(k<n=移到數(shù)組的尾部,變?yōu)楹驥個元素,但是數(shù)組的這兩段(原前K個元素為一段,另外的n-k為一段)例如:若輸入7和1234567,再輸入5,則輸出6712345.#include"stdio.h"

15、;main()intn,k,xx20;inti,j,t;printf("nPleaseenteranumber");scanf("%d",&n);printf("nPleaseenter%dnumbers:",n);for(i=0;i<n;i+)scanf("%d”,&xxi);printf("%nPleaseenteranothernumber:");scanf("%d",&k);for(i=0;i<k;i+)t=xx0;for(j=1;j<

16、n;j+)xxj-1=xxj;xxn-1=t;printf("nAftermoving:n");for(i=0;i<n;i+)printf("%3d",xxi);printf("n");)6.3 對a數(shù)組中n種商品價格進(jìn)行分段統(tǒng)計,商品各段價格存到b數(shù)組中,其中:價格為100到199元的個數(shù)存到b1,價格為200到299元的個數(shù)存到b2,價格為300到399的個數(shù)存到b3,價格為400到499元的個數(shù)存到b4,價格為500以上的個數(shù)存到b5中,例如:a的數(shù)組為:90,180,270,380,590,530,140,750,380

17、,調(diào)用函數(shù)后,b中存放的數(shù)據(jù)為:1,2,1,2,0,3#include<stdio.h>main()inti,a100=90,180,270,380,590,530,140,750,380,b6;for(i=0;i<6;i+)bi=0;for(i=0;i<9;i+)switch(ai/100)case0:b0+;break;case1:b1+;break;case2:b2+;break;case3:b3+;break;case4:b4+;break;default:b5+;break;printf("Theresultis:");for(i=0;i&

18、lt;6;i+)printf("%d",bi);printf("n");6.4 編寫程序,先讀入10個整數(shù),再把他們按從小到大的次序排列起來;最后再讀入一個整數(shù)K,并將K插入到該數(shù)列中,插入后數(shù)列仍然從小到大排列。例如:若輸入:6,3,42,23,35,71,98,67,56,38,最后再輸入待插入數(shù)59,則輸出為:6,23,35,38,42,56,59,67,98#include<stdio.h>main()inti,j,t,p,q,s,n,a11=6,3,42,23,35,71,98,67,56,38;for(i=0;i<10;i+

19、)for(j=i+1;j<10;j+)if(ai>aj)t=ai;ai=aj;aj=t;printf("%d",ai);printf("ninputnumber:n");scanf("%d",&n);for(i=0;i<10;i+)if(n<ai)for(j=9;j>=i;j-)aj+1=aj;break;ai=n;for(i=0;i<=10;i+)printf("%d",ai);printf("n");6.5 統(tǒng)計字符串s在字符串str中出現(xiàn)的次數(shù)m

20、ain()charstr1255,str2255;intsum=0;printf("請輸入兩個字符串!n");gets(str1);gets(str2);inti=0,j=0;while(str1i!='0')while(str2j=str1i+j&&str2j!='0')j+;if(str2j='0')sum+;j=0;i+;67a是一個M行N列的整數(shù)矩陣,編寫程序求出此矩陣周邊元素之和。#defineM4#defineN5#include"stdio.h"intmain()aaMN=1,

21、3,5,7,9,2,9,9,9,4,6,9,9,9,8,1,3,5,7,0;inti,j,y,sum=0;printf("Theoriginaldatais:n");for(i=0;i<M;i+)for(j=0;j<N;j+)printf("%6d",aaij);printf("n");for(i=0;i<N;i+)sum+=aa0i+aaM-1i;for(i=1;i<M-1;i+)sum+=aai0+aaiN-1;printf("nThesum:%dn",sum);printf("

22、;n");實驗七7.2: 編寫一個程序,將兩個字符串連接起來,不要用strcat.方法一#include<stdio.h>voidmain()constcharstr1="Hello"constcharstr2="everyone!"charstr255;for(inti=0;str1i!='0'i+)stri=str1i;for(intj=0;str2j!='0'j+)stri+j=str2j;stri+j='0'printf("%s",str);getchar(

23、);方法二#include“string.h"#include"stdio.h"main()charstr150="everyone!"charstr250="hello"strcpy(str2+strlen(str2),str1);printf("%s”,str2);7.3: 寫一個程序,能分別統(tǒng)計出從鍵盤上輸入的字符串中小寫字符的個數(shù)和數(shù)字字符的個數(shù)和其它字符的個數(shù),輸入字符串以!作為結(jié)束標(biāo)志#include"stdio.h"main()intlower=0,digit=0,other=0,

24、i=0;chars255;while(si=getchar()!='!')i+;for(intj=0;sj!='!';j+)if(sj<='z'&&sj>='a')+lower;elseif(sj<='9'&&sj>='0')+digit;else+other;printf("小寫字符:%dn數(shù)字字符:%dn其它字符:dn",lower,digit,other);getchar();7.4: 設(shè)有一個字符串"Thisisaprogram”,請編程求字符“a”首次出現(xiàn)的位置#include"stdio.h"main()inti,pos;charstr尸"Thisisaprogram"for(i=0;stri!='0'i+)if(stri='a')pos=i;break;printf("%s

溫馨提示

  • 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

提交評論