《C语言程序设计教程》课后题答案

合集下载

《C语言程序设计》课后习题答案()谭浩强

《C语言程序设计》课后习题答案()谭浩强

第1章程序设计和C语言11.1什么是计算机程序11.2什么是计算机语言11.3C语言的发展及其特点31.4最简单的C语言程序51.4.1最简单的C语言程序举例61.4.2C语言程序的结构101.5运行C程序的步骤与方法121.6程序设计的任务141-5 #include <stdio.h>int main ( ){ printf ("**************************\n\n");printf(" Very Good!\n\n");printf ("**************************\n");return 0;}1-6#include <stdio.h>int main(){int a,b,c,max;printf("please input a,b,c:\n");scanf("%d,%d,%d",&a,&b,&c);max=a;if (max<b)max=b;if (max<c)max=c;printf("The largest number is %d\n",max); return 0;}第2章算法——程序的灵魂162.1什么是算法162.2简单的算法举例172.3算法的特性212.4怎样表示一个算法222.4.1用自然语言表示算法222.4.2用流程图表示算法222.4.3三种基本结构和改进的流程图262.4.4用N S流程图表示算法282.4.5用伪代码表示算法312.4.6用计算机语言表示算法322.5结构化程序设计方法34习题36第章最简单的C程序设计——顺序程序设计37 3.1顺序程序设计举例373.2数据的表现形式及其运算393.2.1常量和变量393.2.2数据类型423.2.3整型数据443.2.4字符型数据473.2.5浮点型数据493.2.6怎样确定常量的类型513.2.7运算符和表达式523.3C语句573.3.1C语句的作用和分类573.3.2最基本的语句——赋值语句593.4数据的输入输出653.4.1输入输出举例653.4.2有关数据输入输出的概念673.4.3用printf函数输出数据683.4.4用scanf函数输入数据753.4.5字符数据的输入输出78习题823-1 #include <stdio.h>#include <math.h>int main(){float p,r,n;r=0.1;n=10;p=pow(1+r,n);printf("p=%f\n",p);return 0;}3-2-1#include <stdio.h>#include <math.h>int main(){float r5,r3,r2,r1,r0,p,p1,p2,p3,p4,p5;p=1000;r5=0.0585;r3=0.054;r2=0.0468;r1=0.0414;r0=0.0072;p1=p*((1+r5)*5); // 一次存5年期p2=p*(1+2*r2)*(1+3*r3); // 先存2年期,到期后将本息再存3年期p3=p*(1+3*r3)*(1+2*r2); // 先存3年期,到期后将本息再存2年期p4=p*pow(1+r1,5); // 存1年期,到期后将本息存再存1年期,连续存5次p5=p*pow(1+r0/4,4*5); // 存活期存款。

《C语言程序设计教程》课后题答案

《C语言程序设计教程》课后题答案

《C语言程序设计教程》课后题答案第一章一选择题1.A2.B3.C4.D5.B6.C二.填空题1.程序2.算法3.main或主4.编译5.编译6. .obj7.库函数8.文本或ASCII码三、编程题1.参考代码如下:#include <stdio.h>void main(){printf("金\n木\n水\n火\n土\n");}2. 参考代码如下:#include <stdio.h>void main(){ int a,b;scanf("%d%d",&a,&b);printf("%d+%d=%d\n",a,b,a+b);printf("%d-%d=%d\n",a,b,a-b);printf("%d*%d=%d\n",a,b,a*b);printf("%d/%d=%d\n",a,b,a/b);}3. 参考代码如下:#include <stdio.h>void main(){float a,b,h,s;scanf("%f%f%f",&a,&b,&h);s=(a+b)*h/2;printf("s=%f\n",s);}第二章一选择题答案及分析:1.B,略2.A,-8在内存中是以补码(设两个字节)形式存储的3.A,C语言有32个关键字(参见课本第18页),且C语言标识符是区分大小写字母的4.A,略5.D,八进制数据中不能出现数码86.B,字符常量应该用单引号括起来,答案D超出了ASCII取值范围(ASCII的取值范围为[0,255])7.C,该字符串中转义字符有三个:\\、 \22和 \n,普通字符有三个:a、 ,和0,所以字符串长度为68.C,略9.D,C语言没有read函数和%D格式符号,且scanf函数第二个形参为地址列表10.B,根据题意,scanf函数输入数据时分隔符号不应该是逗号,应该是空格或回车符,且输入数据时分一行或几行均可11.A,scanf函数中不允许出现%8.4,%6.2和%8这样的格式符号12.C,既要保证5位小数位,还得保证整数位不变,这样数据12345.67800用10列不能完全显示出来,按C语言规定,12345.67800原样输出13.B,printf函数中格式符号%d,%o,%x表示对应的整型数据分别按十进制,八进制和十六进制输出14.C,按C语言规定,scanf函数形参双引号中,如果包含非格式符号,在输入数据时要求原样输入二.填空题答案及分析:1.int float double(略)2.65,89 ,printf函数中如果格式符号是%d,则输出相应字符的ASCII十进制数值3.a=98,b=765.000000,c=4321.000000,scanf函数中的格式符号%2d%3f%4f,表示将键盘输入的数据9876543210按2,3,4位分割,然后再分别赋给变量a,b,c4.scanf("%lf%lf%lf",&a,&b,&c); double类型的变量对应的格式符号是%lf三、编程题1. 参考代码如下:#include <stdio.h>void main(){int a=97;printf("%c\n",a);printf("%d\n",a);printf("%o\n",a);printf("%x\n",a);}程序分析:通过printf函数中不同的格式符号,即%c(字符),%d(十进制),%o(八进制),%x (十六进制)输出相应的值。

