C语言程序设计    笔试试题
题号
笔试(70%)
综合
(30%)
总分
分数
试卷说明:
1. 笔试卷面总分100分,取卷面成绩的70%计入总分;
2. 综合成绩为平时成绩(10%)和实验成绩(20%)之和,占总分的30%
3. 答题时禁止拆开试卷钉,试卷背面即为草稿纸;
4. 答题时间120分钟。
一、单项选择题。将正确答案填入下面框中。 
本题16分,每小题1
题号
1
2
3
4
5
6
7
8
答案
题号
9
10
11
12
13
14
15
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("x=%d\n",x);}
则最后的输出结果是:( B  )。
A) x=0        B) x= -1        C) x=1        D)while构成无限循环
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
6. void main( ){
  int k=011;
printf("%d\n",k++);  }
}程序输出结果是(  D )
A)12            B) 11            C) 10            D) 9
7. 以下C语言标识符中,不合法的是C  )。
A) _2                  B) a_b          C) a--b            D) AaBc
8. C语言允许函数类型默认定义,此时该函数值隐含的类型是B  )。
A) float            B) int          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) 程序由函数组成
11. 若有定义语句:double x[5]={1.0,2.0,3.0,4.0,5.0},*p=x;则错误引用x数组元素的是  D        )。
A) *p      B) *x  C) *(p+1)              D) x[5]
12. 以下程序段运行结果是B          )。
    int a=6;
printf(%d\n,a>>1);
A) 12          B) 3                  C) 6              D) 1
13. 若有定义语句:double x,y,*px,*py;执行了px=&x;py=&y;之后,正确的输入语句是B          )。
A) scanf(%lf%lf,x,y);              B) scanf(%lf,%lf,px,py);
C) scanf(%f%f,x,y);          D) scanf(%f%fscanf输入整型数组,x,y);
14. 以下程序运行结果是D          )。
    char str[ ]=abc;
printf(%d, %d \n,strlen(str),sizeof(str));
A)6,3          B) 3,3                  C) 10,10              D) 3,10
15. 以下程序段运行结果是  A        )。
    #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                  C) 8,8              D) 4,4
16. 有以下程序:
    main()
{FILE *f;
f=fopen(fa.txt,w);
fprintf(f,day);
fclose(f);}
若文本文件fa.txt中原有内容为:hello,则运行以上程序后,文件fa.txt中的内容为(  A          )。
A)day          B) helloday              C) daylo          D)dayhello
二、填空题。请按序号把答案填入下面框中, 
不允许出框线。(本题20分,每空2
题号
 
题号
 
1
a[row][col]
6
k<=n
2
x%10或x%100%10
7
k++
3
23hE45a
8
m%i==0&&n%i==0
4
fun()
9
p=p->next
5
m++
10
s[i]或\0
1. 以下fun函数功能是在N行M列的整型二维数组中,选出一个最大值作为函数值返回。
int fun(int a[N][M])
{ int i,j,row=0,col=0;
for(i=0;i<N;i++)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。