C语言程序设计(科学出版社)第1章 课后习题参考答案

合集下载

《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语言程序设计教程 课后习题参考答案
}
else if( carType == 2 ) //富康
{
if( distance < 3 )
totalMoney = 8.0;
else
totalMoney = 8 + fukang * (distance – 3);
}
else if( carType == 3 ) //富康
{
if( distance < 3 )
(3) 7BAB4BAB1BC
(4) ABABABC
(5) ******
******
******
******
4.
(1) a != b
(2) n / 10
(3) scanf(“%d”, &a);
5.(3)行int fac = 1, sum = 0;
6.
(1)
#include <stdio.h>
main( )
r = 2.5;
h = 3.5;
v = 3.14*r*r*h;
printf(“v=%lf\n”, v);
}
(2)
#include <stdio.h>
main( )
{
char ch;
ch = getchar( );
printf(“%c\n”, ch + 32);
}
(3)
#include <stdio.h>
scanf("%d", &carType);
printf("请输入您乘车的总路程:");
scanf("%lf", &distance);
if( carType == 1)//夏利

c语言《程序设计基础》课后习题参考答案与解析

c语言《程序设计基础》课后习题参考答案与解析

c语言《程序设计基础》课后习题参考答案与解析《程序设计基础》习题参考答案与部分解析第1章 C 语言概述一、填空a) C源程序的基本单位是函数。

b) 一个C程序中至少应包括一个 main函数。

c) 在C语言中,输出操作是有库函数 printf( )函数完成。

二、单选题1、A2、C3、B解析:第1题答案:A 。

因为一个C程序总是从main函数开始执行的,而不论main函数在程序中的位置。

且到main函数结束。

第2题答案:C 。

因为 main函数没有限制必须位于程序的最前面。

C程序书写自由,一行内可写几个语句。

在对一个C 程序进行编译的过程中,无法检查注释当中的拼写错误。

不过C语言本身并没有输入输出语句,输入输出是由函数完成的。

第3题答案:B。

因为一个C语言程序是由若干个函数组成的。

但至少包含一个main 函数,且main函数的位置不限。

三、编程题1、编写一个输出“Welcome to C!”信息的小程序。

解:程序如下#include “stdio.h”main( ){1printf(“Welcome to C!”) ;}2、已知三角形的三边长分别为3,4,5,试用海轮公式编程求其面积。

海伦公式为:S?= ,其中s= (a+b+s)/2 ;解:程序如下#include “math.h”#include “stdio.h”main( ){int a , b , c ; /* a ,b,c 3个整型变量表示三角形的3条边。

*/float s ,s1 ; /* s1作为面积变量,s 作为中间变量是都应该是实形*/a=3 ; b= 4; c=5 ;s= (a+b+c)/2.0 ;s1= sqrt(s*(s-a)*(s-b)*(s-c)); /* sqrt函数完成开平方根功能。

*/printf(“area=%f\n”,s1);}2第2章程序设计基础知识一、单选题1、C2、A3、C4、A5、C6、C7、D8、C9、D 10、A 11、D 12、A 13、C 14、C 15、B A 16、B 17 D解析:1. 答案:C。

C语言程序设计教程第一章习题答案

C语言程序设计教程第一章习题答案

C语言程序设计教程第一章习题答案1、算法描述主要是用两种基本方法:第一是自然语言描述,第二是使用专用工具进行算法描述2、c语言程序的结构如下:1、c语言程序由函数组成,每个程序必须具有一个main函数作为程序的主控函数。

2、"/*"与"*/"之间的内容构成c语言程序的注释部分。

3、用预处理命令#include可以包含有关文件的信息。

4、大小写字母在c语言中是有区别的。

5、除main函数和标准库函数以外,用户可以自己编写函数,程序一般由多个函数组成,这些函数制定实际所需要做的工作。

例如:void main(){int a,b,c,s;a=8;b=12;c=6;s=a+b*c;printf("s=%d\n",s);}3、c语言的特点:1、c语言具有结构语言的特点,程序之间很容易实现段的共享;2、c语言的主要结构成分为函数,函数可以在程序中被定义完成独立的任务,独立地编译成代码,以实现程序的模块化。

3、c语言运算符丰富,运算包含的范围很广;4、c语言数据类型丰富。

