C语言详解第五版答案

合集下载

c语言程序设计第五版习题答案

c语言程序设计第五版习题答案

习题解析与答案第1章C语言概述一.简答题1.概述C语言的主要特点。

【解答】(1)语言简洁、紧凑,使用方便、灵活。

(2)数据类型丰富,表达能力强。

(3)运算符多样。

C语言中的运算符包含的范围非常广泛。

(4)具有结构化的控制语句。

如if…else语句、while语句、dowhile语句、switch语句、for语句。

(5)允许直接访问物理地址。

C语言中含有的位和指针运算,能够直接对内存地址进行访问操作。

(6)所生成的目标代码质量高,可移植性好。

2.构成C语言程序的基本单位是什么?它由哪几部分组成?【解答】函数是构成C语言程序的基本单位。

一个完整的C 程序一般由文件包含、宏定义、函数说明、变量和一个或若干个函数组成。

3.C语言程序的运行一般要经过哪几个步骤?【解答】(1)编辑;(2)编译;(3)连接,生成EXE文件;(4)执行。

二.运行程序写结果1.输入下面程序并运行。

main(){inta1,a2,x;a1=100;a2=50;x=a1-a2;printf(″x=%d\n″,x);}【解答】运行结果为:x=502.输入下面程序并运行。

main(){inta1,a2,x;a1=10;a2=20;x=a1*a2;printf(″a1=%d,a2=%d\n″,a1,a2);printf(″x=%d\n″,x);}【解答】运行结果为:a1=10,a2=20x=200三.编程题1.参照本章例题,编写一个C程序,用于显示如下信息:*************************IloveCprograms!*************************【分析与提示】①要有文件包含语句#include<stdio.h>。

C语言中没有数据的输入、输出等功能,数据的输入、输出都是通过调用系统提供的库函数scanf和printf等来实现的。

这些函数的说明都包括在stdio.h文件中。

②main是主函数的名称。

c语言程序设计第五版习题答案解析

c语言程序设计第五版习题答案解析

习题解析与答案第1章C语言概述一.简答题1.概述C语言的主要特点。

【解答】(1)语言简洁、紧凑,使用方便、灵活。

(2)数据类型丰富,表达能力强。

(3)运算符多样。

C语言中的运算符包含的范围非常广泛。

(4)具有结构化的控制语句。

如if…else语句、while语句、do while语句、switch 语句、for语句。

(5)允许直接访问物理地址。

C语言中含有的位和指针运算,能够直接对内存地址进行访问操作。

(6)所生成的目标代码质量高,可移植性好。

2.构成C语言程序的基本单位是什么?它由哪几部分组成?【解答】函数是构成C语言程序的基本单位。

一个完整的C程序一般由文件包含、宏定义、函数说明、变量和一个或若干个函数组成。

3.C语言程序的运行一般要经过哪几个步骤?【解答】(1)编辑;(2)编译;(3)连接,生成EXE文件;(4)执行。

二.运行程序写结果1.输入下面程序并运行。

main(){int a1,a2,x;a1=100;a2=50;x=a1-a2;printf(″x=%d\n″,x);}【解答】运行结果为:x=502.输入下面程序并运行。

main(){int a1,a2,x;a1=10;a2=20;x=a1*a2;printf(″a1=%d,a2=%d\n″,a1,a2);printf(″x=%d\n″,x);}【解答】运行结果为:a1=10,a2=20x=2003.输入下面程序并运行。

#include <stdio.h>main(){printf("******\n");printf(" *****\n");printf(" ****\n");printf(" ***\n");printf(" **\n");printf(" *\n");}【解答】运行结果为:*********************思考:可以修改程序,使之输出平行四边形,等腰三角形等图形。

c语言程序设计第五版习题答案解析

c语言程序设计第五版习题答案解析

习题解析与答案第1章C语言概述一.简答题1.概述C语言的主要特点。

【解答】(1)语言简洁、紧凑,使用方便、灵活。

(2)数据类型丰富,表达能力强。

(3)运算符多样。