《C语言程序设计教程》第三版课后习题参考答案

《C语言程序设计教程》第三版课后习题参考答案

《C语言程序设计教程》第三版课后习题参考答案C语言程序设计教程第三版课后习题参考答案第一章:C语言概述1.1 C语言的特点答案:C语言是一种通用的、面向过程的程序设计语言,具有高效、简洁、灵活等特点。

它提供了丰富的程序设计元素和功能,适用于各种不同的应用领域。

1.2 C语言程序的基本结构答案:C语言程序由预处理指令、函数声明、函数定义、变量声明和语句组成。

其中,预处理指令用来引入头文件或定义宏,函数声明用来声明函数的名称和参数,函数定义用来实现函数的功能,变量声明用来声明变量的类型和名称,语句用来表达具体的计算过程。

1.3 C语言的数据类型答案:C语言提供了多种数据类型,包括基本类型(整型、浮点型、字符型等)和派生类型(数组、指针、结构体等)。

每种数据类型在内存中占据一定的存储空间,并具有特定的取值范围和操作规则。

1.4 C语言的运算符和表达式答案:C语言支持各种运算符和表达式,例如算术运算符(+、-、*、/等)、关系运算符(>、<、==等)、逻辑运算符(&&、||、!等)等。

通过运算符和表达式可以进行各种数值计算和逻辑判断。

第二章:基本数据类型与运算2.1 整型数据类型答案:C语言提供了不同长度的整型数据类型,包括有符号整型(int、long等)和无符号整型(unsigned int、unsigned long等)。

整型数据类型可以表示整数值,并具有不同的取值范围。

2.2 浮点型数据类型答案:C语言提供了浮点型数据类型(float、double等),用来表示带小数部分的实数值。

浮点型数据可以表示较大或较小的数值,并具有一定的精度。

2.3 字符型数据类型答案:C语言提供了字符型数据类型(char),用来表示单个字符。

字符型数据可以用于表示各种字符(包括字母、数字、符号等)。

2.4 布尔型数据类型答案:C语言不直接支持布尔型数据类型,但可以使用整型数据类型来表示布尔值(0表示假、非零表示真)。

《C语言程序设计教程》课后题答案

《C语言程序设计教程》课后题答案

