欢迎您访问浙江自考网!网站为考生提供浙江自考信息服务,供学习交流使用,非政府官方网站,官方信息以浙江省招生考试院为准 登录  网站导航

浙江自考网

自考热线:16657169113

自考办电话 | 在线提问 | 公众号

2024年4月浙江自考《C语言程序设计》试题及答案九

编辑整理:浙江自考网 发表时间:2024-01-15   【

【2.41】下面程序的输出结果是____。

#include

main()

{int x=1;

void f1(),f2();

f1();

f2(x);

printf('%dn',x);

}

void f1(void)

{int x=3;

printf('%d',x);

}

void f2(x)

int x;

{printf('%d',++x);

}

A)1 1 1 B)2 2 2 C)3 3 3 D)3 2 1


【2.42】下面程序的输出结果是____。

#include

#define SUB(X,Y)(X)*Y

main()

{int a=3,b=4;

printf('%dn',SUB(a++,b++));

}

A)12 B)15 C)16 D)20


【2.43】下面程序的输出结果是____。

main()

{int a[]={1,2,3,4,5,6};

int*p;

p=a;

printf('%d',*p);

printf('%d',*(++p));

printf('%d',*++p);

printf('%d',*(p--));

p+=3;

printf('%d%d',*p,*(a+3));

}

A)1 2 3 3 5 4 B)1 2 3 4 5 6 C)1 2 2 3 4 5 D)1 2 3 4 4 5


【2.44】下面程序的输出结果是____。

main()

{int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12};

int*p=a;

p+=6;

printf('%d',*p);/*①*/

printf('%d',*(*(a+6)));/*②*/

printf('%d',*(a[1]+=2));/*③*/

printf('%d',*(&a[0][0]+6));/*④*/

}

A)7 7 7 7 B)②句语法错误C)③句语法错误D)④句语法错误


【2.45】下面程序的输出结果是____。

#define FMT'%Xn'

#include

main()

{static int a[][4]={1,2,3,4,5,6,7,8,9,10,11,12};

printf(FMT,a[2][2]);/*①*/

printf(FMT,*(*(a+1)+1));/*②*/

}

①A)9 B)11 C)A D)B

②A)6 B)7 C)8 D)前面三个参考答案均是错误的


【阅读程序题参考答案】

【2.41】参考答案:D

注释:程序中有三个'x'分别在三个不同的函数中,这三个'x'都是自动变量,所以三个'x'分别局部于三不同的函数,在三个函数中对'x'的操作互不影响。

【2.42】参考答案:A

【2.43】参考答案:A

注释:*(++p)和*++p都是指针变量值前加1,第一次指向a[1],第二次指向a[2];a+3是a[3]的地址。

【2.44】参考答案:C

注释:②句没有语法错误,但是a+6指向数组之外,因为a是a[0]的地址,a+1是a[1]的地址,a+2是a[2]的地址,显然数组a没有a[6]分量。③句错误,因为a[1]是地址常量,它是a[1][0]的地址,对于地址常量是不可以进行赋值运算的。

【2.45】参考答案:①D②A

注释:如果FMT定义为'%xn',则输出的16进制数据用小写字母表示。





浙江自考网课程中心

浙江自考网声明:

1、由于各方面情况的调整与变化,本网提供的考试信息仅供参考,考试信息以省考试院及院校官方发布的信息为准。

2、本网信息来源为其他媒体的稿件转载,免费转载出于非商业性学习目的,版权归原作者所有,如有内容与版权问题等请与本站联系。

浙江自考便捷服务

浙江自考网微信交流群