何钦铭-C语言程序设计(第3版)部分课后习题参考答案x

何钦铭-C语言程序设计(第3版)部分课后习题参考答案x


2024年1月10日发(作者:)

何钦铭《C语言程序设计》(第3版)

课后习题参考答案

习题1

1.对 C 语言来说,下列标识符中哪些是合法的,哪些是不合法的?

total, _debug, Large&Tall, Counter1, begin_

解答:合法标识符:total, _debug, Counter1;不合法标识符:Large&Tall, begin_。

2.改写本章 1.4 节中的流程图 1.2,求 1~100 中能被 6 整除的所有整数的和。

解答:

3.改写本章 1.4 节中的程序,求 1~100 中能被 6 整除的所有整数的和,并在编程环境中验证该程序的运行结果。

解答:

#include

int main(void)

{

int i, sum = 0;

for(i = 1; i <= 100; i++)

if (i % 6 == 0)

sum = sum + i;

printf("%d", sum);

return 0;

}

4.对于给定的整数 n(n>1),请设计一个流程图判别 n 是否为一个素数(只能被 1 和自己整除的整数),并分析该流程图中哪些是顺序结构、哪些是分支结构与循环结构。

解答: 在流程图中,分支结构和循环结构如图 1.2 所示,自上而下的 2 个实线框和 2 个虚线组成了顺序结构。

习题2

1. 求整数均值:输入 4 个整数,计算并输出这些整数的和与平均值,其中平均值精确到小数点后 1 位。试编写相应程序。

解答:

#include

int main (void)

{

int num1, num2, num3, num4;

double average, sum;

scanf ("%d%d%d%d", & num1, & num2, & num3, & num4);

sum = num1+ num2+ num3 + num4;

average = sum / 4;

printf ("Sum = %.0f; Average = %.1fn", sum, average);

return 0;

}

2. 阶梯电价:为了提倡居民节约用电,某省电力公司执行“阶梯电价”,安装一户一表的居民用户电价分为两个“阶梯”:月用电量 50 千瓦时(含 50 千瓦时)以内的,电价为 0.53

元/千瓦时;超过 50 千瓦时的,超出部分的用电量,电价上调 0.05 元/千瓦时。输入用户的月用电量(千瓦时),计算并输出该用户应支付的电费(元)。试编写相应程序。

解答:

#include

int main (void)

{

double cost, e;

scanf ("%lf", &e);

if(e < 0){

printf ("Invalid Value!n");

}

else{

if (e <= 50){

cost = 0.53 * e;

}

else{

cost = 0.53 * 50 + (e - 50) * 0.58;

}

printf ("cost = %.2fn", cost);

}

return 0;

}

解答:

#include

int main (void)

{

int i, m, n;

double sum;

scanf ("%d%d", &m, &n);

if (m > 0 && m <= n){

sum = 0;

for (i = m; i <= n; i++){

sum = sum + i * i + 1.0 / i;

}

printf ("sum = %.6fn", sum);

}

return 0;

}

解答:

#include

int main (void)

{

int flag, i, n;

double item, sum;

scanf ("%d", &n);

sum = 0;

flag = 1;

for (i = 1; i <= n; i++){

item = flag * 1.0 * i / (2 * i - 1);

sum = sum + item;

flag = -flag;

}

printf ("%.3fn", sum);

return 0;

}

解答:

#include

#include

int main (void)

{

int i,n;

double sum;

scanf ("%d",&n);

sum = 0;

for (i = 1; i <= n; i++){

sum = sum + sqrt(i);

}

printf ("sum = %.2fn", sum);

return 0;

}

解答:

#include

double fact (int n);

int main (void)

{

int i, n;

double sum;

scanf ("%d", &n);

if(n <= 12){

sum = 0;

for (i = 1; i <= n; i++){

sum = sum + fact (i);

}

printf ("%.0fn", sum);

}

return 0;

}

double fact (int n)

{

int i;

double product;

product=1;

for (i = 1; i <= n; i++)

product = product * i;

return product;

}

习题3

习题4

习题5

习题6

习题7

一、选择题

1

D

2

D

3

D

4

C

5

C

6

C

7

C

8

B

二、填空题

1、0

2、i=1 x[i-1]

3、-12

4、(1)2 (2)3

5、j>0 或者j>=1 i

6、a[j][i]!=a[i][j] found=1

习题8

习题9

习题10

习题11

习题12


发布者:admin,转转请注明出处:http://www.yc00.com/web/1704842791a1377610.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信