5、c语言允许直接访问物理地址,即可直接对硬件进行操作,实现汇编语言的大部分功能;6、c语言语法限制不太严格,程序设计自由度大,这样是c语言能够减少对程序员的束缚;7、用c语言编程,生成的目标代码质量高,程序执行效率高,可移植性好;4、合法标识符:AB12、leed_3、EF3_3、_762、PAS、XYZ43K2不合法标识符:a*b2、8stu、D.K.Jon、if、ave#xy、#_DT5、C.D5、F2:将当前编辑器中文件存盘F10:调用主菜单F4:程序运行到光标所在行Ctrl+F9:当前编辑环境下,进行编译、连接且运行程序;Alt+F5:将窗口切换到DOS下,查看程序运行结果6、(1):********************welcome youvery good********************(2):please input three number;5,7,8max number is:87、main8、User screen、Alt+F59、标识符必须是字母或下划线开头,大小写字母含义不同。

C语言程序设计基础教程习题答案

C语言程序设计基础教程习题答案

C语言程序设计基础教程习题答案习题答案第1章1.1 填空题1.1.1 应用程序ONEFUNC.C中只有一个函数,这个函数的名称是__main 。

1.1.2 一个函数由__函数头__和__函数体__两部分组成。

1.1.3 在C语言中,输入操作是由库函数__scanf 完成的,输出操作是由库函数_printf_完成的。

1.1.4 通过文字编辑建立的源程序文件的扩展名__是_.c;编译后生成目标程序文件,扩展名是__.obj__;连接后生成可执行程序文件,扩展名是_.exe_;运行得到结果。

1.1.5 C语言程序的基本单位或者模块是__函__数。

1.1.6 C语言程序的语句结束符是____;。

1.1.7 编写一个C程序,上机运行要经过的步骤:______________________________。

1.1.8 在一个C语言源程序中,注释部分两侧的分界符分别__为_/*和__*/__。

1.1.9 C语言中的标识符只能由三种字符组成,它们是字母、数字和下划线。

且第一个字符必须为字母或下划线。

1.1.10 C语言中的标识符可分为关键字、预定义标识符和用户标识符 3类。

1.2 选择题1.2.1 一个C程序的执行是从( A )。

A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序的main函数开始,到本程序文件的最后一个函数结束D)本程序文件的第一个函数开始,到本程序main函数结束 1.2.2 以下叙述不正确的是(C)。

A)一个C源程序可由一个或多个函数组成B)一个C源程序必须包含一个main函数C) 在C程序中,注释说明只能位于一条语句的后面D) C程序的基本组成单位是函数1.2.3 C语言规定:在一个源程序中,main函数的位置( C )。

A)必须在程序的开头 B)必须在系统调用的库函数的后面C)可以在程序的任意位置 D)必须在程序的最后1.2.4 C编译程序是 (A)。

C语言程序设计第一章参考答案

C语言程序设计第一章参考答案

第一章参考答案1.3.1思考:1.error C2199: syntax error : found 'int (' at global scope (was a declaration intended?)error C2143: syntax error : missing ';' before '{'error C2447: missing function header (old-style formal list?)在c程序设计中特别要注意每个程序都有且只有一个主函数,切忌不可忘了主函数main. 2. error LNK2001: unresolved external symbol _mainfatal error LNK1120: 1 unresolved externals在c程序设计中要注意区分大小写,相同的字符的大小写所代表的意义可能完全不一样。

3.error C2146: syntax error : missing ';' before identifier 'printf'.在c程序设计中要注意每个完整的语句后面都必须要有“;”,否则就会出现错误。

4.error C2065: 'printf' : undeclared identifiererror C2146: syntax error : missing ';' before identifier 'printf't.在c程序设计中#include<stdio.h>是包含头文件函数库,象标准的输入和输出函数’scanf’和’printf’都是包含定义在#include<stdio.h>中的。

所以一般的函数都不应缺少这个头文件。

5在例1-1.c中,任何一行的输出语句中少了符号\n,将会使下一条语句的输出紧跟在该行,而不会出现在例1-1.c那样的每行输出一条语句。

《C语言程序设计》第1章C语言概述练习题答案

《C语言程序设计》第1章C语言概述练习题答案

第一章C语言概述练习题一、选择题1. C语言是一种()。

A)机器语言B)汇编语言C)高级语言D)低级语言2. 下列各项中,不是C语言的特点是()。