C语言中的运算符包含的范围非常广泛。

(4)具有结构化的控制语句。

如if…else语句、while语句、do while语句、switch 语句、for语句。

(5)允许直接访问物理地址。

C语言中含有的位和指针运算,能够直接对内存地址进行访问操作。

(6)所生成的目标代码质量高,可移植性好。

2.构成C语言程序的基本单位是什么?它由哪几部分组成?【解答】函数是构成C语言程序的基本单位。

一个完整的C程序一般由文件包含、宏定义、函数说明、变量和一个或若干个函数组成。

3.C语言程序的运行一般要经过哪几个步骤?【解答】(1)编辑;(2)编译;(3)连接,生成EXE文件;(4)执行。

二.运行程序写结果1.输入下面程序并运行。

main(){int a1,a2,x;a1=100;a2=50;x=a1-a2;printf(″x=%d\n″,x);}【解答】运行结果为:x=502.输入下面程序并运行。

main(){int a1,a2,x;a1=10;a2=20;x=a1*a2;printf(″a1=%d,a2=%d\n″,a1,a2);printf(″x=%d\n″,x);}【解答】运行结果为:a1=10,a2=20x=2003.输入下面程序并运行。

#include <stdio.h>main(){printf("******\n");printf(" *****\n");printf(" ****\n");printf(" ***\n");printf(" **\n");printf(" *\n");}【解答】运行结果为:*********************思考:可以修改程序,使之输出平行四边形,等腰三角形等图形。

c语言程序设计第五版习题答案

c语言程序设计第五版习题答案

c语言程序设计第五版习题答案1. 基础语法练习1.1 写一个程序,要求用户输入两个整数,然后计算并输出这两个整数的和。

```c#include <stdio.h>int main() {int num1, num2;printf("请输入两个整数:");scanf("%d %d", &num1, &num2);int sum = num1 + num2;printf("两个整数的和为:%d\n", sum);return 0;}```1.2 写一个程序,要求用户输入一个字符,然后判断该字符是否为数字字符('0'-'9')。

```c#include <stdio.h>int main() {char ch;printf("请输入一个字符:");scanf(" %c", &ch); // 注意空格if (ch >= '0' && ch <= '9') {printf("该字符是一个数字字符。

\n");} else {printf("该字符不是一个数字字符。

\n");}return 0;}```2. 控制流程练习2.1 写一个程序,找出1~100之间所有能被7整除的数,并输出它们的和。

```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 7 == 0) {printf("%d ", i);sum += i;}}printf("\n这些数的和为:%d\n", sum); return 0;}```2.2 写一个程序,打印如下图案:```***************``````c#include <stdio.h>int main() {for (int i = 1; i <= 5; i++) {for (int j = 1; j <= i; j++) {printf("*");}printf("\n");}return 0;}```3. 数组和字符串练习3.1 写一个程序,输出一个5x5的矩阵,矩阵元素由用户输入。

c语言程序设计第五版习题答案

c语言程序设计第五版习题答案

习题解析与答案第1章C语言概述一.简答题1.概述C语言的主要特点。

【解答】(1)语言简洁、紧凑,使用方便、灵活。

(2)数据类型丰富,表达能力强。

(3)运算符多样。

C语言中的运算符包含的范围非常广泛。

(4)具有结构化的控制语句。

如if…else语句、while语句、do while语句、switch 语句、for语句。

(5)允许直接访问物理地址。

C语言中含有的位和指针运算,能够直接对内存地址进行访问操作。

(6)所生成的目标代码质量高,可移植性好。

2.构成C语言程序的基本单位是什么?它由哪几部分组成?【解答】函数是构成C语言程序的基本单位。

一个完整的C程序一般由文件包含、宏定义、函数说明、变量和一个或若干个函数组成。

3.C语言程序的运行一般要经过哪几个步骤?【解答】(1)编辑;(2)编译;(3)连接,生成EXE文件;(4)执行。

二.运行程序写结果1.输入下面程序并运行。