《C语言程序设计教程》课后题答案第一章一选择题1.A2.B3.C4.D5.B6.C二.填空题1.程序2.算法3.main或主4.编译5.编译6. .obj7.库函数8.文本或ASCII码第二章一选择题1.B2.A3.A4.A5.D6.B7.C8.C9.D 10.B 11.A 12.C 13.B 14.C二.填空题1.int float double2.65,893.a=98,b=765.000000,c=4321.0000004.scanf("%lf%lf%lf",&a,&b,&c);第三章一选择题1.A2.C3.C4.D5.C6.B7.C8.B9.A 10.A 11.A 12.B 13.D 14.A 15.B 16.C 17.C 18.C 19.C 20.C 21.C 22.B 23.C 24.C 25.A 26.B 27.A 28.A29.C 30.A 31.C 32.C二.填空题1.非零零2.passwarm3.5252524.fabs(x)>55.x%y==06.if((1<=x&&x<=10||200<=x&&x<=210)&&x%2==1)printf("%d",x);7.k=18.Right!1Right!19.$$$ a=010.a=2,b=111.0<a<b12. t;"%f%f"a=b;13. "%c",&ch'A'<=ch&&ch<='Z'ch14.死循环15.34516. 7 3 -117.x>=0x<amin18.scanf("%f",&x);sum+=x;19.820.1121. 2.40000022.892123.i<=9j%3!=024. b=i+125. 8 5 226. d=1.0k++k<=n第四章一选择题1.A2.C3.D4.D5.B6.B7.B8.D9.B 10.A 11.C 12.D 13.C 14.A 15.D16.C 17.A 18.C 19.A 20.D 21.D 22.A二.填空题1. a=1234 b=52. Hello3.j<3; b[j][i]=a[i][j]; i<34. a[age]++i=18;i<=255.c[i]=n%base; b[d]6.break; i>=87. -850,2,08.a[i]>b[j] i<3 j<59.a[i][j] j=0;j<4;j++ j==3 printf("\n");10.fi11.GDABC12. s[i++]13.ahAMa14.LBLMNP15. '\0' i++16.b[j]=a[j][0]; b[j]=a[j][k]17.a[k++]=a[j]第五章一.选择题1-5 DDBCB 6-10 BACAA 11-15DBBCD二.填空题1. How does she2. *(p+i*4+j)printf("\n")3. *(++p)4. num+1q<num+10*q>max*q<min5.0或'\0'n++b[n]= '\0'第六章一.选择题1-5 CBCDA 6-10 AADBB 11-15BBDBD 16-20 AABAA 二.填空题1. 四auto, register, static, extern2. 5 63. 8,174. 126241205.return 1return n+sum(n-1)第七章一.选择题1-5BDDCC 6-10 BBDCB 11-15BBDCB 16-18 DBB 二.填空题1.3042. ARRAY a,b,c;3. 234. ac5.p->name&p->post_codestruct communication *p->post_code第八章一.单选题1-5 BABAD 6-10 DDDCD 11 D 二.填空题1. 二进制文本2. pf=fopen("D:\\zk04\\data\\txfile.dat","w")3. 二进制文本文件结束符非0值第九章1.(1)30 (2)3 (3)9 (4)292.(1)1 (2)1 (3)1 (4)7 (5)15 (6)6第十一章一.单选题1-5 CBBDD 6 D二.填空题1.struct link *next;2.①struct student *②tail->next③head3.Answer:34.①break②(struct data *)malloc(struct data)③while(1)④p!=NULL⑤p=p->link5.①x②p③s。

《C语言程序设计》课后习题答案(第四版)

《C语言程序设计》课后习题答案(第四版)

第1章程序设计和C语言11.1什么是计算机程序11.2什么是计算机语言11.3C语言的发展及其特点31.4最简单的C语言程序51.4.1最简单的C语言程序举例61.4.2C语言程序的结构101.5运行C程序的步骤与方法121.6程序设计的任务141-5 #include <stdio.h>int main ( ){ printf ("**************************\n\n");printf(" Very Good!\n\n");printf ("**************************\n");return 0;}1-6#include <stdio.h>int main(){int a,b,c,max;printf("please input a,b,c:\n");scanf("%d,%d,%d",&a,&b,&c);max=a;if (max<b)max=b;if (max<c)max=c;printf("The largest number is %d\n",max); return 0;}第2章算法——程序的灵魂162.1什么是算法162.2简单的算法举例172.3算法的特性212.4怎样表示一个算法222.4.1用自然语言表示算法222.4.2用流程图表示算法222.4.3三种基本结构和改进的流程图262.4.4用N S流程图表示算法282.4.5用伪代码表示算法312.4.6用计算机语言表示算法322.5结构化程序设计方法34习题36第章最简单的C程序设计——顺序程序设计37 3.1顺序程序设计举例373.2数据的表现形式及其运算393.2.1常量和变量393.2.2数据类型423.2.3整型数据443.2.4字符型数据473.2.5浮点型数据493.2.6怎样确定常量的类型513.2.7运算符和表达式523.3C语句573.3.1C语句的作用和分类573.3.2最基本的语句——赋值语句593.4数据的输入输出653.4.1输入输出举例653.4.2有关数据输入输出的概念673.4.3用printf函数输出数据683.4.4用scanf函数输入数据753.4.5字符数据的输入输出78习题823-1 #include <stdio.h>#include <math.h>int main(){float p,r,n;r=0.1;n=10;p=pow(1+r,n);printf("p=%f\n",p);return 0;}3-2-1#include <stdio.h>#include <math.h>int main(){float r5,r3,r2,r1,r0,p,p1,p2,p3,p4,p5;p=1000;r5=0.0585;r3=0.054;r2=0.0468;r1=0.0414;r0=0.0072;p1=p*((1+r5)*5); // 一次存5年期p2=p*(1+2*r2)*(1+3*r3); // 先存2年期,到期后将本息再存3年期p3=p*(1+3*r3)*(1+2*r2); // 先存3年期,到期后将本息再存2年期p4=p*pow(1+r1,5); // 存1年期,到期后将本息存再存1年期,连续存5次p5=p*pow(1+r0/4,4*5); // 存活期存款。