A)语言简洁、紧凑,使用方便C)能实现汇编语言的大部分功能B)数据类型丰富,可移植性好D)有较强的网络操作功能3. 下列叙述正确的是()。

A)C语言源程序可以直接在DOS环境中运行B)编译C语言源程序得到的目标程序可以直接在DOS环境中运行C)C语言源程序经过编译、连接得到的可执行程序可以直接在DOS环境中运行D)Turbo C系统不提供编译和连接C程序的功能4. 下列叙述错误的是()。

A) C程序中的每条语句都用一个分号作为结束符B) C程序中的每条命令都用一个分号作为结束符C) C程序中的变量必须先定义,后使用D)C语言以小写字母作为基本书写形式,并且C语言要区分字母的大小写5. 一个C程序的执行是从()。

A)本程序的main函数开始,到main函数结束B)本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C)本程序文件的第一个函数开始,到本程序main函数结束D)本程序的main函数开始,到本程序文件的最后一个函数结束6. 以下叙述不正确的是()。

A)一个C源程序必须包含一个main函数B)一个C源程序可由一个或多个函数组成C) C程序的基本组成单位是函数D)在C程序中,注释说明只能位于一条语句的后面7. C语言规定:在一个源程序中,main函数的位置()。

A)必须在程序的开头B)必须在系统调用的库函数的后面C)可以在程序的任意位置D)必须在程序的最后8. 一个C语言程序是由()。

A)一个主程序和若干个子程序组成B)函数组成C)若干过程组成D)若干子程序组成9. 以下有4组用户标识符,其中合法的一组是()。

A) For B) 4d C) f2_G3 D) WORD-sub DO IF voidCase Size abc define10. 一个算法应该具有“确定性”等5个特性,下面对另外4个特性的描述中错误的是A)有零个或多个输入B)有零个或多个输出C)有穷性D)可行性二、填空题1. 汇编语言属于面向(面向机器的)语言,局级语言属于(面向问题的)语言。

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

