C语言程序设计 笔试试题
三 四 五 六 笔试(70%) 综合 (30%) 总分 题号 一 二 分数 学号 试卷说明:
1. 笔试卷面总分100分,取卷面成绩的70%计入总分;
2. 综合成绩为平时成绩(10%)和实验成绩(20%)之和,占总分的30%; 3. 答题时禁止拆开试卷钉,试卷背面即为草稿纸; 4. 答题时间120分钟。
一、单项选择题。将正确答案填入下面框中。
姓名 (本题16分,每小题1分) 题号 答案 题号 答案 1 9 2 10 3 11 4 12 5 13 6 14 7 15 8 16 注意行为规范 遵守考试纪律
1. 有以下程序 main() {int a=1,b=0; if(!a) b++;
else if(a==0) if(a) b+=2; else b+=3;
printf(“%d\\n”,b); }则程序输出( A )。 A) 0
B) 1
C) 2
D) 3
2. 有以下定义:int a; long b; double x,y;则下列正确的是( A )。
A) a%(int)(x-y) B) a=x!=y
C) (a*y)%b D) y=x+y=x
3. 若有定义 int (*p)[3];则下列说法正确的是( C )。
A) 定义了基类型为int的三个指针变量
B) 定义了一个名为 *pt、具有三个元素的整型数值
C) 定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组D) 定义了基类型为int的具有三个元素的整型数组 4. 有以下程序段
main() { int x=10; while(x--); printf(\则最后的输出结果是:( B )。 A) x=0 B) x= -1 5. 有以下程序:
int fun() {static int x=1; x *= 2; return x;} main( ) { int i,s=1 ;
for(i=1 ;i<=2 ;i++) s=fun() ; printf(“%d\\n ”,s) ;}
执行后的输出结果为( D )。 A) 0
B) 1
C) 8
D) 4
C) x=1
D)while构成无限循环
6. void main( ){ int k=011;
printf(\ } }程序输出结果是( D ) A)12 A) _2 A) float
B) 11
C) 10
D) 9
D) AaBc
7. 以下C语言标识符中,不合法的是( C )。
B) a_b B) int
C) a--b
8. C语言允许函数类型默认定义,此时该函数值隐含的类型是( B )。
C) long
D) double
9. 以下程序段运行结果是( B )。
enum weekday{aa,bb=2,cc,dd,ee}week=ee;
printf(“%d\\n“,week); A) 4
B) 5
C) ee
D) 0
10. 以下对C语言函数的描述中,不正确的是( B )。 A) 不同函数中可以使用相同名字变量 B) 函数可以嵌套定义 C) 函数可以没有返回值 是( D )。 A) *p B) *x C) *(p+1)
int a=6;
printf(“%d\\n“,a>>1); A) 12 B) 3 语句是( B )。
A) scanf(“%lf%lf”,x,y); B) scanf(“%lf,%lf”,px,py); C) scanf(“%f%f”, &x, &y);
char str[ ]=“abc“;
printf(“%d, %d \\n“,strlen(str),sizeof(str)); A)6,3 B) 3,3
#define f(x) x*x*x main( ) { int a=1,b,c; b=f(a+1);c=f((a+1)); printf(“%d,%d\\n“,b,c);} A) 4,8 B) 8,4 16. 有以下程序:
main() {FILE *f;
f=fopen(“fa.txt“,“w“); fprintf(f,“day“); fclose(f);}
C) 8,8
D) 4,4
C) 10,10
D) 3,10
15. 以下程序段运行结果是( A )。
D) scanf(“%f%f”,x,y);
14. 以下程序运行结果是( D )。
C) 6
D) 1
13. 若有定义语句:double x,y,*px,*py;执行了px=&x;py=&y;之后,正确的输入
D) x[5]
D) 程序由函数组成
11. 若有定义语句:double x[5]={1.0,2.0,3.0,4.0,5.0},*p=x;则错误引用x数组元素的
12. 以下程序段运行结果是( B )。