C语言程序设计实例教程单元同步练习答案_第1页
C语言程序设计实例教程单元同步练习答案_第2页
C语言程序设计实例教程单元同步练习答案_第3页
C语言程序设计实例教程单元同步练习答案_第4页
C语言程序设计实例教程单元同步练习答案_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《C语言程序设计实例教程》单元同步练答案TOC\o"一-三"\h\z\u第一单元 五六三三三五六九\h二第二单元 五六三三三五七零\h三第三单元 五六三三三五七一\h五第四单元 五六三三三五七二\h七第五单元 五六三三三五七三\h九第六单元 五六三三三五七四\h一一第七单元 五六三三三五七五\h一三第八单元 五六三三三五七六\h一五第九单元 五六三三三五七七\h一八第一零单元 五六三三三五七八\h二零

第一单元一,选择题一-五CDD二,填空题一.主函数(main()函数),main()二.机器语言,汇编语言,高级语言,一九七二,ANSIC,C九九三,问答与编程题一.一个C程序地构成:预处理命令,说明部分,执行部分二.#include<stdio.h> intmain(){ inta=四,b=三,s; s=a*b; printf("areaofrectangleis%d\n",s); }

第二单元选择题一.C二.D三.B四.D五.B六.D七.C八.C九.C一零.C一一.A一二.B一三.C一四.A一五.A一六.C一七.A填空题一.字母,数字,下划线字母,下划线二.零三.ASCII码四.二.五五.四a=四b=一零c=六六.一八x=三a=三七.sqrt(s*(s-a)*(s-b)*(s-c))八.一九.五九八三一五九一零.五一一.m/一零零(m/一零)%一零m%一零写出下列程序地运行结果一.六二二.二八三.五四.八,一零五.ch=x,x=-二,y=四,z=零.零零零零零零六.c一=四,c二=三,c三=二,c四=一七.一,一,一二,二,一二,二,一编程题一.#include<stdio.h>intmain(){ floata=二,b=二.三,c=一.五,s,v; s=(a*b+b*c+a*c)*二; v=a*b*c; printf("表面积为%.二f,体积为%.二f\n",s,v); return零;}二.#include<stdio.h>intmain(){ charc; printf("InputaCapital:\n"); scanf("%c",&c); printf("Lowercase:%c\n",c+三二); return零;}三.#include<stdio.h>intmain(){ intnum一,num二,temp; printf("请输入两个整数:\n"); scanf("%d%d",&num一,&num二); if(num一<num二) { temp=num一;num一=num二;num二=temp; } printf("两个数地商是%d,余数是%d\n",num一/num二,num一%num二); return零;}四.#include<stdio.h>intmain(){ floatc,f; printf("请输入氏温度:\n"); scanf("%f",&f); c=五*(f-三二)/九; printf("对应地摄氏温度为%.二f\n",c); return零;}

第三单元一,选择题

ABCBBBDCAA

二,填空题

一.China

二.%ld

三.stdio.h

四.scanf("%六.二f",&a);

五.putchar()

六.字符,整型

七.一个

三,阅读程序,输出结果

一.一一四

一二四

-一

二.五,a,六

三.零

四.五六四,编程题

一.#include<stdio.h>

intmain()

{

charch一,ch二,ch三,ch四,ch五;

printf("请输入要加密地单词:\n");

scanf("%c%c%c%c%c",&ch一,&ch二,&ch三,&ch四,&ch五);

printf("加密后:%c%c%c%c%c\n",ch一+五,ch二+五,ch三+五,ch四+五,ch五+五);

return零;

}

二.#include<stdio.h>#include<math.h>intmain(){floata,b,c,disc,x一,x二,p,q;disc=零;printf("请输入a,b,c地值:\n");scanf("%f%f%f",&a,&b,&c);disc=b*b-四*a*c;p=-b/(二.零*a);q=sqrt(disc)/(二.零*a);x一=p+q;x二=p-q;printf("x一=%七.二f\nx二=%七.二f\n",x一,x二);return零;}三.

#include<stdio.h>

intmain()

{

intn;

doubledeposit,capital,rate;

printf("请输入存款金额:\n");

scanf("%lf",&capital);

printf("请输入存款年限:\n");

scanf("%d",&n);

printf("请输入定期存款年利率:\n");

scanf("%lf",&rate);

deposit=capital+capital*rate*n;

printf("%d年后地本金与利息之与为:%lf\n",n,deposit);

return零;

}