《c语言程序设计教程》课后习题答案
(1) 51 (2) 15 (3) 28 (4) 1 (5) 2 2. 计算下列表达式的值,按%x 格式输出。 已知:unsigned int a=0x2b,b=011; (1) 9 (2) 2b (3) 22 (4) a (5) ffffffca 3. 计算下列各表达式的值,并按%d 格式输出,假设各个表达式是相互独立,前后边无影 响。 已知:int a=8,b=5; (1) 该题有问题,将表达式更改为(a---b)+(--b) 其值为:16 (2) 26 (3) 2 (4) -1 (5) 25 4.计算下列各表达式的值,并按%d 的格式分别输出表达式的值和 a,b 的值 已知:int a=8,b=5; (1) 表达式的值为 :0 a=8 b=5 (2) 表达式的值为:1 a=8 b=5 (3) 表达式的值为:13 a=9 b=4 (4) 表达式的值为:7 a=2 b=8
第一章习题答案 1 判断题
1.× 2.× 3.√ 4.√ 5.√ 6.√ 7.× 8.√ 9.× 10.√ 11.× 12.× 13.√ 14.√ 15.√ 2 单选题 1.A 2.D 3.C 4.B 5.A 3 分析下列程序的输出结果 1. 输出结果为:
I love the Beijing! We are students. 2. 输出结果为: a=5 3. 输出结果为: Enter a string: string↙ string 4. 输出结果为: Enter a and d: 13 25.123↙
(int)x*y 和(int)(x*y) 答:前者不可以,后者可以。 4.已知:int a;,表达式 a=3+19-a=8*2 的值为 6,对吗? 答:不对,该表达式非法,将表达式改为 a=3+19-(a=8*2)才对 5.已知:char ch=’M’;,表达式(ch>=’A’&&ch<=’z’)?(ch+32):ch 的值是什么?(note: 该 表 达 式 有 错 , 请 将 (ch>=’A’&&ch<=’z’=?(ch+32):ch 改 为 (ch>=’A’&&ch<=’z’)?(ch+32):ch ) 答:’m’或 109

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

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

《C语言程序设计教程》习题参考答案11.5请参照本章例题,编写一个C程序,输出以下信息:************Very Goodj!************解:main(){printf(" ************ \n");printf("\n");printf(" Very Good! \n");printf("\n");printf(" ************\n");}1.6编写一个程序,输入a b c三个值,输出其中最大者。

解:main(){int a,b,c,max;printf("请输入三个数a,b,c:\n");scanf("%d,%d,%d",&a,&b,&c);max=a;if(max<b)< p="">max=b;if(max<c)< p="">max=c;printf("最大数为:%d",max);}第三章3.3 请将下面各数用八进制数和十六进制数表示:(1)10 (2)32 (3)75 (4)-617(5)-111 (6)2483 (7)-28654 (8)21003解:十八十六(10)=(12)=(a)(32)=(40)=20(75)=(113)=4b(-617)=(176627)=fd97-111=177621=ff912483=4663=963-28654=110022=901221003=51013=520b3.5字符常量与字符串常量有什么区别?解:字符常量是一个字符,用单引号括起来。

字符串常量是由0个或若干个字符而成,用双引号把它们括起来,存储时自动在字符串最后加一个结束符号'\0'. 3.6写出以下程序的运行结果:#includevoid main(){char c1='a',c2='b',c3='c',c4='\101',c5='\116';printf("a%c b%c\tc%c\tabc\n",c1,c2,c3);printf("\t\b%c %c\n",c4,c5);解:程序的运行结果为:aabb cc abcA N3.7将"China"译成密码.密码规律:用原来的字母后面第4个字母代替原来的字母, 例如,字母"A"后面第4个字母是"E",用"E"代替"A".因此,"China"应译为"Glmre". 请编一程序,用赋初值的议程使c1,c2,c3,c4,c5分别变成'G','1','m','r','e',并输出.main(){char c1="C",c2="h",c3="i",c4='n',c5='a';c1+=4;c2+=4;c3+=4;c4+=4;c5+=4;printf("密码是%c%c%c%c%c\n",c1,c2,c3,c4,c5);}3.8例3.6能否改成如下:#includevoid main(){int c1,c2;(原为char c1,c2)c1=97;c2=98;printf("%c%c\n",c1,c2);printf("%d%d\n",c1,c2);}解:可以.因为在可输出的字符范围内,用整型和字符型作用相同.3.9求下面算术表达式的值.(1)x+a%3*(int)(x+y)%2/4=2.5(x=2.5,a=7,y=4.7)(2)(float)(a+b)/2+(int)x%(int)y=3.5(设a=2,b=3,x=3.5,y=2.5)3.10写出下面程序的运行结果:#includevoid main(){int i,j,m,n;i=8;j=10;m=++i;n=j++;printf("%d,%d,%d,%d\n",i,j,m,n);}解:结果: 9,11,9,10第4章4.4.a=3,b=4,c=5,x=1.2,y=2.4,z=-3.6,u=51274,n=128765,c1='a',c2='b'.想得到以下的输出格式和结果,请写出程序要求输出的结果如下:a= 3 b= 4 c= 5x=1.200000,y=2.400000,z=-3.600000x+y= 3.60 y+z=-1.20 z+x=-2.40u= 51274 n= 128765c1='a' or 97(ASCII)c2='B' or 98(ASCII)解:main(){int a,b,c;long int u,n;float x,y,z;char c1,c2;a=3;b=4;c=5;x=1.2;y=2.4;z=-3.6;u=51274;n=128765;c1='a';c2='b';printf("\n");printf("a=%2d b=%2d c=%2d\n",a,b,c);printf("x=%8.6f,y=%8.6f,z=%9.6f\n",x,y,z);printf("x+y=%5.2f y=z=%5.2f z+x=%5.2f\n",x+y,y+z,z+x);printf("u=%6ld n=%9ld\n",u,n);printf("c1='%c' or %d(ASCII)\n",c1,c2);printf("c2='%c' or %d(ASCII)\n",c2,c2);}4.5请写出下面程序的输出结果.结果:575 767.856400,-789.12396267.856400 ,-789.12396267.86,-789.12,67.856400,-789.123962,67.856400,-789.1239626.785640e+001,-7.89e+002A,65,101,411234567,4553207,d68765535,17777,ffff,-1COMPUTER, COM4.6用下面的scanf函数输入数据,使a=3,b=7,x=8.5,y=71.82,c1='A',c2='a', 问在键盘上如何输入?main(){int a,b;float x,y;char c1,c2;scanf("a=%d b=%d,&a,&b);scanf(" x=%f y=%e",&x,&y);scanf(" c1=%c c2=%c",&c1,&c2);}解:可按如下方式在键盘上输入:a=3 b=7x=8.5 y=71.82c1=A c2=a说明:在边疆使用一个或多个scnaf函数时,第一个输入行末尾输入的"回车"被第二个scanf函数吸收,因此在第二\三个scanf函数的双引号后设一个空格以抵消上行入的"回车".如果没有这个空格,按上面输入数据会出错,读者目前对此只留有一初步概念即可,以后再进一步深入理解.4.7用下面的scanf函数输入数据使a=10,b=20,c1='A',c2='a',x=1.5,y=-3.75,z=57.8,请问在键盘上如何输入数据?scanf("%5d%5d%c%c%f%f%*f %f",&a,&b,&c1,&c2,&y,&z);解:main(){int a,b;float x,y,z;char c1,c2;scanf("%5d%5d%c%c%f%f",&a,&b,&c1,&c2,&x,&y,&z);}运行时输入:10 20Aa1.5 -3.75 +1.5,67.8注解:按%5d格式的要求输入a与b时,要先键入三个空格,而后再打入10与20。

(完整版)C程序设计第一章习题

(完整版)C程序设计第一章习题

1.什么是程序?什么是程序设计?程序,就是一组计算机能识别和执行的指令.根据计算机软件设计人员的需要,使计算机执行特定的操作,来满足人们的需要。

2.为什么需要计算机语言?高级语言的特点?人和计算机交流需要一种计算机和人都能识别的语言.高级语言很接近于人们习惯使用的自然语言和数学语言;程序中用到的语句和指令是英文单词表示的,程序中所用的运算符和运算表达式和人恩日常所用的数学式子差不多,很容易理解;程序运行的结果用英文和数字输出,十分方便.高级语言功能性很强,且不依赖于具体及其,用它写出的程序对任何型号的计算机都适用(或只须作很少的修改)。

3.正确理解以下名词及其含义:(1)源程序目标程序可执行程序源程序:是指未经编译的,按照一定的程序设计语言规范书写的,人类可读的文本文件.通常由高级语言编写。

目标程序:又称为“目的程序”,为源程序经编译可直接被计算机运行的机器码集合,在计算机文件上以。

obj 作扩展名—--—由语言处理程序(汇编程序,编译程序,解释程序)将源程序处理(汇编,编译,解释)成与之等价的由机器码构成的,计算机能够直接运行的程序,该程序叫目标程序。

目标代码尽管已经是机器指令,但是还不能运行,因为目标程序还没有解决函数调用问题,需要将各个目标程序与库函数连接,才能形成完整的可执行程序。

可执行程序:在计算机科学上,指一种内容可被电脑解释为程序的电脑文件。

通常可执行文件内,含有以二进制编码的微处理器指令,也因此可执行文件有时称为二进制档.这些二进制微处理器指令的编码,于各种微处理器有所不同,故此可执行文件多数要分开不同的微处理版本。

一个电脑文件是否为可执行文件,主要由操作系统的传统决定。

例如根据特定的命名方法(如扩展名为exe)或文件的元数据信息(例如UNIX系统设置“可运行”权限)。

(2)程序编辑程序编译程序连接程序编辑:指将完成一件工作所需要的步骤,也就是算法,用计算机所能识别的语言,按照一定的程序结构翻译出来,并可被计算机执行的编写代码的全过程。

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

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

高等院校计算机基础教育规划教材《C++程序设计》课后习题参考答案――武汉大学出版社习题1参考答案一、选择题1. A2. D二、填空题1. BASIC、FORTRAN、AL_GOL60和COBOL2. 83. 关键字4. 编辑、编译、链接和运行三、简答题1.答:(1)C语言具有结构化的控制语句。

C语言提供了结构化程序所必需的基本控制语句,实现了对逻辑流的有效控制。

(2)C语言具有丰富的数据结构类型。

C语言除提供整型、实型、字符型等基本数据类型外,还提供了用基本数据类型构造出的各种复杂的数据结构,如数组、结构、联合等。

C语言还提供了与地址密切相关的指针类型。

此外,用户还可以根据需要自定义数据类型。

(3)C语言具有丰富的运算符。

C语言提供了多达34种运算符,丰富的数据类型与丰富的运算符相结合,使C语言的表达力更具灵活性,同时也提高了执行效率。

(4)C语言简洁、紧凑,使用方便、灵活,程序书写自由,有9种控制语句。

(5)C语言既具有高级语言的功能,又具有低级语言的许多功能,通常被称为中级计算机语言。

它既是成功的系统描述语言,又是通用的程序设计语言。

(6)C语言与汇编语言相比,可移植性好。

(7)功能强大。

C语言具有低级语言的一些功能,所以,生成目标代码质量高,程序执行效率高。

现在许多系统软件都用C语言来描述,可以大大提高了编程效率。

2.答:运行一个C语言程序,一般需要经过如下几个步骤:①上机输入并编辑源程序;②编译源程序;③与库函数连接;④生成可执行目标程序;⑤运行目标程序。

3.答:(1)操作系统的设计与实现。

C语言是一种应用非常广泛的结构化高级程序设计语言,既适合编写应用软件,又适合编写系统软件。

(2)工业控制。

由于C语言具有简洁、灵活、代码效率高、能进行位操作等优点,C语言大量应用在单板机、单片机上,以及嵌入式领域等。

(3)图形图像处理。

C语言在内存管理和进程控制方面有丰富的指令,而且它能提供快速运行的代码,因而C语言适合进行图形程序设计。

(word完整版)C语言程序设计课后习题1-8参考答案

(word完整版)C语言程序设计课后习题1-8参考答案

C语言程序设计课后习题1—8参考答案习题1参考答案一、简答题1、冯诺依曼计算机模型有哪几个基本组成部分?各部分的主要功能是什么?答:冯诺依曼计算机模型是由运算器、控制器、存储器、输入设备、输出设备五大功能部件组成的。

运算器又称算术逻辑部件,简称ALU,是计算机用来进行数据运算的部件。

数据运算包括算术运算和逻辑运算。

控制器是计算机的指挥系统,计算机就是在控制器的控制下有条不紊地协调工作的.存储器是计算机中具有记忆能力的部件,用来存放程序和数据.输入设备是用来输入程序和数据的部件。

输出设备正好与输入设备相反,是用来输出结果的部件。

2、简述计算机的工作原理。

答:计算机的工作原理可简单地概括为:各种各样的信息,通过输入设备,进入计算机的存储器,然后送到运算器,运算完毕把结果送到存储器存储,最后通过输出设备显示出来。

整个过程由控制器进行控制。

3、计算机软件系统分为哪几类?答:软件内容丰富,种类繁多,通常根据软件用途将其分为两大类:系统软件和应用软件。

系统软件是指管理、监控、维护计算机正常工作和供用户操作使用计算机的软件。

这类软件一般与具体应用无关,是在系统一级上提供的服务。

系统软件主要包括以下两类:一类是面向计算机本身的软件,如操作系统、诊断程序等。

另一类是面向用户的软件,如各种语言处理程序(像BC、VC等)、实用程序、字处理程序等。

在操作系统的基础上运行。

4、什么叫软件?说明软件与硬件之间的相互关系。

答:软件是指计算机程序及有关程序的技术文档资料。

两者中更为重要的是程序,它是计算机进行数据处理的指令集,也是计算机正常工作最重要的因素。

在不太严格的情况下,认为程序就是软件。

硬件与软件是相互依存的,软件依赖于硬件的物质条件,而硬件则需在软件支配下才能有效地工作.在现代,软件技术变得越来越重要,有了软件,用户面对的将不再是物理计算机,而是一台抽象的逻辑计算机,人们可以不必了解计算机本身,可以采用更加方便、更加有效地手段使用计算机。

C程序设计第1-7章部分习题参考答案

C程序设计第1-7章部分习题参考答案

课后习题解答(第1-7章)第一章1_1.1_1_2判断正误:即使两个整型数据未超出该数据的取值范围,它们的和也可能会超出该数据取值范围。

正确。

1_1_4判断正误:一个C程序可以有多个函数,其中主函数必须在程序的最开头。

错误。

其它函数如果要在主函数中使用的话,必须先在主函数之前定义或者声明。

1_1_6判断正误:若有定义“float x=1.3;”,则表达式(int)x的值为1,因此可以说x中存放的值就是1。

错误。

(int)x表达式的值与x的值是不一样的,前者是对x取整后的数值,而取整运算对x 自身的值不会产生影响。

1_1_8判断正误:若有命令行“#define N 1000”,则N++是不合法的表达式。

正确。

N为符号常量,不能对符号常量进行修改。

1_1_10 C程序是由函数构成的,一个C程序必须有一个主函数。

1_1_12以下变量中不合法的是②、④、⑥,合法的是①、③、⑤、⑦、⑧。

①name ②double ③Int ④if ⑤for_1 ⑥2k ⑦a12345678 ⑧_a1_1_14下面程序段的输出结果是1,1.000000int a; double b;a=b=123/100%2;printf("%d,%f", a, b);1_1_16 a*a*a*b*b/(c-d)1_1_20假设圆柱体的底面半径为r(=2.5),高为h(=3.5),请按下面给定的步骤编写求体积(体积=底面积X高)的程序。

①定义变量r,h,v(存放体积值),注意变量的数据类型。

②给变量r,h赋值。

③计算体积,并将结果存放在v中。

④输出r,h,v的值。

程序如下:#include <stdio.h>#define PI 3.1415926main(){float r, h, v;r=2.5;h=3.5;v=PI*r*r*h;printf("r=%f, h=%f, v=%f\n", r, h, v);}1_1_22编写输出以下图形的程序。

《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语言一至二章课后题答案
printf("S=%f\n",S);
}
6.计算下列表达式的值。
(1)(1+3)/(2+4)+8%3(2)2+7/2+(9/2*7)
(3)(int)(11.7+4)/4%4(4)2.0*(9/2*7)
解答:(1)2(2)33(3)3(4)56.000000
7.阅读程序,写出输出结果.
(1) #include <stdio.h>
(4)反复工作直到编译能正确完成,编译中发现的错误都已排除,所有警告都已处理,这是就可进行程序连接,如果发现错误,就返回第(2)步,修改程序后重新编译。
(5)正常连接产生可执行程序后,可开始程序的调试执行。此时需要一些实际数据考查程序的执行效果。如果执行中出现问题,或发现结果不正确,那么就要设法确定错误的原因,回到前面的步骤:修改程序,重新编译,重新连接等等。重复上述过程直到程序正确为止。
2.将下面的数学表达式写成C语言的表达式
(1) (2) (3) (4)其中G=6.637*103 (5)
解答:(1)(小数点后保留两位有效数字)
(2)
(3)
(4)
(5)(小数点后保留两位有效数字)
3.设a=6,b=4写出下列运算符表达式的结果
(1)b+=3 (2)a++ (3)10==a+b (4)b=a+6
}
说明:当几个类型不一致的数据在进行运算时,系统将自动进行类型转换,即把赋值语号右边的类型换成左边的类型,即浮点型富裕整型,舍去小数部分。
9.试编写一个程序实现匀减速直线运动的位移,从键盘上输入物体运动的初速的,运动的加速度以及时间,最终将位移显示到屏幕上。