c语言程序设计教程第二版课后习题答案

c语言程序设计教程第二版课后习题答案

c语言程序设计教程第二版课后习题答案【篇一:c语言程序设计教程_李含光_郑关胜_清华大学出版社习题答案习题答案[完美打印版]】1.单项选择题(1)a (2)c(3)d (4)c (5)b 2.填空题(1)函数(2)主函数(main)(3)printf() , scanf()第2章习题参考答案1.单项选择题1-5 cbccc 6-10 cdcdc 11-13 dbb 2.填空题(1)1(2)26 (3)6 , 4 , 2 (4)10 , 6(5)3.000000 (6)双精度(double)(7)9 (8)字母,数字,下划线(9)13.700000 (10)11(11)((m/10)%10)*100+(m/100)*10+m%10(12)0 (13)10 ,9 ,11(15)(x0y0)||(x0z0)||(y0||z0)(16)double (17)x==0(18)sqrt(fabs(a-b))/(3*(a+b))(19)sqrt((x*x+y*y)/(a+b))第3章习题参考答案1.单项选择题1-5 cccdd 6-10 bcdbc11-15 bcbbb16 a 2.填空题(1)用;表示结束(2){ }(3)y=x0?1:x==0?0:-1(4)y%4==0y%100!=0||y%400==0(5)上面未配对(6)default 标号(7)while , do while , for(8)do while(9)本次(10)本层 3.阅读程序,指出结果(1)yes(2)*(3)abother(4)28 70(5)2,0(6)8(7)36 (8)1(9)3,1,-1,3,1,-1(10)a=12 ,y=12(11)i=6,k=4 (12)1,-2 4.程序填空(1)x:y , u:z(2)m=n , m!=0,m=m/10(3)teps , t*n/(2*n+1) , printf(“%lf\n”,2*s) (4)m%5==0 ,printf(“%d\n”,k) (5)cx=getchar() , cx!=front , cx(6)double s=0, 1.0/k , %lf (7)s=0 , sgmin, 5.编程题(1). #include stdio.h int main() {double x,y; scanf(%lf,x); if(x1) y=x;else if(x=1.0x10) y=2*x-11; elsey=3*x-11;printf(%lf\n,y); return 0; } (2).#include stdio.h int main() {double x,y,z,min;scanf(%lf%lf%lf,x,y,z); if(xy) min=y; else min=x; if(minz)min=z;printf(min=%lf\n,min); return 0; } (3).#include stdio.h int main() {int y,m,d,flag,s=0,w,i;scanf(%d%d%d,y,m,d);flag=(y%4==0y%100!=0||y%400==0);w=((y-1)*365+(y-1)/4-(y-1)/100+(y-1)/400)%7;for(i=1;i=m;i++) {switch(i) {case 1:s=d;break; case 2:s=31+d;break; case 3:s=59+d;break; case 4:s=90+d;break; case 5:s=120+d;break; case6:s=151+d;break; case 7:s=181+d;break; case8:s=212+d;break; case 9:s=243+d;break; case10:s=273+d;break; case 11:s=304+d;break; case12:s=334+d;break;} }s=(w+s)%7; if(s==0)printf(星期日\n); elseprintf(星期%d\n,s); return 0; }(4).#include stdio.h int main() {float p,r;scanf(%f,p); if(p=10) r=p*0.1;else if(p10p=20) r=10*0.1+(p-10)*0.075; else if(p20p=40)r=10*0.1+10*0.075+(p-20)*0.05; else if(p40p=60)r=10*0.1+10*0.075+20*0.05+(p-40)*0.03;else if(p60p=100)r=10*0.1+10*0.075+20*0.05+20*0.03+(p-60)*0.015; else if(p100)r=10*0.1+10*0.075+20*0.05+20*0.03+40*0.015+(p-100)*0.01; printf(%f\n,r); return 0; } (5).#include stdio.h int main() {char c;while((c=getchar())!=\n) {if(c=ac=z) c=c-32; putchar(c);}return 0; } (6).#includestdio.h int main() {int m,k=2;printf(输入一个正整数:\n); scanf(%d,m); while(km) if(m%k==0) {printf(%4d,k); m=m/k; } else k++;printf(%4d\n,m); return 0; } (7).#includestdio.h int main() {int a,n,s=0,p=0,i;scanf(%d %d,n,a); for(i=1;i=n;i++) {p=p*10+a; s=s+p; }printf(%d\n,s); return 0; } (8).#includestdio.h int main(){int i,j,k;for(i=1;i=9;i++) for(j=0;j=9;j++) for(k=0;k=9;k++)printf(%5d,100*i+10*j+k); return 0; }(9).#includestdio.h #includemath.h int main() {float a=-10,b=10,x,f1,f2,f; f1=(((2*a-4)*a+3)*a)-6; f2=(((2*b-4)*b+3)*b)-6; do {x=(a+b)/2;f=(((2*x-4)*x+3)*x)-6; if(f*f10) { b=x; f2=f; } else { a=x;f1=f; }}while(fabs(f)=1e-6); printf(%6.2f\n,x); return 0; }(10).#includestdio.h#includemath.h int main() {int n=2;double eps,t,s=0,x;scanf(%lf %lf,x,eps); t=x; s=t;while(fabs(t)=eps) {t=-t*(2*n-3)*x*x/(2*n-2); s=s+t/(2*n); n++; }printf(%d,%lf\n,n,s); return 0; }(11).#includestdio.h int main() {unsigned long s,t=0,p=1; scanf(%u,s); while(s!=0) {if((s%10)%2!=0) {t=t+(s%10)*p; p=p*10; }s=s/10; }printf(%u\n,t); return 0; }第4章习题参考答案1.单项选择题1-5 dddbd 6-10 badcd 11-14 bdab 2.填空题(1)2(2)嵌套,递归(3)全局变量,局部变量,静态变量,动态变量(4)auto , static , register , extern (5)外部变量(6)编译,运行 3.阅读程序,指出结果(1)15(2)5(3)5,4,3 (4)i=5 i=2 i=2 i=4 i=2(5)求水仙花数(6)-5*5*5(7)30 (8)0 10 1 11 2 124.程序填空(1)float fun(float , float) , x+y,x-y, z+y,z-y (2)x , x*x+1 (3)s=0 , a=a+b 5.编程题(1).while(s!=0) #includestdio.h { unsigned int fun(unsigned int);p=p+s%10; int main() s=s/10; { } unsigned int s; return p; scanf(%u,s); } printf(%u\n,fun(s)); (2). return 0;#includestdio.h } #includestdlib.h unsigned int fun(unsignedint s) #includemath.h { void f1(float,float,float,float); unsigned int p=0; void f2(float,float,float,float);【篇二:《c语言程序设计》课后习题答案(第四版)谭浩强】t>1.1什么是计算机程序11.2什么是计算机语言11.3c语言的发展及其特点31.4最简单的c语言程序51.4.1最简单的c语言程序举例61.4.2c语言程序的结构101.5运行c程序的步骤与方法121.6程序设计的任务141-5 #include stdio.hint main ( ){ printf (**************************\n\n);printf( very good!\n\n);printf (**************************\n);return 0;}1-6#include stdio.hint main(){int a,b,c,max;printf(please input a,b,c:\n);scanf(%d,%d,%d,a,b,c);max=a;if (maxb)max=b;if (maxc)max=c;printf(the largest number is %d\n,max);return 0;}第2章算法——程序的灵魂162.1什么是算法162.2简单的算法举例172.3算法的特性212.4怎样表示一个算法222.4.1用自然语言表示算法222.4.2用流程图表示算法222.4.3三种基本结构和改进的流程图262.4.4用n?s流程图表示算法282.4.5用伪代码表示算法312.4.6用计算机语言表示算法322.5结构化程序设计方法34习题36第章最简单的c程序设计——顺序程序设计37 3.1顺序程序设计举例373.2数据的表现形式及其运算393.2.1常量和变量393.2.2数据类型423.2.3整型数据443.2.4字符型数据473.2.5浮点型数据493.2.6怎样确定常量的类型513.2.7运算符和表达式523.3c语句573.3.1c语句的作用和分类573.3.2最基本的语句——赋值语句593.4数据的输入输出653.4.1输入输出举例653.4.2有关数据输入输出的概念673.4.3用printf函数输出数据683.4.4用scanf函数输入数据753.4.5字符数据的输入输出78习题823-1 #include stdio.h#include math.hint main(){float p,r,n;r=0.1;n=10;p=pow(1+r,n);printf(p=%f\n,p);return 0;}3-2-1#include stdio.h#include math.hint main(){float r5,r3,r2,r1,r0,p,p1,p2,p3,p4,p5;p=1000;r5=0.0585;r3=0.054;r2=0.0468;r1=0.0414;r0=0.0072;p1=p*((1+r5)*5);// 一次存5年期p2=p*(1+2*r2)*(1+3*r3); // 先存2年期,到期后将本息再存3年期 p3=p*(1+3*r3)*(1+2*r2); // 先存3年期,到期后将本息再存2年期p4=p*pow(1+r1,5); // 存1年期,到期后将本息存再存1年期,连续存5次 p5=p*pow(1+r0/4,4*5); // 存活期存款。

