C语言编程新思路2023章节测试答案
A、4,5,7
B、4,7,5
C、7,5,4
D、7,4,5
我的答案:B
19、有如下程序: #include <stdio.h> f(int a) { int b=0; static int c=3; a=c++; b++; return(a); } int main(void) { int a=2,i,k; for(i=0;i<2;i++) k=f(a++); printf(“%d\n”,k); return 0; } 该程序的输出结果是( )。
A、6
B、3
C、4
D、5
我的答案:C
20、凡是未指明存储类别的局部变量,其隐含的存储类别是( )。
A、register
B、auto
C、static
D、extern
我的答案:B
第十章测试
1、若有数组名作为函数调用的实参,传递给形参的是( )。
A、数组的首地址
B、数组第一个元素的值
C、数组中全部元素的值
D、数组元素的个数
我的答案:A
2、若使用一维数组名作为函数实参,则以下描述中正确的是 ( )。
A、必须在调用函数中说明此数组的大小
B、实参数组类型与形参数组类型可以不匹配
C、在被调用函数中,不需要考虑形参数组的大小
D、实参数组名与形参数组名必须一致
我的答案:C
3、以下叙述正确的是( )
A、C语言中各函数(除主函数外)之间既允许直接递归调用也允许间接递归调用
B、C语言中各函数(除主函数外)之间既不允许直接递归调用也不允许间接递归调用
C、C语言中各函数(除主函数外)之间允许直接递归调用不允许间接递归调用
D、C语言中各函数(除主函数外)之间不允许直接递归调用允许间接递归调用
我的答案:A
4、下列程序的输出结果是( )。 #include <stdio.h> void sub(int x,int y,int *z) { *z=y-x; } int main() { int a,b,c; sub(10,5,&a); sub(7,a,&b); sub(a,b,&c); printf("%d,%d,%d\n",a,b,c); return 0; }
A、5,2,3
B、-5,-12,-7
C、-5,-12,7
D、5,-2,-7
我的答案:B
5、下列程序的输出结果是( )。 #include <stdio.h> void prtv(int *x) { printf ("%d\n",++*x); } int main() { int a=25; prtv(&a); return 0; }
A、23
B、24
C、25
D、26
我的答案:D
6、下列程序的输出结果是( )。 #include <stdio.h>void fun(int *a,int *b){int w; *a=*a+*a; w=*a; *a=*b; *b=w;}int main(){ int x=2, y=3,*px=&x,*py=&y;;fun(px,py);printf("%d,%d\n",x,y);return 0;}
A、4,3
B、2,3
C、3,4
D、3,2
我的答案:C
7、以下程序运行时,若输入5 10 3,则输出结果是( )。 #include <stdio.h> void swap(int *p1,int *p2) {int t; t=*p1; *p1=*p2; *p2=t; return; } int main() {int a,b,c; scanf("%d%d%d",&a,&b,&c); if(a>b) swap(&a,&b); if(a>c) swap(&a,&c); if(b>c) swap(&b,&c); printf("%d,%d,%d\n",a,b,c); return 0; }
A、5,10,3
B、10,5,3
C、3,5,10
D、3,10,5
我的答案:C
★《布宫号》提醒您:民俗信仰仅供参考,请勿过度迷信!