c语言 颜晖 答案,C语言程序设计-(何钦铭-颜晖-)课后习题答案-浙江科学技术出版社.pdf...

C语言程序设计-(何钦铭-颜晖-)课后习题答案-浙江科学技术出版社

习题参考答案 习题一

1. /*在 C 语言中,下列标识符中哪些是合法的,哪些不合法?”*/

合法:total, _debug, Counter1, begin_

不合法:Large&Tall

2. /*写出流程图,求 1~100 中能被 6 整除的所有整数之和*/

3. /*写出源程序,求 1~100 中能被 6 整除的所有整数之和”。*/

#include

void main()

{

int sum=0, i;

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

if( i%6==0) sum =sum+i;

printf(“sum=%d”, sum);

}

4. /*画流程图,判别整数 n 是否是素数*/

习题参考答案 习题十

1. 选择题

(1) A

(2 ) C (由于p 指向 x, 等式p≡&x, *p≡x 成立. 故&*p≡&x≡p)

(3 ) B (int c[]={1, 7, 12};  c[0]=1, c[1]=7, c[2]=12. 而 k=c, 即k 指向数组 c 的首元素c[0] 。printf(“…”, *++k); 输

出参数*(++k)的值是*(k+1), 即 c[1] )

(4 ) D (对字符数组只能在定义的同时赋初值,但不能在定义之后再用‘= ’赋值 )

(5 ) D (*p[3]是由 3 个整型指针组成的数组,p 是数组名,代表该数组的基地址,是地址常量,不能对 p 赋值,故

A,C 错。*p 代表 p[0]这个指针,a[0]是普通整型变量,两者不应互相赋值,故 B 错。p[0]=&a[0]或 p[0]=a,都是正确

的,作用是令p[0]这个指针指向数组 a 的首元素 a[0])

(6 ) D ( 指针数组元素 p[3] 是一 个指 针 ,指向 a[3*3]=a[9], 即 *p[3]==a[9] 而二维数组元素 p[3][2]

*(p[3]+2)=*(&a[9]+2)=*(&a[11])=a[11])

2. /*写输出结果*/

(1) 3 ,2,5 # 3 ,3 ,4 #

注: z 是全局变量,它 在 p() 中有效,但在main() 中另有与它同名的局部变量,所以在main() 中无效。 main()和 p() 中分

别定义了各自的局部变量 x,y 。在void p( int *x, int y) 中x 是指针形式,表示按地址传递,则 p 中的 *x 就是 main() 中的

x ;另一形参y 是普通变量形式,p 对 y 的修改不影响main() 中的y 的值。

变量 在函数 p() 中的取值 在 main()中的取值

x 23 (++*x) 3 (受p()影响)

y 32(y--) 3 (不受p()影响)

z 45 (z=*x+y=3+2) 4 (不受p()影响)

(2 ) udent

注:s+2=&s[2], 当作为printf() 中对应“%s ”的输出参数时,表示从 s[2]开始输出,直到字符串结束)

(3 ) HappyNewYear

注: 1. for(s=pa, n=0; *s!='\0'; ++s, ++n); //求字符串 pa 的有效长度n, 相当于:

n=0;

for( s=pa; *s!=’\0’; ++s)

++n;

// n=12

2. for(s=pa, i=0; i

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值