大学_C语言程序设计教程课后习题答案下载

C语言程序设计教程课后习题答案下载C语言程序设计教程内容简介第1章C语言概述11.1简单的C语言程序11.2C语言的发展历史与特点31.2.1C语言的发展历史31.2.2C语言的'特点41.3C程序的开发步骤和上机调试流程51.3.1C程序的开发步骤51.3.2C程序的上机开发过程6习题112第2章基本数据类型的输入/输出132.1C语言的输入/输出132.2整型数据的输入/输出132.3浮点型数据的输入/输出142.4字符数据的输入/输出152.5字符串数据的输入/输出152.6格式化输入/输出举例172.7阅读材料182.7.1格式化输出函数printf的格式说明和使用182.7.2格式化输入函数scanf的格式说明和使用19习题221第3章流程控制223.1算法223.1.1算法的概念223.1.2算法的表达方式233.1.3基本流程控制结构253.1.4案例3.1 求1+1/2+…+1/100的和263.2选择语句263.2.1案例3.2 求三个整数的最大值(if语句)263.2.2案例3.3 百分制成绩转换成五分制成绩(多分支if语句)293.2.3案例3.4 判断所输入的一个字符是数字、空白符还是其他字符(switch语句)313.2.4案例3.5 百分制成绩转换成五分制成绩(switch语句)333.3循环语句343.3.1案例3.6 求1+1/2+…+1/100的和(while语句)343.3.2案例3.7 求1+1/2+…+1/100的和(do...while语句)353.3.3案例3.8 求1+1/2+…+1/100的和(for语句)373.4转向语句393.4.1案例3.9 判断所输入的一个大于1的正整数是否是素数(break语句)393.4.2案例3.10 输出100~200之间能被3整除的数(continue语句)413.5应用举例423.5.1案例3.11 计算1! + 2! + … + 10!(并讨论溢出问题)423.5.2案例3.12 计算级数1-1/3+1/5-1/7+…的和443.5.3案例3.13 统计输入的数字字符、字母字符和其他字符的个数453.5.4案例3.14 求两个正整数的最大公约数和最小公倍数453.5.5案例3.15 将一个正整数逆序输出463.5.6案例3.16 输入日期并检查其合理性,直到输入合理为止473.6阅读材料483.6.1C语言的语句483.6.2goto语句简介493.6.3exit()函数493.6.4程序调试简介50习题351C语言程序设计教程目录本书定位于将C语言作为计算机编程入门语言,以帮助读者树立计算机程序设计的思想,培养学生程序设计基本能力为目标的教材。

