若有如下程序: int sub(int m) { if(m==1||m==0) return 2; else return(sub(m-1)*sub(m-2));} main() { int n; scanf("%d",&n); printf("%d",sub(n)); } 如果从键盘输入4<回车>,则程序运行后的输出结果是( )。
A.8
B.16
C.24
D.32
第1题:
以下程序的输出结果是#include "stdio.h"int *fun(int *a,int *b){ int m; m=*a; m+=*b-3; return(&m);}main(){ int x=21,y=35,*a=&x,*b=&y; int *k; k=fun(a,b); printf("%d\n",*k);}
第2题:
有以下程序: int m=1; void fun(int *n) { static int m=2; *n*=m-1; m+=2; } main() { int i; for(i=1;i<4;i++) { fun(&m); printf("%d",m); } } 程序的输出结果是( )
A.1317
B.2630
C.1315
D.1111
第3题:
下面()是正确的判断素数程序(m>1)。
A.j=0; for (i =2; i<=m-1; i++) if (m % i != 0) j++; if(j==m-2) printf(“%d是素数n", m);
B.j=0; for (i =2; i<=m-1; i++) if (m % i == 0) j++; if(j==0) printf(“%d是素数n", m);
C.flag=0; for (i =2; i<=m-1; i++) if (m % i == 0) flag=1; if(flag==0) printf(“%d是素数n", m);
D.for (i =2; i<=m-1; i++) if (m % i == 0) i=m+2; if(i==m+3) printf(“%d是素数n", m);
第4题:
若有如下程序: sub(int *t,int a[3][4]) { int m,n; for(m=0;m<3;m++) for(n=0;n<4;n++) { *t=a[m][n];t++;} } main() { int*t,s[3][4)={{1,2,3),{4,5,6),{7,8,9}}; t=(int*)malloc(50); sub(t,s); printf("%d,%d\n",t[4],t[7]); } 则程序运行后的输出结果是( )。
A.4,7
B.4,0
C.5,8
D.程序错误
第5题:
【填空题】若有如下定义和语句: int *p[3], a[6], n; for(m=0;m<3;m++) p[m]=&a[2*m]; 则*p[0]引用的是a数组元素____(1)_____;*(p[1]+1)引用的是a数组元素_____(2)____。