(完整版)C教材习题答案(1-8章)

(完整版)C教材习题答案(1-8章)
#include <stdio.h>
main()
{
int score;
char ch;
printf("请输入一个百分制分数:");
scanf("%d",&score);
if(score>100 || score<0){
printf("非法输入!\n");
return 0;
}
switch(score/10) {
#include<math.h>
main(){
float s=0;
int i,j,n,t;
printf("请输入n的值:");
scanf("%d",&n);
for(i=1;i<=n;i++){
t=1;
for(j=1;j<=i;j++)
t*=j;
s+=1.0/t;
}
printf("%.2f\n",s);
}
2.输出100以内所有能被13和17整除的数。
#include<stdio.h>
main(){
int i;
for(i=1;i<=100;i++)
if(i%13==0 || i%17==0)
printf("%4d",i);
}
3整元换零钱问题。把5元兑换成1角,2角,5角的硬币,一共有多少种换法,编写求解此问题。
printf("5角:%d个\t2角:%d个\t1角:%d个\n",i,j,k);
n++;

C语言程序设计》课后习题详细答案

C语言程序设计》课后习题详细答案

《全国计算机等级考试二级教程——C语言程序设计》习题分析与详细解答第一章程序设计基本概念习题分析与解答1.1 【参考答案】EXE1.2 【参考答案】[1].C [2].OBJ [3].EXE1.3 【参考答案】[1]顺序结构[2]选择结构[3]循环结构第二章C程序设计的初步知识习题分析与解答一、选择题2.1 【参考答案】B)2.2 【参考答案】D)2.3 【参考答案】B)2.4 【参考答案】A)2.5 【参考答案】C)2.6 【参考答案】A)2.7 【参考答案】B)2.8 【参考答案】B)2.9 【参考答案】D)2.10 【参考答案】C)2.11 【参考答案】B)2.12 【参考答案】B)2.13 【参考答案】A)二、填空题2.14 【参考答案】[1]11 [2]122.15 【参考答案】[1]4.2 [2]4.22.16 【参考答案】[1]{ [2]} [3]定义[4]执行2.17 【参考答案】[1]关键字[2]用户标识符2.18 【参考答案】[1]int [2]float [3]double2.19 【参考答案】float a1=1.0, a2=1.0;或float a1=1, a2=1;(系统将自动把1转换为1.0)2.20 【参考答案】存储单元2.21 【参考答案】 3.52.22 【参考答案】[1]a*b/c [2]a/c*b [3]b/c*a2.23 【参考答案】把10赋给变量s2.24 【参考答案】[1]位[2]1位二进制数据(0或1)2.25 【参考答案】[1]8 [2]127 [3]01111111 [4]-128 [ 5 ] 10000000 2.26 【参考答案】[1]32767 [2]-32768 [3]10000000000000002.27 【参考答案】[1]十[2]八[3]十六三、上机改错题2.28 【分析与解答】第1行的错误:(1) include是一个程序行,因此在此行的最后不应当有分号(;)。