《C语言程序设计》课后习题参考答案

参考代码如下:
#include <stdio.h>
main()
{ int a[10]={1,2,3,4,5,6,7,8,9,10};
int n,i,j,k=0;
printf("Please enter the number:");
scanf("%d",&n);
for(i=0;i<10;i++)
{ while(n==a[i])
s++;
}
}
printf("s=%d\n",s);
}
4.编程:从键盘输入正整数n,输出1+(1+2)+(1+2+3)+……+(1+2+3+…+n)。
参考代码如下:
#include <stdio.h>
main()
{
int n,i,s=0,t=0;
printf("Please enter n=");
scanf("%d",&n);
for(j=0;j<3;j++)
printf("%5d",b[i][j]);
}
printf("\n");
getch();
}
6.利用公式 计算m×n的矩阵A和m×n的矩阵B之和,已知 为矩阵A的元素, 为矩阵B的元素, 为矩阵C的元素, 。
1. A 2.A 3.C
二、填空题
1.基本数据类型、构造数据类型、指针类型、空类型
2.反斜线“\”
3.枚举数据类型(Enumerated Data Type)

c c 程序设计教程课后习题答案

c c 程序设计教程课后习题答案C语言程序设计教程课后习题答案详解在学习C语言程序设计过程中,课后习题是加深对知识点理解和巩固编程能力的重要练习。

