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