C语言程序设计教程习题答案(第一章)

C语言程序设计教程习题答案(第一章)

习题参考答案第一章一选择题1 答:选B。

分析:在C语言中,程序中的注释可以出现在程序中任何地方,为了方便程序理解,一般不建议写在变量名或关键字的中间,但这样写程序是允许的,故选项A不正确。

在C语言的算术运算符中,取余运算符“%”的两个运算分量必须是整数,但对于其他运算符,如“+”、“-”来说,两侧的运算符类型也可以不一样,例如左侧为一个字符类型,右侧为一个整数类型,系统在执行程序时会自动将字符类型转换成ASCII值进行运算,故选项C不正确。

C 语言的数值表示时各个数位必须紧靠在一起,否则编译系统只会识别紧靠运算符的一部分数值,另一部分数值会发生语法错误,故选项D也不正确。

2 答:选D。

分析:C语言中的标识符只能由字母、数字和下划线构成,并且第一个字符必须是字母或者下划线,同时不能与C语言中的关键字相同。

3 答:选C。

分析:在C语言的算术运算符中,取余运算符”%”的左右两侧的两个运算分量必须是整数,所以选项C的赋值语句是错误。

4 答:选B。

5 答:选B。

分析:选项A和B互斥,因此必有一个是错误的,在C语言运行工程中,编译器的作用是将程序转换为目标代码,目标代码都是二进制的。