下面,我将为您提供一个500字的C语言程序设计教程课后习题答案详解。

1. 编写一个程序,输入一个正整数n,判断其是否为素数。

解答:#include <stdio.h>int main() {int n, i, flag = 0;printf("请输入一个正整数:");scanf("%d", &n);for (i = 2; i <= n / 2; i++) {if (n % i == 0) {flag = 1;break;}}if (flag == 0) {printf("%d是素数\n", n);} else {printf("%d不是素数\n", n);}return 0;}2. 编写一个程序,统计输入的一个字符串中的字母、数字和其他字符的个数。

解答:#include <stdio.h>int main() {char str[100];int i, letterCount = 0, digitCount = 0, otherCount = 0;printf("请输入一个字符串:");gets(str);for (i = 0; str[i] != '\0'; i++) {if ((str[i] >= 'a' && str[i] <= 'z') ||(str[i] >= 'A' && str[i] <= 'Z')) {letterCount++;} else if (str[i] >= '0' && str[i] <= '9') {digitCount++;} else {otherCount++;}}printf("字母个数:%d\n", letterCount);printf("数字个数:%d\n", digitCount);printf("其他字符个数:%d\n", otherCount);return 0;}3. 编写一个程序,求解1到100之间所有能被3和7整除的数的和。

《C语言程序设计教程》习题参考答案

《C语言程序设计教程》习题参考答案《C语言程序设计教程》习题参考答案祝胜林主编华南理工大学出版社【习题1】 (1)【习题2】 (2)【习题3】 (3)【习题4】 (5)【习题5】 (8)【习题6】 (11)【习题7】 (14)【习题8】 (17)【习题9】 (17)【习题10】 (20)一、简答题(在课本中寻找答案,略)1.1C程序的基本结构包括哪些内容?1.2如何定义标识符?1.3输入格式、输出格式的组成包括哪些内容?1.4C语言函数分为哪两类?1.5计算表达式的值应该考虑哪些方面?1.6上机调试程序的步骤如何?二、判断并改错1.7C程序执行的入口是main()函数,所以main函数必须放在程序的开头。

错误:main函数可以放在程序的任何位置。

并不限定在程序的开头。

1.8定义一个函数包括数据说明部分和执行语句部分,两者可以交叉出现。

错误:不可以交叉出现,数据说明部分在执行语句部分的前面。

1.9编辑与编译不是一回事。

错误:不是一回事。

编辑完成源程序的输入和修改;编译是对源程序进行语法检查,如果无语法错误,则生成目标程序。

1.10scanf("%d,%d",&x,&y);的正确输入格式:3,4<回车>。

正确1.11注释内容太多会影响程序的执行效率。

错误:不会影响程序的执行效率。

因为在编译时,编译系统将注释内容删除或用空格代替,所以注释内容不会编译到目标程序中。

1.12所有的数学公式可以直接出现在源程序中。

错误:数学公式需要转换成C语言能够接受的公式才能出现在源程序中。

三、编程题1.13在屏幕上输出自己名字的拼音。

提示:中文名字叫?张三?,对应的拼音为?Zhang San?,输出用printf()函数。

