printf(“%c ”,fun(fun(a,B),fun(b,C))); }
程序的执行结果是
A.函数调用出错 B)8 C)9 D)7
(28) 设有定义:int n=0,*p=&n,**q=&p;则以下选项中,正确的赋值语句是 A.p=1; B.*q=2; C.q=p; D.*p=5;
(29) 有以下程序 void f(int v , int w) { int t;
t=v;v=w;w=t; }
main( )
{ int x=1,y=3,z=2; if(x>y) f(x,y); else if(y>z) f(y,z); else f(x,z);
printf(“%d,%d,%d ”,x,y,z); }
执行后输出结果是 A.1,2,3 B.3,1,2 C.1,3,2 D.2,3,1
(30) 有以下程序段
int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],b; b=p[5]; b中的值是 A.5 B.6 C.8 D.9
(31) 31、有以下程序 main( )
{ char a*+=”abcdefg”,b*10+=”abcdefg”; printf(“%d %d ”,sizeof( A.,sizeof(B)); }
执行后输出结果是 A.7 7 B.8 8 C.8 10
D.10 10
(32) 有以下程序 void swap1(int c[]) { int t;
t=c[0];c[0]=c[1];c[1]=t; }
void swap2(int c0,int c1) { int t;
t=c0;c0=c1;c1=t; }
main( )
{ int a[2]={3,5},b[2]={3,5}; swap1(A); swap2(b[0],b[1]);
printf(“%d %d %d %d ”,a*0+,a*1+,b*0+,b*1+); }
其输出结果是 A.5 3 5 3 B.5 3 3 5 C.3 5 3 5 D.3 5 5 3
(33) 有以下程序 void sum(int *
A.
{ a[0]=a[1];} main( )
{ int aa[10]={1,2,3,4,5,6,7,8,9,10},i; for(i=2;i>=0;i--) &nb sp; sum(&aa[i]); printf(“%d ”,aa*0+); }
执行后的输出结果是 A.4 B.3 C.2 D.1
(34) 34、有以下程序 int f(int b[][4]) { int i,j,s=0; for(j=0;j<4;j++) { i=j;
if(i>2) i=3-j; s+=b[i][j]; }
return s;
}
main( )
{ int a[4][4]={{1,2,3,4},{0,2,4,5},{3,6,9,12},{3,2,1,0}}; printf(“%d ”,f(A)); }
执行后的输出结果是 A.12 B.11 C.18 D.16
(35) 有以下定义 #include
char a[10],*b=a;
不能给数组a输入字符串的语句是 A.gets(A) B.gets(a[0]) C.gets(&a[0]); D.gets(B);
(36) 有以下程序 main( )
{ char *p*10+=,“abc”,”aabdfg”,”dcdbe”,”abbd”,”cd”-; printf(“%d ”,strlen(p*4+)); }
执行后输出结果是 A.2 B.3 C.4 D.5
(37) 有以下程序 int a=2; int f(int *A) {return (*A)++;} main( ) { int s=0; { int a=5; s+=f(&A); }
s+=f(&A);
printf(“%d ”,s); }
执行后输出结果是 A.10 B.9 C.7
D.8
(38) 有以下程序 #define f(x) x*x main( ) { int i;
i=f(4+4)/f(2+2); printf(“%d ”,i); }
执行后输出结果是 A.28 B.22 C.16 D.4
(39) 设有以下语句 typedef struct S { int g; char h;} T;
则下面叙述中正确的是
A.可用S定义结构体变量 B)可以用T定义结构体变量 C)S是struct类型的变量 D)T是struct S类型的变量 (40) 有以下程序 struc STU
{ char name[10]; int num; };
void f1(struct STU C)
{ struct STU b=,“LiSiGuo”,2042-; c=b; }
void f2(struct STU *C)
{ struct STU b=,“SunDan”,2044-; *c=b; }
main( )
{ struct STU a=,“YangSan”,2041-,b=,“WangYin”,2043-; f1(
A.;f2(&B);
printf(“%d %d ”,a.num,b.num); }
执行后的输出结果是 A.2041 2044 B.2041 2043 C.2042 2044 D.2042 2043 (41) 有以下程序
main( )
{ unsigned char a,b; a=4|3; b=4&3;
printf(“%d %d ”,a,b(; }
执行后输出结果是 A.7 0 B.0 7 C.1 1 D.43 0
(42) 下面程序的功能是输出以下形式的金字塔图案是: * *** ***** ******* main( ) { int i,j;
for(i=1;i<=4;i++)
{ for(j=1;j<=4-i;j++) printf(“ “);
for(j=1;j<=_______;j++) printf(“*”); printf(“ ”); } }
在下划线处应填入的是 A.i B.2*i-1 C.2*i+1 D.i+2
(43) 有以下程序 void sort(int a[],int n) { int i,j,t;
for(i=0;i for(j=i+2;j if(a[i] } main()
{ int aa[10]={1,2,3,4,5,6,7,8,9,10},i; sort(aa,10);
for(i=0;i<10;i++) printf(“%d”,aa*i+); printf(“ ”); }
其输出结果是
A.1,2,3,4,5,6,7,8,9,10, B.10,9,8,7,6,5,4,3,2,1, C.9,2,7,4,5,6,3,8,1,10, D.1,10,3,8,5,6,7,4,9,2,