全国软件专业人才设计与开发大赛题目选拔试题
一、基础篇(50分)
1、单选(每题1分,10小题共10分)
1). 执行下列程序中的输出语句后,x的值是_C_____.
main()
{int x ;
printf(“%d\n”,(x=5*6,x*2,x+20));}
A)30 B)60 C)50 D)80
2). 在C语言中,下列选项属于合法的长整型常数的是_A______.
A)0L B)1234567 C)0.0234567 D)3.14159e3
3). 若有定义:int a,b;char x,y;并有以下输入数据: 14 22 XxYy (回车)
则能给a赋整数14,给b赋整数22,给x赋字符x,给y赋字符y的正确程序段是__C______.
A) scanf(“%d %d”,&a,&b);x=getchar();y=getchar();
B) scanf(“%d%d %c %c”, &a, &b,&x,&x,&y,&y);
C) scanf(“%d %d %c%c%c %c”, &a,&b,&x,&x,&y,&y);
D) scanf(“%d%d %c %c”, &a, &b,&x,&y);
4). 当c的值不为0时,下列选项中能正确将c的值赋给变量a、b的是C_______.
A)c=b=a; B)(a=c)‖(b=c); C)(a=c)&&(b=c); D)a=c=b;
5). 语句printf(“%d\n”,strlen(“asd\n\x12\1\\”));的输出结果是___C___.
A)9 B)11 C)7 D) 8
6). 下列程序的运行结果是____D____.
main()
{ int y=10;
do { y- - ;} while(- -y);
printf(“%d\n”,y- -);}
A)-1 B)1 C)8 D)0
7). 阅读下面程序,该程序段的功能是__B___.
#include <stdio.h>
main()
{ int c[ ]={23,1,56,234,7,0,34},i,j,t;
for(i=1;i<7;i++)
{ t=c[i];j=i-1;
while(j>=0&&t>c[j]) { c[j+1]=c[j];j- - ;}
c[j+1]=t;}
for(i=0;i<7;i++)printf(“%d ”,c[i] );
putchar('\n');
}
A)对数组元素的升序排列 B)对数组元素的降序排列
C)对数组元素的倒序排列 D)对数组元素的随机排列
8). 有如下程序:
#define f(x)x*x
main()
{ int i ;
i=f(4+4)/(2+2);
printf(“%d\n”,i);}
该程序执行后的输出结果是__C _____.
A)28 B)21 C)16 D)4
9). 下列程序的运行结果是__D_____.
main()
{ unsigned c1=0xff,c2=0x00;
c1=c2|c1>>2;c2=c1^0236;
printf(“%x,%x\n”,c1,c2);
}
A)0x3f,0XA1 B)3f,A1 C)ffff,61 D)3f,a1
10). 有以下程序:
#include <stdio.h>
main()
{ FILE *fp;int i=20,j=30,k,n;
fp=fopen(“d1.dat”,“w”);
fprintf(fp,“%d\n”,i);fprintf(fp,“%d\n”,j);
fclose(fp);
fp=fopen(“d1.dat”,“r”);
fscanf(fp,“%d%d”,&k,&n);printf(“%d %d\n”,k,n);
fclose(fp);}
该程序运行后的输出结果是___A____.
A)20 30 B)20 50 C)30 50 D)30 20