1.14 输入圆的半径,求圆的周长,并将结果保留两位小数输出到屏幕上。

提示:定义圆的半径r,圆的周长:2*3.14*r,输出结果保留2位小数可以用%.2f1.15输入两个整数,输出其中最大者。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《C语言程序设计教程》课后题答案
第一章
一选择题
1.A
2.B
3.C
4.D
5.B
6.C
二.填空题
1.程序
2.算法
3.main或主
4.编译
5.编译
6. .obj
7.库函数
8.文本或ASCII码
第二章
一选择题
1.B
2.A
3.A
4.A
5.D
6.B
7.C
8.C
9.D 10.B 11.A 12.C 13.B 14.C
二.填空题
1.int float double
2.65,89
3.a=98,b=765.000000,c=4321.000000
4.scanf("%lf%lf%lf",&a,&b,&c);
第三章
一选择题
1.A
2.C
3.C
4.D
5.C
6.B
7.C
8.B
9.A 10.A 11.A 12.B 13.D 14.A 15.B 16.C 17.C 18.C 19.C 20.C 21.C 22.B 23.C 24.C 25.A 26.B 27.A 28.A
29.C 30.A 31.C 32.C
二.填空题
1.非零零
2.passwarm
3.525252
4.fabs(x)>5
5.x%y==0
6.if((1<=x&&x<=10||200<=x&&x<=210)&&x%2==1)printf("%d",x);
7.k=1
8.Right!1
Right!1
9.$$$ a=0
10.a=2,b=1
11.0<a<b
12. t;
"%f%f"
a=b;
13. "%c",&ch
'A'<=ch&&ch<='Z'
ch
14.死循环
15.345
16. 7 3 -1
17.x>=0
x<amin
18.scanf("%f",&x);
sum+=x;
19.8
20.11
21. 2.400000
22.8921
23.i<=9
j%3!=0
24. b=i+1
25. 8 5 2
26. d=1.0
k++
k<=n
第四章
一选择题
1.A
2.C
3.D
4.D
5.B
6.B
7.B
8.D
9.B 10.A 11.C 12.D 13.C 14.A 15.D
16.C 17.A 18.C 19.A 20.D 21.D 22.A
二.填空题
1. a=1234 b=5
2. Hello
3.j<3; b[j][i]=a[i][j]; i<3
4. a[age]++
i=18;i<=25
5.c[i]=n%base; b[d]
6.break; i>=8
7. -850,2,0
8.a[i]>b[j] i<3 j<5
9.a[i][j] j=0;j<4;j++ j==3 printf("\n");
10.fi
11.GDABC
12. s[i++]
13.ahAMa
14.LBLMNP
15. '\0' i++
16.b[j]=a[j][0]; b[j]=a[j][k]
17.a[k++]=a[j]
第五章
一.选择题
1-5 DDBCB 6-10 BACAA 11-15DBBCD
二.填空题
1. How does she
2. *(p+i*4+j)
printf("\n")
3. *(++p)
4. num+1
q<num+10
*q>max
*q<min
5.0或'\0'
n++
b[n]= '\0'
第六章
一.选择题
1-5 CBCDA 6-10 AADBB 11-15BBDBD 16-20 AABAA 二.填空题
1. 四
auto, register, static, extern
2. 5 6
3. 8,17
4. 1
2
6
24
120
5.return 1
return n+sum(n-1)
第七章
一.选择题
1-5BDDCC 6-10 BBDCB 11-15BBDCB 16-18 DBB 二.填空题
1.30
4
2. ARRAY a,b,c;
3. 2
3
4. a
c
5.p->name
&p->post_code
struct communication *
p->post_code
第八章一.单选题
1-5 BABAD 6-10 DDDCD 11 D 二.填空题
1. 二进制
文本
2. pf=fopen("D:\\zk04\\data\\txfile.dat","w")
3. 二进制
文本
文件结束符
非0值
第九章1.(1)30 (2)3 (3)9 (4)29
2.(1)1 (2)1 (3)1 (4)7 (5)15 (6)6
第十一章一.单选题
1-5 CBBDD 6 D
二.填空题
1.struct link *next;
2.①struct student *
②tail->next
③head
3.Answer:3
4.①break
②(struct data *)malloc(struct data)
③while(1)
④p!=NULL
⑤p=p->link
5.①x
②p
③s。

相关文档
最新文档