零基础学C语言程序设计-习题答案_第1页
零基础学C语言程序设计-习题答案_第2页
零基础学C语言程序设计-习题答案_第3页
零基础学C语言程序设计-习题答案_第4页
零基础学C语言程序设计-习题答案_第5页
已阅读5页,还剩7页未读 继续免费阅读

下载本文档

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

文档简介

·PAGE218··PAGE217·第1章习题一、填空题1.二2.机器语言高级语言3.二4.二5.低级符号6.19727.SDE8.179.VisualC++201010.主11.单多二、选择题1.C2.C3.C4.A5.B6.A三、简答题答:C语言具有语言简洁、具有结构化的控制语句、丰富的数据类型、丰富的运算符、可对物理地址进行直接操作、代码具有较好的可移植性、可生成高质量、目标代码执行效率高的程序等特点。四、编程题1.stdio.h、main、Hello,C第2章习题一、填空题1.short。2.83.44.’\?’5.706.二进制十六进制7.文件应用程序8.短整型长整型9.%c10.小数指数11.66二、选择题1.A2.C3.C4.A5.D6.C7.D8.A9.B10.A11.A12.D13.C14.A15.D16.D17.C18.C19.A20.A21.B22.C23.A24.A25.A26.A27.A28.A29.B30.C31.D32.D33.D34.A35.A三、简答题答:转换思路是八进制的一位转换为二进制的三位,运算的顺序是从低位向高位依次进行。答:转换思路是每三位二进制数转换为一位八进制数,运算的顺序是从低位向高位依次进行。四、编程题1.参考代码如下:intpeopleNumber,step,age;floatleftEyeVision,rightEyeVision;2.参考代码如下:#include<stdio.h>intmain(){ printf("%c\n",'H'); printf("\t%c\n",'H'); printf("\t\t%c",'H'); return0;}第3章习题一、填空题1.000011012.111010013.a*=b4.用户输入等号赋值5.操作数运算符6.ASCII7.双两8.单9.同一10.++11.关系12.~二、选择题1.A2.D3.A4.C5.A6.D7.A8.C9.D10.A11.A12.D13.D14.B15.B16.D17.A18.D19.B20.C21.B22.A23.A24.D25.D26.C27.A28.C29.A三、找错题1.参考如下:该代码中的变量x未初始化。2.参考如下:在C语言中,如果直接书写变量,但是此代码直接书写了。3.参考如下:在进行取余运算时,两个操作数都必须是整数,而此代码中右操作是是浮点型数据。四、编写题1.scanf("%d",&a)2.参考代码如下:#include<stdio.h>intmain(){ intdrinks=1100; intgroup=12; intsurplus=0; surplus=drinks%group; printf("多出%d瓶无法打包",surplus); return0;}3.参考代码如下:#include<stdio.h>intmain(){ printf("%c比较大",'B'>'d'?'B':'d'); return0;}第4章习题一、填空题1.语句2.表达式分号3.分号4.分号5.一多6.一多大括号7.顺序二、选择题1.B2.A3.D4.A5.C6.B7.D8.D9.C10.D11.B12.B13.B14.D15.C16.A17.D18.B19.B20.B三、找错题1.参考如下:此代码是在printf()函数后面确少“;”分号所致。四、编程题1.a*a+b*b2.a=b第5章习题一、填空题1.条件2.条件执行3.非004.if两个5.多6.低7.高8.高9.!10.case二、选择题1.A2.B3.A4.A5.A6.B7.D8.C9.D10.C11.C12.D三、编程题1.age>=182.a<10、b<103.height、score、height<1804.Age、13、14、155.height==180、weight>906.参考代码如下:#include<stdio.h>#include<conio.h>intmain(){ floatscore=0; printf("输入你的高考分数,按回车键结束\n"); scanf("%f",&score); if(score>=510) { printf("你的分数达到了本科分数线\n"); } else { printf("你的分数没有达到本科分数线\n"); } getch(); return0;}7.参考代码如下:#include<stdio.h>#include<conio.h>intmain(){ intyw=0,sx=0; printf("输入语文与数学成绩,以空格分隔,按回车键结束\n"); scanf("%d%d",&yw,&sx); if(yw>=60) { printf("恭喜你,你的语文成绩及格了\n"); } if(yw<60) { printf("抱歉,你的语文成绩没有及格\n"); } if(sx>=60) { printf("恭喜你,你的数学成绩及格了\n"); } if(sx<60) { printf("抱歉,你的数学成绩没有及格\n"); } getch(); return0;}第6章习题填空题1.反复2.初始化部分、迭代部分、判断部分3.满足、不满足4.for、while5.break6.continue二、选择题1.A2.A3.C4B5.C6.B7.C8.B9.C10.C11.B12.C13.C14.A15.D16.B17.A18.A19.B20.B三、找错题1.第一处错误:变量i未初始化。第二处错误:for语句中缺少分号2.第一处错误:变量a未声明。第二处错误:变量a未初始化。第三处错误:while后面缺少分号。四、编程题1.i=1、i<=100、i++、\n2.i<=10、result*i、i++3.i<10、j<=i、j++、i*j4.r<=10、area>100、break第7章习题填空题1.语句2.首部、函数体二、选择题1.B2.D3.C4.B5.B6.A7.A8.C9.D10.D11.B12.C13.A14.A15.C16.A17.C18.C19.A20.C21.D22.C23.D24.D25.A26.A27.C28.A三、找错题1.Year()函数是无返回值的函数,但是在该函数中使用了return。四、编程题1.n==1、n*sum(n-1)、scanf("%d",&b);、a=sum(b);2.参考代码如下:#include<stdio.h>intnum(intn){ inti; for(i=2;i<=n-1;++i){ if(n%i==0){ return0; } } return1;}intmain(){ intx=0; scanf("%d",&x); if(num(x)){ printf("是素数\n"); } return0;}3.参考代码如下:#include<stdio.h>intmax(inta,intb,intc){ if(a>b&&a>c) returna; elseif(b>a&&b>c) returnb; else returnc;}intmain(){ intx,y,z,i,j,k; printf("输入三个数:"); scanf("%d%d%d",&x,&y,&z); k=max(x,y,z); i=1; while(1) { j=k*i; if(j%x==0&&j%y==0&&j%z==0) break; i++; } printf("最小公倍数为%d\n",j); return0;}第8章习题一、填空题1.内存、编号2.地址值3.间址、单4.malloc()5.calloc()6.free()二、选择题1.C2.C3.A4.B5.D6.C7.B8.B9.A10.D11.B12.A13.A14.B15.C16.C17.D18.D19.D20.B21.A22.B三、找错题1.指针变量赋值方式不对。修改为:inta=10;int*p1;p1=&a;第9章习题一、填空题1.相同2.首3.赋值4.数组名+下标方式、使用指针5.数组名、元素个数6.数组名[下标]7.二8.相同、指针9.每、行指针10.地址值二、选择题1.A2.C3.A4.C5.A6.D7.B8.B9.C10.B11.C12.A13.B14.C15.C16.A17.A18.D19.A20.D21.B22.C23.C三、找错题1.数组a初始化时越界。四、编程题1.a[i][0]=1、a[i][j]=1、a[i][j]=a[i-1][j-1]+a[i-1][j]、printf("%5d",a[i][j])2.fab[i-2]+fab[i-1]、j%53.b[i]=0、a[j]<='z'、b[a[j]-'a']++、scanf("%s",a)、fun(a,b);、printf("%3d",b[i])第10章习题一、填空题1.数字、下划线2.内存、数组3.“\0”、结束二、选择题1.A2.A3.C4.A5.A6.C7.B8.D9.A10.A11.A三、编程题1.参考代码如下:#include<stdio.h>#include<string.h>#include<stdlib.h>structObject{charvalue[32];};voidselect_sort(char*arr[],intn){for(inti=0;i<n-1;i++){for(intj=i+1;j<n;j++){if(strcmp(arr[j],arr[i])<0){char*temp=arr[j];arr[j]=arr[i];arr[i]=temp;}}}}intmain(){inti;Objectobjs[5];for(i=0;i<5;i++){printf("pleaseinput:");gets_s(objs[i].value);}printf("overinput.\n");char*name[5];for(i=0;i<5;i++){name[i]=objs[i].value;}select_sort(name,5);for(i=0;i<5;i++){printf("%s\n",name[i]);}return0;}2.参考代码如下:#include<stdio.h>#include<string.h>#include<stdlib.h>intparse(constchar*input,intnumbers[]){intcount=0;//charbuf[128];intstart,end;intflag=0;//字符是否有效,为1则有效,为0则无效intlen=strlen(input);for(inti=0;i<len;i++){if(input[i]=='\0')break;elseif(input[i]>='0'&&input[i]<='9'){if(flag==0){start=i;flag=1;}}else{if(flag==1){end=i;flag=0;count++;for(intj=start;j<end;j++){printf("%c",input[j]);}printf("\n");}}}printf("%d\n",count);returncount;}intmain(){intnumber[128];char*str={"121598"};parse(str,number);return0;}第11章习题一、填空题1.不同2.“.”3.成员、不能4.下标5.所有、部分、嵌套6.同时、先定义后声明7.首地址8.不同、同一9.整型10.->11.enum二、选择题1.D2.A3.D4.B5.C6.C7.C8.A9

温馨提示

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

最新文档

评论

0/150

提交评论