第一范文网 - 专业文章范例文档资料分享平台

C语言程序设计教程(第三版)课后习题参考答案 张敏霞版

来源:用户分享 时间:2025/6/2 23:06:49 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

附录F 课后题参考答案

6.答:

程序分析:利用for循环控制在100~999之间,对每个数分解出个位、十位、百位。

#include main() { int i,j,k,n; printf(\ for(n=100;n<1000;n++) { i=n/100;/*分解出百位*/ j=n/10;/*分解出十位*/ k=n;/*分解出个位*/ if(n==i*i*i+j*j*j+k*k*k) { printf(\ } } printf(\}

277

7.答:

#include main() { int x; for(x=1000;x>=3;x--) if(x%3==1&&x%5==2&&x%7==3) {

printf(\该校的学生人数是:%d人\\n\ break; } }

8.答:

#include main() { int x=12,i=1; while(1)

{ if((x+20+i)==2*(x+i)) break; i++; } printf(\小明母亲在%d年后比小明的年龄大一倍\\n\ printf(\那时小明年龄是:%d岁,小明母亲年龄是:%d岁\\n\}

习 题 6

6.1 单选题

DBCCB BDC

278

C语言程序设计教程(第3版)

6.2 填空题

1.c 2.60 3.1000 10 4.16

6.3 编程题

1.答:

#include \#include \

#define F(a) a*a+ sqrt(3*a*a+2*a+1) main()

{ float x, f;

scanf(\

f=4.5/F(exp(x))+F(cos(x))+F(sqrt(x))/F(x*x) ; printf(\}

习 题 7

7.1 单选题

BCADA CCCDA BCBDB

7.2 填空题

1.(1)2 3 4 5 (4)10000 01000 00100 00010 00001 (5)Language

(6)Language Programming (2)10010 (3)QuickC

2.(1)j+=2 (2)a[i]>a[j] 3.(1)i=1 (2)x[i?1]

7.3 改错题(略) 7.4 编程题

1.答:

#define N 10

#include \main()

{ int a[N]={1,2,3,4,5,6,7,8,9,10,osum=0, qsum=0,j; for(j=0;j<10;j++)

if( j%2) qsum+=a[j];

附录F 课后题参考答案

else osum+=a[j];

printf(\}

279

2.答:

#define N 10

#include \ main()

{ int a[N]={10,20,30,40,50,60,70,80,90}, j, k, x; scanf(\ for(j=0;j

if (x

{for(k=N-1; k>j; k--) a[k]=a[k-1]; a[j]=x;}

for(j=0;j

printf(\ \}

3.答:

#define M 3

#include \main()

{ int a[M][M]={{1,2,3},{2,4,5},{3,5,6}},j,k,flag=1;; for( j=0;j

for(k=0;k

4.答:

#include \#include \main()

{ char c1[10],c2[10],j; gets(c1); gets(c2);

for(j=0; (c1[j]==c2[j]) && c1[j] && c2[j]; j++); if (c1[j]>c2[j]) printf(\ if (c1[j]

5.答:

#include \#include \#define M 3 #define N 80 main()

{ char a[M][N],j,k,n[5]={0}; for(j=0;j

280

C语言程序设计教程(第3版)

for(j=0;j

for(k=0;a[j][k];k++)

if( a[j][k]>='A' && a[j][k]<='Z') n[0]++;

else if (a[j][k]>='a' && a[j][k]<='z') n[1]++; else if (a[j][k]>='0' && a[j][k]<='9') n[2]++; else if (a[j][k]==' ' ) n[3]++; else n[4]++;

for(j=0;j<5;j++) printf(\}

习 题 8

8.1 单选题

DBDAC BACCC

8.2 填空题

1.(1)2, 1 (2)10#30# 2.(1)49

(2)2

(4) 1, 1, 1, 1, 1

3, 3, 3, 3, 3

(3)FOUR, P (3)2

(4)60

(5)1 0 0 0 1

0 1 0 1 0 0 0 1 0 0 0 1 0 1 0

1 0 0 0 1

8.3 改错题(略) 8.4 编程题

1.答:

#include \

main()

{ int n1,n2,n3,t; int *p1,*p2,*p3;

printf(\ scanf(\ p1=&n1;

p2=&n2; p3=&n3;

if(*p1>* p2) { t=*p1;*p1=*p2;*p2=t;}

if(*p1>*p3) { t=*p1;*p1=*p3;*p3=t;} if(*p2>*p3) { t=*p2;*p2=*p3;*p3=t;}

printf(\}

C语言程序设计教程(第三版)课后习题参考答案 张敏霞版.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c4kfp459wg67dd7c92wpu_3.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top