当前位置:首页 >课程 >C语言编程新思路

1、若有数组名作为函数调用的实参,传递给形参的是( )。

A、数组的首地址
B、数组第一个元素的值
C、数组中全部元素的值
D、数组元素的个数

参考答案:请扫码使用小程序查看答案

2、若使用一维数组名作为函数实参,则以下描述中正确的是 ( )。

A、必须在调用函数中说明此数组的大小
B、实参数组类型与形参数组类型可以不匹配
C、在被调用函数中,不需要考虑形参数组的大小
D、实参数组名与形参数组名必须一致

参考答案:请扫码使用小程序查看答案

3、以下叙述正确的是( )

A、C语言中各函数(除主函数外)之间既允许直接递归调用也允许间接递归调用
B、C语言中各函数(除主函数外)之间既不允许直接递归调用也不允许间接递归调用
C、C语言中各函数(除主函数外)之间允许直接递归调用不允许间接递归调用
D、C语言中各函数(除主函数外)之间不允许直接递归调用允许间接递归调用

参考答案:请扫码使用小程序查看答案

4、下列程序的输出结果是( )。 #include 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

参考答案:请扫码使用小程序查看答案

5、下列程序的输出结果是( )。 #include 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

参考答案:请扫码使用小程序查看答案

6、下列程序的输出结果是( )。 #include 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

参考答案:请扫码使用小程序查看答案

7、以下程序运行时,若输入5 10 3,则输出结果是( )。 #include 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,

A、5,10,3
B、10,5,3
C、3,5,10
D、3,10,5

参考答案:请扫码使用小程序查看答案

8、以下程序运行时,若输入5,则输出结果是( )。 #include int fac(int n) {static int k=1; k=k*n; return k; } int main() {int m,i,f; scanf("%d",&m); for(i=1;i<=m;i++) {f=fac(i); printf("%d ",f); } }

A、1 2 3 4 5
B、1 2 6 24 120
C、5
D、120

参考答案:请扫码使用小程序查看答案

9、下列程序的输出结果是( )。 #include int fun(int a) {int b; if(a==0||a==1) return 3; b=a*a-fun(a-2); return b; } int main() {int x,y; x=fun(3); y=fun(4); printf("%d,%d\n",x,y); return 0; }

A、3,4
B、9,16
C、6,16
D、6,15

参考答案:请扫码使用小程序查看答案

10、下列程序的输出结果是( )。 #include int fun(int (*p)[3]) {int i,j,n; n=p[0][0]; for(i=0;i<2;i++) for(j=0;j<3;j++) if(p[i][j]>n) n=p[i][j]; return n; } int main() {int a[2][3]={11,32,13,44,5,6},m; m=fun(a); printf("%d\n",m); return 0; }

A、11
B、44
C、6
D、32

参考答案:请扫码使用小程序查看答案

11、下列程序的运行结果是( )。 #include void fun(int x, int y, int *cp,int *dp) { *cp=x+y; *dp=x-y; } int main() { int a,b,c,d; a=4;b=3; fun(a,b,&c,&d); printf("%d,%d\n",c,d); return 0; }

A、4,3
B、3,4
C、7,1
D、1,7

参考答案:请扫码使用小程序查看答案

12、下列程序的运行结果是( )。 #include void op(int (*p)[3]) {int i,j; for(i=0;i<3;i++) for(j=0;j<3;j++) if(p[i][j]%3==0) printf("%d ",p[i][j]); } int main() {int s[3][3]={1,2,3,4,5,6,7,8,9}; op(s); return 0; }

A、3 6 9
B、1 2 3
C、1 4 7
D、7 8 9

参考答案:请扫码使用小程序查看答案

13、以下程序运行时,若输入5,则程序的输出结果是( )。 #include int fun(int n) {if(n==1) return 1; else return n+fun(n-1); } int main() {int m; scanf("%d",&m); m=fun(m); printf("%d\n",m); }

A、6
B、5
C、9
D、15

参考答案:请扫码使用小程序查看答案

14、以下程序运行时,若输入ab012kd99pk8,则程序的输出结果是( )。 #include void fun(char s[]) {int i,j; for(i=0,j=0;s[i]!='\0';i++) if(s[i]>='0'&&s[i]<='9') s[j++]=s[i]; s[j]='\0'; } int main() {char str[80]; gets(str); fun(str); puts(str); return 0; }

A、012
B、012998
C、99
D、8

参考答案:请扫码使用小程序查看答案

15、若有以下程序: #include void f(int *q,int n) {int i; for(i=0;i

A、2,3,4,5,6,
B、2,2,3,4,5,
C、6,2,3,4,5,
D、1,2,3,4,5,

参考答案:请扫码使用小程序查看答案

16、形参数组与实参数组,在内存空间中是( )的。

A、相互独立
B、完全重叠
C、部分重叠
D、随机存储

参考答案:请扫码使用小程序查看答案

17、若有以下程序: #include int *fun(int *s,int *t) {if(*s<*t) s=t; return s; } int main(void) {int a=3,b=6,*p=&a,*q=&b,*r; r=fun(p,q); printf("%d,%d,%d\n",*p,*q,*r); return 0; } 则程序的输出结果是( )。

A、3,3,6
B、3,6,6
C、6,3,3
D、6,6,3

参考答案:请扫码使用小程序查看答案

18、若有以下程序: #include int fun(int x) { if(x>10) {printf("%d-",x%10); fun(x/10); } else printf("%d",x); return; } int main(void) { int z=123456; fun(z); return 0; } 则程序的输出结果是( )。

A、1-2-3-4-5-6-
B、1-2-3-4-5-6
C、6-5-4-3-2-1-
D、6-5-4-3-2-1

参考答案:请扫码使用小程序查看答案