main(){int a1,a2,x;a1=100;a2=50;x=a1-a2;printf(″x=%d\n″,x);}【解答】运行结果为:x=502.输入下面程序并运行。

main(){int a1,a2,x;a1=10;a2=20;x=a1*a2;printf(″a1=%d,a2=%d\n″,a1,a2);printf(″x=%d\n″,x);}【解答】运行结果为:a1=10,a2=20x=200三.编程题1.参照本章例题,编写一个C程序,用于显示如下信息:*************************I love C programs!*************************【分析与提示】①要有文件包含语句#include <stdio.h>。

C语言中没有数据的输入、输出等功能,数据的输入、输出都是通过调用系统提供的库函数scanf和printf等来实现的。

这些函数的说明都包括在stdio.h文件中。

②main是主函数的名称。

c语言程序设计第五版习题答案

c语言程序设计第五版习题答案
{
int a=6;b=8;
int c;
c=a*b;
printf(‘%d’,c);
}
【答案】错误的地方有3处:(1)第2行关键字应该小写;(2)定义b时前面应该用逗号;(3)打印语句的格式应该用双引号括起来。
正确的程序如下:
#include <stdio.h>
void main()
{
int a=6,b=8;
3.C语言中的常量包括哪几类?各自是如何构成的?
【解答】C语言中的常量是一些其值预先定的量,并且在程序执行过程中其值不再发生变化。常量的分类遵循基本数据类型分类原则,C语言编译系统自动将其存放在于类型相应的内存单元中。其类别包含整形常量、浮点常量、字符常量、字符串常量和枚举常量。整形常量又分为十进制整形常量、八进制整形常量、十六进制整形常量。浮点常量分成十进制形式和指数形式。C语言中的,字符常量是用单括号括起来的一个字符或是字符序列,而字符串常量是用一对双括号括起来的零个或者多个字符组成的序列。
②main是主函数的名称。用{}括起来的内容是函数体,函数体由若干条语句组成,这是计算机要执行的部分,每条语句以分号“;”结束。
③注意显示的信息有三行,所以要用到换行符“\n”。
参考代码:
#include <stdio.h>
main()
{
printf("************************\n");
main()
{
int a=20,b=10,c,*p1,*p2;
p1=&a;
p2=&b;
c=(-*p1)/(*p2)+6;
printf("a=%d,b=%d\n",a,b);

c语言详解(第五版)第二章程序设计项目答案

C语言详解(第五版)程序设计项目答案第二章1.编写一个程序,以每英里0.35的费率计算一个售货员的里程偿还金。

程序中要求与用户进行如下方式的交互。

#include<stdio.h>#include<stdlib.h>int main(void){float mile_1,mile_2,miles,consume,payment;printf("MILEAGE REIMBURSEMENT CALCULATOR\n");printf("Enter begainning odometer reading>\n");scanf("%f",&mile_1);printf("Enter endding odometer reading>\n");scanf("%f",&mile_2);printf("Enter consume per mile>\n");scanf("%f",&consume);miles=mile_2-mile_1;payment=miles*consume;printf("You traveled %f miles.At %f per mile,your reimbursementis %f",miles,consume,payment);system("pause");return(0);}2.编写一个程序,用于辅助设计水力发电大坝。

提示用户输入大坝高度,以及水流量。

如果水由重力所做的功有90%转化为电能,测算会有多少M瓦的功率。

#include<stdio.h>#include<stdlib.h>int main(void){double density,weight,gravitational_acceleration,efficiency,height,water_flow_rate,work,electricity_power;printf("Please type in the density of water>");scanf("%lf",&density);printf("Please type in the gravitational_acceleration>");scanf("%lf",&gravitational_acceleration);printf("Please type in the height of the water>");scanf("%lf",&height);printf("Please type in the efficiency of the transformation \nfrom water to electricity>");scanf("%lf",&efficiency);printf("Please type in the water_flow_rate>");scanf("%lf",&water_flow_rate);weight=density*water_flow_rate;work=weight*height*gravitational_acceleration;electricity_power=work*efficiency/1000000;printf("The electric energy production is %fW",electricity_power);system("pause");return 0;}3.编写一个程序,用于预测冰箱内的温度,断电后经过的时间是给定的。

c程序语言第五版习题答案

c程序语言第五版习题答案C程序语言第五版习题答案在学习编程语言的过程中,练习和理解习题是非常重要的一部分。

对于C程序语言第五版的学习者来说,习题的解答不仅可以帮助巩固所学的知识,还能够提升编程能力。

在本文中,我将为大家提供C程序语言第五版习题的一些答案和解析,希望能够对学习者有所帮助。

1. 习题1-1题目:编写一个程序,在屏幕上输出"Hello, World!"。

解答:```c#include <stdio.h>int main(){printf("Hello, World!\n");return 0;}```解析:这是一个非常简单的程序,使用了C语言中的标准输入输出库函数`printf`来输出字符串"Hello, World!"。

`\n`表示换行符。

2. 习题2-1题目:编写一个程序,计算并输出华氏温度转换为摄氏温度的结果。

解答:```c#include <stdio.h>int main(){float fahrenheit, celsius;printf("请输入华氏温度:");scanf("%f", &fahrenheit);celsius = (fahrenheit - 32) * 5 / 9;printf("摄氏温度为:%.2f\n", celsius);return 0;}```解析:这个程序通过用户输入的华氏温度,使用公式`(华氏温度 - 32) * 5 / 9`来计算摄氏温度,并输出结果。

3. 习题3-2题目:编写一个程序,输入一个浮点数,输出该浮点数的立方值。

解答:```c#include <stdio.h>int main(){float num, cube;printf("请输入一个浮点数:");scanf("%f", &num);cube = num * num * num;printf("立方值为:%.2f\n", cube);return 0;}```解析:这个程序通过用户输入的浮点数,使用乘法运算符`*`计算该浮点数的立方值,并输出结果。

c语言程序设计第五版习题答案

习题解析与答案第1 章C语言概述一.简答题1.概述 C 语言的主要特点。

【解答】(1)语言简洁、紧凑,使用方便、灵活。

(2)数据类型丰富,表达能力强。

(3)运算符多样。

C语言中的运算符包含的范围非常广泛。

(4)具有结构化的控制语句。

如if , else 语句、while 语句、do while 语句、switch 语句、for 语句。

(5)允许直接访问物理地址。

C语言中含有的位和指针运算,能够直接对内存地址进行访问操作。

(6)所生成的目标代码质量高,可移植性好。

2.构成C语言程序的基本单位是什么?它由哪几部分组成?【解答】函数是构成C语言程序的基本单位。

一个完整的C程序一般由文件包含、宏定义、函数说明、变量和一个或若干个函数组成。

3.C语言程序的运行一般要经过哪几个步骤?【解答】(1)编辑;(2)编译;(3)连接,生成EXE文件;(4)执行。

二.运行程序写结果1.输入下面程序并运行。

main(){int a1,a2,x;a1=100;a2=50;x=a1-a2;printf (″x=%dn″,x);}【解答】运行结果为:x=502.输入下面程序并运行。

main(){int a1,a2,x;a1=10;a2=20;x=a1*a2;printf (″a1=%,d n″,a1,a2);printf (″x=%dn″,x);}【解答】运行结果为:a1=10,a2=20x=200三.编程题1.参照本章例题,编写一个C程序,用于显示如下信息:*************************I love C programs!*************************【分析与提示】①要有文件包含语句#include <stdio.h> 。

C 语言中没有数据的输入、输出等功能,数据的输入、输出都是通过调用系统提供的库函数scanf 和printf 等来实现的。

这些函数的说明都包括在stdio.h 文件中。

c语言详解(第五版)第三章程序设计项目答案

c语言详解(第五版)第三章程序设计项目答案1.假设买一辆车首付为500dollar。

请计算月供。

#include<stdio.h>#include<math.h>#include<stdlib.h>int main(void){double capital_sum,monthly_interest_rate,initial_payment,temp,payment,terms; printf("Please enter the price of the car>>");scanf("%lf",&capital_sum);printf("Please enter the monthly interest rate>>");scanf("%lf",&monthly_interest_rate);printf("Please enter the terms duration of loan>>");scanf("%lf",&terms);printf("Please enter the initial_payment>>");scanf("%lf",&initial_payment);temp=1+monthly_interest_rate;payment=(capital_sum-500)*monthly_interest_rate/(1-pow(temp,-terms));printf("The monthly contribution is %.2f dollars.",payment);printf("The capital sum is %.2f dollars.",capital_sum);system("pause");return 0;}2.编写两个函数,一个显示三角形,另一个显示矩形。

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

自测练习奇数题答案第1章1.1节1.软件1.2节1.存储单元0:75.625存储单元2:0.005存储单元999:75.623.位,字节,存储单元,主存储器,辅助存储器,LAN,WAN1.3节1.a、b、c的值相加,把和存储到x;y除以z,将结果存储到x;c减b,然后加a,将结果存储到d;z加1,并将结果存储到z;celsius加273.15,并将结果存储到kelvin。

3.源程序,编译器,编辑器(字处理器)1.4节1.问题需求,分析,设计,实现,测试和验证,维护1.5节1.算法细化(1) 获得以公里表示的距离。

(2) 把距离转化成英里。

2.1 用英里表示的距离是用公里表示的距离的0.621倍。

(3) 显示用英里表示的距离。

第2章2.1节1.a.void, double, returnb.printfc.MAX_ENTRIES, Gd.time, xyz123, this_is_a_long_onee.Sue's, part#2, "char", #include3.预处理器,#define和#include2.2节1.a. 0.0103 1234500.0 123450.0b. 1.3e+3 1.2345e+2 4.26e-33.double, int, char566自测练习奇数题答案2.3节1.Enter two integers> 5 7m = 10n = 213.My name is Jane Doe.I live in Ann Arbor, MIand I have 11 years of programming experience.2.4节1./* This is a comment? *//* This one seems like a comment doesn’t it */2.5节1.a. 22/7为37/22为022 % 7为1 7 % 22为7b. 16 / 15 为1 15 / 16为0 16 % 15为1 15 % 16为15c. 23 / 3 为7 3 / 23为0 23 % 3为2 3 % 23为3d. 16 / -3 为?? -3 / 16为?? 16 % -3为?? -3 % 16为??(??意为结果是变化的)3.a. 3g. 未定义m. -3.14159b. ?? h. 未定义n. 1.0c. 1 i. ?? o. 1d. -3.14159j. 3 p. 未定义e. ?? k. -3.0q. 3f. 0.0l. 9r. 0.75(??意为结果是变化的)5.a.white为1.6666… c.orange为0 e.lime为2b.green为0.6666…d.blue为-3.0 f.purple为0.02.6节1.printf("Salary is %10.2f\n",salary);3.x■is■■12.34■■i■is■100i■is■100x■is■12.32.7节1.在调用scanf获得数据之前先调用printf显示提示。

当调用scanf后有数据回应时调用printf。

提示用于交互式程序而不用于批处理程序。

批处理程序应该回显输入,交互程序也可以回显输入。

第3章3.1节1.问题输入double hours /* number of hours worked */double rate /* hourly rate of pay */问题输出double gross /* gross salary */算法(1)输入工作时间hours和每小时所付的工资率rate。

(2)计算总工资gross。

2.1把hours * rate的值赋给gross。

自测练习奇数题答案567(3)显示总工资gross。

3.问题输入double reg_hours /* number of regular hours worked */double ot_hours /* number of overtime hours worked */double rate /* hourly rate of pay */问题输出double gross /* gross salary */算法(1)输入常规工作时数(reg_hours)、加班时数(ot_hours)和每小时所付工资比率rate。

(2)计算总工资gross。

2.1 将reg_hours * rate的值赋给gross。

2.2 前一步gross的值再加上ot_hours * 1.5 * rate。

(3)显示总工资gross。

3.2节1.a. sqrt(u + v) * pow(w,2)b. log(pow(x,y))c. sqrt(pow(x – y, 3))d. fabs(x * y – w / z)3.3节1.设计阶段3.4节1.HI MOM被用较大的印刷体字母垂直地输出。

3.5节1.a. 3141.590000b. 31.415900c. ************ ** 31.42 ** ************d. 3.141590e. 3.1415903.函数参数被用来在一个程序的各个模块之间、主程序与其模块之间传递信息。

参数使函数更容易被其他函数或程序复用。

带参数的函数是建造更大程序的基石。

第4章4.2节1.1(TRUE)0(FALSE)1(TRUE)1(TRUE)4.3节3.x = 3.0 y = 4.0 z = 2.0 flag = 0 ! ( flag || ( y + z >= x – z ))0 4.0 2.0 3.0 2.06.0 1.0115.ans为2。

568自测练习奇数题答案1.a.not lessb.greater than4.4节1. if (x > y ){x = x + 10.0;printf("x Bigger\n");} else {printf("x Smaller\n");printf("y is %.2f\n",y);}3. if (engine_type == 'J') {printf("Jet engine");speed_category = 1;} else {printf("Propellers");speed_category = 2;}4.5节1.额外的程序常量:CAP_GALLONS 100 /* maximum number of gallons (in thousands) for basic fee */额外的程序变量:int excess /* number of gallons over CAP_GALLONS */comp_use_charge的改写算法:(1)used 为 current – previous(2)if used > CAP_GALLONSexcess 为used – GAP_GALLONSuse_charge 为CAP_GALLONS * PRE_1000_CHG +excess * PER_1000_CHG * 2elseuse_charge 为used * PER_1000_CHG4.7节1.语句部分工资税结果if (salary < 0.0 ) 23500.00 ? 23500.00 < 0.00 为假else if (salary < 15000.00 ) 23500.00 < 15000.00 为假else if (salary < 30000.00 ) 23500.00 < 30000.00 为真tax = (salary – 15000.00) 求解为8500.00* 0.18 求解为1530.00+ 2250.00 3780.00 求解为3780.003. if ( pH > 7 )if (pH < 12 )printf("Alkaline");elseprintf("Very alkaline");else if (pH == 7 )printf("Neutral");else if (pH > 2)printf("Acidic");elseprintf("Very acidic");4.8节1.red自测练习奇数题答案569blueyellow第5章5.1节1.a. 计数循环(1) 初始化sum为0。

(2) 设置lcv为0。

(3)while lcv<35(4) 获得下一个考试成绩。

(5) 把考试成绩与sum相加。

(6) 把lcv的值加1。

3.控制文件结束的循环(1) 初始化count为0。

(2) 获得第一个温度并存储输入状态。

(3) while输入状态并不表示已到达文件末尾(4) if温度>100, count加1;(5) 获得下一个温度并存储输入状态。

5.2节1.0 101 92 83 74 65 55.3节1.a. Enter an integer> 5525125625b. Enter an integer> 66362161296c. Enter an integer> 77493432401一般地,该循环显示n,n2,n3和n4。

3.count = 0;sum = 0;while (count < 5) {printf("Next number> ");scanf("%d", &next_num);sum += next_num;count += 1;}printf("%d numbers were added; ", count);printf("their sum is %d.\n",sum);570自测练习奇数题答案5.4节1.当n = 8时:语句add sum 作用sum = 0; 0 初始化sum为0odd = 1; 1 初始化odd为1odd < n; 1<8为真sum += odd; 1 sum = 0 + 1odd +=2 3 odd = 1 + 2odd < n; 3<8 为真sum += odd; 4 sum = 1 + 3odd +=2 5 odd = 3 + 2odd < n; 5<8 为真sum +=odd; 9 sum = 4 + 5odd +=2 7 odd = 5 + 2odd < n; 7<8为真sum += odd; 16 sum = 9 + 7odd += 2 9 odd = 7 + 2odd < n; 9<8 为假退出循环printf("Sum of…Output: Sum of positive odd numbers less than8 is 16.3.两个问题的答案都为0。

相关文档
最新文档