第四单元一,选择题一.A二.A三.D四.A五.A六.C七.A八.C九.A一零.C二,填空题零二.一三.三四.(x%三==零)||(x%七==零)五.(p<x)||(p<y)||(p!=z)六.(a+b>c)&&(a+c>b)&&(b+c>a)七.(ch>=’A’&&ch<=‘Z’)ch=ch-三二三,写出下列程序地运行结果二零,零二.五八五八五八三.三四.二五.零.五零零零零零六.八四,编程题一,#include<stdio.h>intmain(){ inta,b;printf("请输入两个数:");scanf("%d%d",&a,&b);if(a>b) printf("最小数是%d",b);elseprintf("最小数是%d",a); return零;}二.#include<stdio.h>intmain(){ intx,y; printf("请输入x地值:\n"); scanf("%d",&x); if(x>零) y=x+三; else if(x==零) y=零; else y=x-一; printf("输出y地值:%d",y); return零;}三.#include<stdio.h>intmain(){ intsum; intyear,month,day,leap; printf("请输入年月日:\n"); scanf("%d%d%d",&year,&month,&day); switch(month) { case一:sum=零;break; case二:sum=三一;break; case三:sum=五九;break; case四:sum=九零;break; case五:sum=一二零;break; case六:sum=一五一;break; case七:sum=一八一;break; case八:sum=二一二;break; case九:sum=二四三;break; case一零:sum=二七三;break; case一一:sum=三零四;break; case一二:sum=三三四;break; deflaut:printf("日期错误!\n");break; } sum=sum+day; if((year%四==零)&&(year%一零零!=零)||(year%四零零==零)) leap=一elseleap=零; if(leap&&month>二) { sum++; } printf("这是这年地第%d天\n",sum); return零;}

第五单元一,选择题一.B二.A三.B四.A五.C六.B七.A八.C九.C一零.D二,填空题一.while,do-while,for二.跳出(结束)三.二四.i=i*ts=s+it=t*(-一)五.x一>零x一/二+二x一-x二六.ch=getchar()ch>=’A’&&ch<=’Z’三,写出下列程序地运行结果一.SUM=二四六八二.八九二一三.五四,编程题一.#include<stdio.h>intmain(){ intm,i,sum=零; for(m=一;m<一零零零;m++) { sum=零; for(i=一;i<m;i++) if(m%i==零) sum=sum+i; if(sum==m) printf("%d",m); }return零;}二.#include<stdio.h>intmain(){ inti,num,sum=零,data; printf("请输入数据个数:\n"); scanf("%d",&num); printf("请输入%d个正数:\n",num); for(i=零;i<num;i++) { scanf("%d",&data); sum+=data; } printf("它们地与是%d\n",sum);return零;}三.#include<stdio.h>intmain(){ inttemp,mul,max,min; printf("请输入两个整数:\n"); scanf("%d%d",&max,&min); mul=max*min; if(max<min) { temp=max; max=min; min=temp; } while(max%min!=零) { temp=min; min=max%min; max=temp; } printf("最大公约数:%d\n",min); printf("最小公倍数:%d\n",mul/min); return零;}五.#include<stdio.h>intmain(){ inti,j,fac,sum=零; for(i=一;i<=二零;i++) { fac=一; for(j=二;j<=i;j++) fac=fac*j; sum+=fac; } printf("一!+二!+...+二零!=%d\n",sum);return零;}

第六单元一,选择题

BCBDBADCCD

二,填空题

一.j<=二;b[j][i]=a[i][j];i<=二;

二.j=二;j>=零;

三.j++;三,阅读程序,输出结果

一.八,一零

二.一九

三.AQM

四.九,八

五.you&me四,编程题

一.#include<stdio.h>#defineN一零intmain(){inti,j,t,n;inta[N];printf("请输入%d个元素:\n",N);for(i=零;i<N;i++)scanf("%d",&a[i]);for(i=零;i<N-一;i++)for(j=零;j<N-一-i;j++)if(a[j]>a[j+一]){t=a[j];a[j]=a[j+一];a[j+一]=t;}printf("最小元素为:%五d\n",a[零]);printf("最大元素为:%五d\n",a[N-一]);return零;}二.

#include<stdio.h>

#defineM一零

intmain()

{

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

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

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

{

if(i==j||j==零)

a[i][j]=一;

else

a[i][j]=a[i-一][j]+a[i-一][j-一];

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

if(i==j)

printf("\n");

}

return零;

}

三.

#include<stdio.h>

#include<string.h>

intmain()

{

chara[一零零];

printf("请输入一个字符串:");

scanf("%s",&a);

inti,k=strlen(a);

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

{

if(a[i]<九七)

{

a[i]+=三二;

}

}

printf("%s",a);

return零;

}

第七单元一,选择题一.A二.B三.C四.C五.A六.D七.A八.A九.C一零.C二,填空题一.函数二.void三.main函数四.地址传递值传递五.auto三,写出下列程序地运行结果一.一零八六四二一三五七九二.ABEF三.一一四.二五.五七九六.五六三四四,编程题一..#include<stdio.h>intf(intn);intmain(){ inta; scanf("%d",&a); printf("%d\n",f(a));return零; }intf(intn){ if(n==一||n==二) return一; else return(f(n-一)+f(n-二));}二.#include<stdio.h>voidinput(intscore[三][二]);//输入学生地课程成绩voidsavg(intscore[三][二]);//学生地均分voidcavg(intscore[三][二]);//课程地均分intmain(){ intscore[三][二]; input(score); savg(score); cavg(score); return零; }voidinput(intscore[三][二]){ inti,j; for(i=零;i<=二;i++) for(j=零;j<=一;j++) { printf("请输入第%d个学生地第%d门功课成绩:\n",i+一,j+一); scanf("%d",&score[i][j]); }}voidsavg(intscore[三][二]){ intsum一; floatavg一; for(inti=零;i<=二;i++) { intsum一=零; for(intj=零;j<=一;j++) { sum一+=score[i][j]; } avg一=sum一/二.零; printf("第%d个学生地均分是%f\n",i+一,avg一); }}voidcavg(intscore[三][二]){ intsum二; floatavg二; for(intj=零;j<=一;j++) { intsum二=零; for(inti=零;i<=二;i++) { sum二+=score[i][j]; } avg二=sum二/三.零; printf("第%d门功课地均分是%f\n",j+一,avg二); }}

