C語(yǔ)言程序設(shè)計(jì)實(shí)例教程(慕課版)(第3版)-單元同步練習(xí)答案_第1頁(yè)
C語(yǔ)言程序設(shè)計(jì)實(shí)例教程(慕課版)(第3版)-單元同步練習(xí)答案_第2頁(yè)
C語(yǔ)言程序設(shè)計(jì)實(shí)例教程(慕課版)(第3版)-單元同步練習(xí)答案_第3頁(yè)
C語(yǔ)言程序設(shè)計(jì)實(shí)例教程(慕課版)(第3版)-單元同步練習(xí)答案_第4頁(yè)
C語(yǔ)言程序設(shè)計(jì)實(shí)例教程(慕課版)(第3版)-單元同步練習(xí)答案_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

《C語(yǔ)言程序設(shè)計(jì)實(shí)例教程(慕課版)第2版》

單元同步練習(xí)答案

第1單元....................................................................2

第2單元....................................................................3

第3單元....................................................................5

第4單元....................................................................7

第5單元....................................................................9

第6單元..................................................................11

第7單元...................................................................13

第8單元...................................................................15

第9單元...................................................................18

第10單元..................................................................20

第1單元

一、選擇題

1-3CDD

二、填空題

I.主函數(shù)(main。函數(shù)),main()

2.機(jī)器語(yǔ)言、匯編語(yǔ)言、高級(jí)語(yǔ)言,1972,ANSIC,C99

三、問(wèn)答與編程題

1.一個(gè)C程序的構(gòu)成:預(yù)處理命令、說(shuō)明部分、執(zhí)行部分

2.#include<stdio.h>