6 答:选A。

分析:选项A中整数常量不能有千位分隔符,错误。

选项B表示的是一个转义字符,三位八进制数代表一个ASCII字符。

7 答:选A。

分析:实数常量的指数形式要求字母e(或E)前后必须有数字,且后面的指数必须为整数。

所以选项B、C、D均是不合法的指数形式。

8 答:选A。

分析:此题考查C语言中赋值表达式的概念。

用一个赋值运算符“=”将一个变量和一个表达式连接起来的式子称为赋值表达式。

选项A中缺少表达式。

9 答:选B。

分析:根据优先级先计算x/y,即12/8,由于是整型,故x/y的值为1,接着计算0.9+1=1.9,由于z定义为整型,故最终结果为1。

二上机改错题1 答:第一行的末尾有多余的分号“;”第一行的文件名stdio.h缺双引号“”或< >括住第二行主函数main的末尾有多余的“;”第二行的注释有错,C语言规定“/”与“*”之间不能有空格main函数体缺函数体括号“{}”第三行的注释有错,C语言规定:注释内容由一对“/*”和“*/”括住,并且“/*”总是与离它最近的“*/”配对,由此可以看出,改行注释中有一个多余的“,”,末尾的“*/”由于没有“/*”与之配对,因此也是多余的。

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