1.下列程序的运行结果为( )。
#include
main()
{ struct date
{int year,month,day;
}today;
printf("%dn",sizeof(struct date));
}
A.8
B.6
C.10
D.12
答案:B
2.有以下程序:
#include<
struct stu
{ int num;
char name[10]:
int age;}
void fun(struct stu*p)
{printf("%sn",(*p).name);}
tllain()
{
struct stu students[3]={{9801,"Zhang".20},
{9802,"Wang",19},{9803,"Zhao",1 8}}
fun(students+2);
}
输出的结果是( )。
A.Zhang
B.Zhao
C.Wang
D.18
答案:B
3.有以下程序:
viod fun(int a,int b,int C)
{ a=456:b=567;c=678;}
main()
{ int x=10,y=20,Z=30;
fun(x,y,z):
printf("%d,%d,%dn",x,y,z);
}
输出的结果是( )。
A.30,20,10
B.10,20,30
C.456,567,678
D.678,567,456
答案:B
4.有以下结构说明和变量定义,指针p、q、r分别指向链表中的3个连续结点。
struct node
{ int data;struct node*next;)*p,*q,*r;
现要将q所指结点从链表中删除,同时要保持链表的连续,以下不能按要求完成操作的语句是( )。
A.p->next=q->next;
B.P-next=P->next->next;
C.p->next=r;
D.p=q->next;
答案:D
5.有定义:“int a=2,b=3,c=4;”,则下列选项中值为0的表达式是( )。
A.(!a==1)&&(!b==O)
B.(a<B)&&!C||1< p>
C.a&&b
D.a||(b+b)&&(c-a)
答案:A
6.设fun()函数的定义形式为
void fun(char ch,float x){…}
则下列对函数fun的调用语句中,正确的是( )。
A.fun("abc",3.0);
B.t=fun('D'.16.5);
C.fun('65',2.8);
D.fun(32,32);
答案:C
7.有下列程序:
main()
{ char p[]={'a','h','c'},q[]="a";
printf("%d%dn".sizeof(P),sizeof(q));
}
程序运行后的输出结果是( )。
A.4 4
B.3 3
C.3 4
D.4 3
答案:C
8.有下列程序:
main()
{ int k=5,n=0;
while(k>0)
{switch(k)
{dcfault:break;
case 1:n=n+k;
case 2:
case 3:n+=k;
}
k--;
}
printf("%dn".n);
}
程序运行后的输出结果足( )。
A.0
B.4
C.6
D.7
答案:D
9.有以下程序:
main()
{ int a[]=(2,4,6,8,10},y=0,x,*P;
p=&a[1];
for(x=1;x<3;x++) y+=p[x];
printf("%dn,y");
}
程序运行后的输出结果是( )。
A.10
B.11
C.14
D.15
答案:C
10.有下列程序:
void sort(int a[],int n)
{ int i,j,t;
for(i=0;i<N-L;I++)< p>
for(j=i+1;j<N;J++)< p>
if(a[i]<A[J]){T=A[I];A[I]一A[J];A[J]=T;}< p>
}
main()
{ int aa[10]:{1,2,3,4,5,6,7,8,9,10),i;
sort(aa+2,5);
for(i=0;i<10;i++)printf("%d,",aa[i]);
printf("n");
}
程序运行后的输出结果是( )。
A.1,2,3,4,5,6,7,8,9,l0,
B.1,2,7,6,3,4,5,8,9,10,
C.1,2,7,6,5,4,3,8,9,10,
D.1,2,9,8,7,6,5,4,3,10,
答案:C
点击加载更多评论>>