intmain()(

inta=4,b=3,s;

s=a*b;

printf("areaofrectangleis%d\n”,s);

)

第2單元

一、選擇題

l.C2.D3.B4.C5.C6.C7.A8.A9.A10.B11.D12.B13.D14.C

15.C16.C17.A

二、填空題

1.字母、數(shù)字、下劃線、字母、下劃線2.59831593.ASCII碼

4.sqrt(s*(s-a)*(s-b)*(s-c))5._J_6._0_7,2.58._4___4_106

9.183310.511.m/100(m/10)%13

三、寫出下列程序的運(yùn)行結(jié)果

1.622.283.5_4.8,105.ch=x,x=-2,y=4,z=0.000000

6.cl=4,c2=3,c3=2,cl=l7.1,1,1

2,2,1

2,2,1

四、編程題

1.^include<stdio.h>

intmain()

{

floata=2,b=2.3,c=l.5,s,v;

s=(a*b+b*c+a*c)*2;

v=a*b*c;

printf("表面積為%.2f,體積為%.2fM,s,v);

return0;

}

2.^include<stdio.h>

intmainO

{

charc;

printf("InputaCapital:\n,z);

scanf&c);

printf("Lowercasec+32);

return0:

}

3.ttinclude<stdio.h>

intmainO

(

intnuml,num2,temp;

printf("請(qǐng)輸入兩個(gè)整數(shù):\n");

scanf(w%d%d”,&numl,&num2);

if(numl<num2)

tcmp=num1;num1=num2;num2=tcinp;

)

printf("兩個(gè)數(shù)的商是%d,余數(shù)是%d\n”,numl/num2,numl%num2);

return0;

)

4.4include<stdio.h>

intmain()

(

floatc,f;

printf("請(qǐng)輸入華氏溫度:\n");

scanf&f);

c=5*(f-32)/9;

printf("對(duì)應(yīng)的攝氏溫度為虬2f\n",c);

return0;

)

第3單元

一、選擇題

ABAABDCCBB

二、填空題

1.整型、字符型

2.putchar()

3.1個(gè)

4.stdio.h

5.Id

6.China

三、閱讀程序,輸出結(jié)果

1.56

2.103

98

A

3.5,a,6

4.a=6.78

四、編程題

1.#include<stdio.h>

intmainO

{

charchi,ch2,ch3,ch4,ch5;

printf(”請(qǐng)輸入要加密的單詞:\n");

scanf("%c%c%c%c%c”,&chl,&ch2,&ch3,&ch4,&ch5);

printf("加密后:%c%c%c%c%c\n”,chl+5,ch2+5,ch3+5,ch4+5,ch5+5);

return0;

)

2.

#include<stdio.h>

#include<math.h>

intmain()

{

floata,b,c,disc,xl,x2,p,q;

disc=0;

printf("請(qǐng)輸入a,b,c的值:\n");

scanf&a,&b,&c);

disc=b*b-4*a*c;

p=-b/(2.0*a);

q=sqrt(disc)/(2.0*a);

xl=p+q;

x2-p-q;

printf("xl=%7.2f\nx2=%7.2f\n”,xl,x2);

return0;

3.

#include<stdio.h>

intmain()

intn;

doubledeposit,capital,rate;

printf(〃請(qǐng)輸入存款金額:\n");

scanf&capital);

printf(”請(qǐng)輸入存款年限:\n");

scanf&n);

printf(〃請(qǐng)輸入定期存款年利率:\n〃);

scanf(,Z%1f,z,&rate);

dcposit=capital+capital*ratc*n;

printf(z,%d年后的本金和利息之和為:%n,deposit);

return0;

第4單元

一、選擇題

1.A2.A3.D4.A5.A6.C7.A8.C9.A10.C

二、填空題

1.0_2,]_3.34.(x53=0)I|(x%D)5.(p〈x)](p<。II(p!=z)

6.(a+b>c)&&(a+c>b)&&(b+c>a)7.(ch>='A'&&ch<='Z')ch=ch-32

三、寫出下列程序的運(yùn)行結(jié)果

1.20^02.5858583.34.25.0.5000006.8

四、編程題

1、^include<stdio.h>

intmain()

(

inta,b;

printf("請(qǐng)輸入兩個(gè)數(shù):”);

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

if(a>b)

printf("最小數(shù)是%d”,b);

else

printf("最小數(shù)是%d”,a);

return0;

)

2.

#include<stdio.h>

intmainO

(

intx,y;

printf(“請(qǐng)輸入x的值:\n");

scanf&x);

if(x>0)y=x+3;

else

if(x==0)y=0;

elsey=x-1;

printf("輸出y的值:%d",y):

return0;

)

3.#include<stdio.h>

intmain()

(

intsum;

intyear,month,day,leap;

printf(〃請(qǐng)輸入年月日:\n");

,,,,

scanf(%d%d%dt&ycar,&month,&day);

switch(month)

case1:sum=0;break;

case2:sum=31;break;

case3:sum=59;break;

case4:sum=90;break;

case5:sum=120;break;

case6:sum=151;break;

case7:sum=181;break;

case8:sum=212;break;

case9:sum=243;break;

caseID:sum=273;break;

case11:sum=304;break;

case12:sum=334;break;

dcflaut:printf("日期錯(cuò)誤!\n");break;

}

sum=sum+day;

if((year%4==0)(year%100!=0)||(year%400==0))

leap=l

else

leap=0;

if(leap&&month>2)

(

sum++;

}

printf("這是這年的第機(jī)1天\n”,sum);

return0;

)

第5單元

一、選擇題

1.A2.B3.B4.A5.C6.B7.A8.C9.C10.D

二、填空題

1.whiledo-whi1efor2.xl>0xl/2+2x1x2

3.ch=getchar()ch>='A'&&ch<='Z'4.s=s+i*tt=t*(-1)5._2

三、寫出下列程序的運(yùn)行結(jié)果

1.89212.SUM=24683.5

四、編程題

1.#include<stdio.h>

intmain()

(

inti,n,sum=0,data;

printf(”請(qǐng)輸入求和數(shù)據(jù)的個(gè)數(shù):\n");

scanf&n);

printf("請(qǐng)輸入%d個(gè)正數(shù):\n”,n);

for(i=0;i<n;i++)

{

scanf("舟d”,&data);

sum+=data;

)

printf(“它們的和是%d\n”,sum);

return0;

}

2.dinclude<stdio.h>

intmainO

(

intm,i,sum=0;

for(m=1;m<1000;m++)

{

sum=0;

ror(i=l:i<=m/2:i++)

if(m%i==0)

sum=sum+i;

if(sum==m)

printf(*%d",m);

)

returnO;

}

3.ttincludc<stdio.h>

intmain()

inttemp,mul,max,min;

printf("請(qǐng)輸入兩個(gè)整數(shù):\n");

scanf(*%d%d”,&max;&min);

mul=max*min;

if(max<min)

(

ternp=max;

max=min;

min=temp;

)

while(max%min!=0)

{

tcmp=min;

min=max%min;

max=temp;

)

printf("最大公約數(shù):%d\n",min);

printf("最小公倍數(shù):%d\n”,mu1/min);

return0;

)

第6單元

一、選擇題

BCBDCADCCD

二、填空題

1.0

2.行,首地址

3.string,h

4.0

5.j=2;j>=0;

6.s[j++]=s[i];

三、閱讀程序,輸出結(jié)果

1.8,10

2.19

3.AQM

4.9,8

5.you&me

四、編程題

1.

#include<stdio.h>

^defineN10

intmainO

{

inti,j,t,n;

inta[N];

printf("請(qǐng)輸入%d個(gè)元素:\n〃,N);

for(i=0;i〈N;i++)

scanf&a[i]);

for(i=0;i<N-l;i++)

for(j=0;j<N-l-i;j++)

if(a[j]>a[j+l])

{

t=a[j];

a[j]=a[j+l];

a[j+l]=t;

}

printf("最小元素為:%5d\n",a[0]);

printf("最大元素為:%5d\n”,a[N-l]);

return0;

)

2.

#includc<stdio.h>

#defineM10

intmainO

(

inta[M][M],i,j;

for(i=0;i<M;i++)

for(j=0;j<=i;j++)

(

if(i==j|Ij==0)

else

a[i][j]=a[i-l][j]+a[i-l][j-1];

printf("%5d",a[i][j]);

if(i==j)

printf(〃\n〃);

)

return0;

)

3.

#include<stdio.h>

#include<string.h>

intmain()

{

chara[100];

printf(〃請(qǐng)輸入一個(gè)字符串:");

scanf("%s〃,&a);

inti,k=strlen(a);

for(i=0;i<k;i++)

(

if(a[i]<97)

(

a[i]+=32;

)

)

printf("%s〃,a);

return0;

第7單元

一、選擇題

1.A2.B3.C4.C5.B6.A7.A8.C9.C10.A

二、填空題

1.函數(shù)2.main函數(shù)3.vo函4.地址傳遞值傳遞5.auto

三、寫出下列程序的運(yùn)行結(jié)果

1.112.108642135793.24.56345.ABEF6.579

四、編程題

L.

#include<stdio.h>

intf(intn);

intmain()

(

inta;

scanf(飛d",&a);

printf(,,%d\n,\f(a));

return0;

}

intf(intn)

(

if(n==l||n=2)

return1;

else

return(f(n-l)+f(n-2));

}

2.

#include<stdio.h>

voidinput(intscore[3][2]);〃輸入學(xué)生的課程成績(jī)

voidsavg(intscore[3][2]);〃學(xué)生的平均分

voidcavg(intscore[3][2]);〃課程的平均分

intmain()

(

intscore[3][2];

input(score);

savg(score);

cavg(score);

return0;

)

voidinput(intscore[3][2])

inti,j;

for(i=0;i<=2;i++)

for(j=0;j<=l;j++)

(

printf("請(qǐng)輸入第%d個(gè)學(xué)生的第%d門功課成績(jī):\n”,i+lj+l);

scanf&score[i][j]);

1

)

voidsavg(intscore[3][2])

(

intsuml;

floatavgl;

for(inti=0;i<=2;i++)

{intsum1=0;

for(intj=O;j<=l;j++)

(

suml+=score[i][j];

]

avgl=suml/2.0;

printf(〃第個(gè)學(xué)生的平均分是%f\n”,i+l,avgl);

)

)

voidcavg(intscore[3][2])

(

intsum2;

floatavg2;

for(intj=O;j<=l:j++)

(

intsum2=0;

for(inti=0;i<=2;i++)

(

sum2+=score[i][j];

)

avg2=sum2/3.0;

printf("第刎門功課的平均分是%f\n”,j+1,avg2);

)

第8單元

一、選擇題

1.D2.B3.D4.A5.B6.C7.B8.B9.C10.C11.A12.B13.D14.C

15.A16.A

二、填空題

1.取地址、指針2.13.“ab\0”4.63

三、寫出下列程序的輸出結(jié)果

-2.-5,-12,-73.264.55.ABCDCD6.abcDDfofDbD

四、編程題

1.#include<stdio.h>

intmain()

(

inta,b,c,x;

int*pa,*pb,*pc;

pa=&a;

pb二&b;

pc=&c;

prinlf(“請(qǐng)輸入3個(gè)整數(shù)\n〃);

scanf(,/%d%d%dz,,pa,pb,pc);

if(*pa>*pb){x=*pa;*pa=*pb;*ph=x;}

if(*pa>*pc){x=*pa;*pa=*pc;*pc=x;}

if(*pb>*pc){x=*pb;*pb=*pc;*pc=x;}

printf("這3個(gè)數(shù)由小到大的排列順序?yàn)榕cd,%d,%d",*pa,*pb,*pc);

}

2.dinclude<stdio.h>

intlength(char*p)

(

intn=0;

while(*p)

{

p++;

n++:

)

return(n);

)

intmain()

(

chars[100];

intlen;

printf(〃請(qǐng)輸入一個(gè)字符串:”);

gcts(s);

lcn=lcngth(s);

printf("該字符串長(zhǎng)度為:%d",len);

return0;

}

3.#include<stdio.h>

#include<string.h>

voidmystrcpy(char*strl,char*str2,intm)

(

intn,t,i;

n=strlen(strl);//n是第一個(gè)字符串的長(zhǎng)度

t=0;〃1用來(lái)計(jì)數(shù)

〃i是第m個(gè)數(shù)據(jù)的下標(biāo)

strl=strl+i;

for(;i<=n;i++)

(

str2[t++]=*strl;

strl++;

)

}

intmain()

(

intm;

charstrl[100],str2[100];

printf(〃請(qǐng)輸入第一個(gè)字符串:\n〃);

gets(strl);

printf(〃請(qǐng)輸入復(fù)制字符串的起始位置:\n〃);

scanf(“%d",&m);

mystrcpy(strl,str2;m);

printf(〃復(fù)制完后,第二個(gè)字符串是:%s\n〃,str2);

return0;

)

4.ttinclude<stdio.h>

#include<string.h>

intstrcmp(char*ptrl,char*ptr2)

(

intresult;

while(*ptrl!=\0*&&*ptr2!=\03{

if(*ptrl!=*ptr2){

result=*ptrl-*ptr2;

break;

)

ptrl++;

ptr2++;

)

if(*ptrl==\0*||*ptr2=='\0')

rcsult=*ptrl-*ptr2;

}

returnresult;

)

intmainO

(

charstrl[100]={0};

charstr2[100]={0};

printf(''Pleaseentertwostrings:\nw);

gets(strl);

gets(str2);

printf(“比較結(jié)果果d\n”,strcmp(strl,str2));

return0;

}

第9單元

一、選擇題

1.B2.C3.C4.C5.D6.A7.C8.A9.B10.A

二、填空題

1.structsludentslu2.結(jié)構(gòu)體3.數(shù)據(jù)類型4.(*p).a

5.p->next=s;s->next-p->nextp->next=p->next->next

三、寫出下列程序的輸出結(jié)果

1.ZhaoK85952.Zhao,m,290,Zhao,m,290

3.Zhao,m,290,Zhao,m:290,Zhao,m,290,Sun,m,3704.05.2,3

四、編程題

1.

^include<stdio.h>

^include<stdlib.h>

typedefstruct

g

charname[10];

charbookname[20];

charchubanshe[20];

intyear;

intprice;

}worker;

intmainO

u

workera[100];

inti;

printf(〃限制輸入5本書”);

printf(〃請(qǐng)輸入作者,書名,出版社,出版年月,價(jià)格〃);

p^ntf("列如:張三未來(lái)會(huì)更好青職學(xué)院201820)”);

■for(i=0;i<5;i++)

scanf(*%s%s%s%d%d”,

&a[i].name,&a[i].bookname,&a[i].chubanshe,&a[i].year,pricc);

)

printf("所有書的信息\n");

printf(〃作者書名出版社出版年月價(jià)格\n〃);

■for(i=0;i<5;i++)

printf(?,%s%s%s%d%d\n*,

a[i].name,a[i].bookname,a[i].chubanshe,a[i].year,a[i].price);

)

printf("20元以上的書有:\n");

printf(〃書名

for(i=0;i<5;i++)

if(a[i].price>20)

printf("%s\n",a[i].bookname);

)

printf("2000年以后的書有:\n〃);

printfC書名作者\(yùn)n〃);

for(i=0;i<5;i++)

if(a[i].year>2000)

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(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ì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論