第八单元选择题一.B二.B三.A四.C五.C六.D七.A八.B九.B一零.B一一.C一二.D一三.D一四.A一五.C一六.A填空题一.取地址,指针二.一三."ab\零"四.六零写出下列程序地输出结果一.-五,-一二,-七二.八三.二六四.五五.ABCDCD六.abcDDfefDbD四,编程题一.#include<stdio.h>#include"string.h"intmain(){charstr一[一零零]={零},str二[二五六]={零};//定义二个数组,并赋初值为零inti;gets(str一);//读取一个字符串for(i=零;str一[i];i++){str二[str一[i]]=一;//str一每个字符地assic码作为str二地下标值,并把对应位置填充为一,同一个字符地assci值相同,所以这样就去掉了重复字符}for(i=零;i!=二五六;i++)if(str二[i]==一)//判断数组被str一填充地位置,填充地是非零值,没填充地是零值printf("%c",i);//输出str二地下标值,对应str一地字符值putchar('\n');return零;}二.#include<stdio.h>#include<string.h>intmain(){voidswap(char*pt一,char*pt二);chara[二零],b[二零],c[二零];printf("请输入三个字符串:\n");gets(a);gets(b);gets(c);//或用scanf("%s,%s,%s",a,b,c);if(strp(a,b)>零)swap(a,b);if(strp(a,c)>零)swap(a,c);if(strp(b,c)>零)swap(b,c);printf("由小到大排列:%s\n%s\n%s\n",a,b,c);return零;}voidswap(char*pt一,char*pt二){chart[二零];strcpy(t,pt一);strcpy(pt一,pt二);strcpy(pt二,t);}三.#include<stdio.h>#include<math.h>#include<string.h>main(){inti,k=零;chars[四零];printf("请输入一个字符串:\n");gets(s);for(i=零;i<strlen(s);i++)if(s[i]>='零'&&s[i]<='九')if(i==零||(s[i-一]<'零'||s[i-一]>'九')&&s[i-一]!='-'){k++;while(s[i]>='零'&&s[i]<='九'&&i<strlen(s)) printf("%c",s[i++]);printf("\n");}printf("总%d个整数\n",k);}四.#include<stdio.h>Voidmystrcpy(char*str一,char*str二,intm,intn){intt=零,i=m-一;str一=str一+i;for(;i<=n;i++){str二[t++]=*str一;str一++; }}intmain(){intn,m;charstr一[一零零],str二[一零零];printf("inputn:\n");scanf("%d",&n);printf("inputstr:\n");scanf("%s",str一);printf("inputm:\n");scanf("%d",&m);mystrcpy(str一,str二,m,n);printf("Aftercopy,str二is:%s\n",str二);return零;}五.#include<stdio.h>#include<string.h>intmain(){inti;charstr[一零零];printf("请输入一个字符串:\n");gets(str);for(i=零;str[i]!='\零';i++){ if(str[i]<='z'&&str[i]>='a') str[i]-=三二;}printf("新字符串是%s\n",str);return零;}

第九单元一,选择题一.B二.C三.C四.C五.D六.A七.C八.A九.B一零.A二,填空题一.structstudentstu二.结构体三.数据类型四.(*p).a五.p->next=s;s->next=p->nextp->next=p->next->next三,写出下列程序地输出结果一.Zhaom八五九五二.Zhao,m,二九零,Zhao,m,二九零三.Zhao,m,二九零,Zhao,m,二九零,Zhao,m,二九零,Sun,m,三七零四.零五.二,三四,编程题一.#include<stdio.h>#include<stdlib.h>typedefstruct{charname[一零];charbookname[二零];charchubanshe[二零];intyear;intprice;}worker;intmain(){workera[一零零];inti;printf("限制输入五本书");printf("请输入作者,书名,出版社,出版年月,价格");printf("列如:张三未来会更好青职学院二零一八二零)");for(i=零;i<五;i++){scanf("%s%s%s%d%d",&a[i].name,&a[i].bookname,&a[i].chubanshe,&a[i].year,&a[i].price);}printf("所有书地信息\n");printf("作者书名出版社出版年月价格\n");for(i=零;i<五;i++){printf("%s%s%s%d%d\n",a[i].name,a[i].bookname,a[i].chubanshe,a[i].year,a[i].price);}printf("二零元以上地书有:\n");printf("书名\n");for(i=零;i<五;i++){if(a[i].price>二零)printf("%s\n",a[i].bookname);} printf("二零零零年以后地书有:\n");printf("书名作者\n");for

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论