|
一、单选题(共 10 道试题,共 20 分。)V 1. 下列错误的表达式是
A. -x++
B. (-x)++
C. x+++y
D. ++x+y
满分:2 分
2.
已定义以下函数: fun(int *p)
{ return *p; }
该函数的返回值是
A. 不确定的值
B. 形参p所指存储单元中的值
C. 形参p中存放的值
D. 形参p的地址值
满分:2 分
3. 从变量的作用域来分,可分为全局变量和局部变量,形参是
A. 局部变量
B. 全局变量
C. 静态变量
D. 动态变量
满分:2 分
4. 如有以下变量定义:int a=5,b=6,c=12;那么下列表达式结果为真的是
A. a-b
B. a>b
C. b/c
D. c%b
满分:2 分
5. 有以下函数定义: void fun( int n , double x ) { …… } 若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是
A. fun( int y , double m )
B. k=fun( 10 , 12.5 )
C. fun( 10 , 12.5 )
D. void fun( 10 ,12.5 );
满分:2 分
6. 以下选项中可作为C语言合法整数的是
A. 10110B
B. 0386
C. x2a2
D. 0Xffa
满分:2 分
7. 有如下定义:long m;char c;float x;double y;则表达式c+m*x/y的值的类型是
A. long
B. char
C. float
D. double
满分:2 分
8.
下述语句的输出为
int m=-1;
printf(“%d,%u,%o”,m,m,m);
A. -1,-1,-11
B. -1,32767,-177777
C. -1,32768,177777
D. -1,65535,177777
满分:2 分
9. 在C语言中,字符型数据在内存中的存储形式是
A. 原码
B. 补码
C. 反码
D. ASCII码
满分:2 分
10. 在C语言中,下列字符常量中合法的是
A. ′\084′
B. ′\x43′
C. ′ab′
D. ”\0”
满分:2 分
2012年秋季学期《C语言》在线考试(适用于2013年1月份考试)
试卷总分:100 测试时间:--
单选题 其他题 简答题
二、其他题(共 10 道试题,共 50 分。)V 1.
读程序写出程序执行结果
#include <stdio.h>
void main()
{ int x[]={5,6,7};
int s=1,i,*p=x;
for(i=0;i<3;i++)
s*=*(p+i);
printf(“%d\n”,s);
}
满分:5 分
2.
读程序写出程序执行结果
#include <stdio.h>
void main()
{ int x,y;
for(y=1,x=1; y<=20;y++)
{ if(x>=8) break;
if(x%2==1){ x+=5; continue ; }
x-=3;
}
printf("x=%d, y=%d\n",x,y);
}
满分:5 分
3.
读程序写出程序执行结果
#include <stdio.h>
void main()
{ int k=1;
switch(k)
{ case 0: printf("A"); break;
case 1: printf("B");
case 2: printf("I");
case 3: printf("G"); break;
default: printf("E");
}
}
满分:5 分
4.
读程序写出程序执行结果
#include <stdio.h>
void main()
{ int i=0,a=0;
while( i<20 )
{ for(;;)
if((i%10)= =0) break;
else i- -;
i+=11;
a+=i;
}
printf("%d\n",a);
}
满分:5 分
5.
读程序写出程序执行结果
#include <stdio.h>
void main()
{ int x=2;
switch(1+x)
{ case 0 :
case 1 : printf(“apple”); break ;
case 2 : printf(“hello”); break;
case 3 : printf(“world”);
default : printf(“thank you”);
}
}
满分:5 分
6.
读程序写出程序执行结果
#include <stdio.h>
int d=1 ;
int fun(int p)
{ static int d=3 ;
d+=p;
printf("%3d" , d) ;
return(d) ;
}
void main( )
{ printf("%3d\n" , fun(2+fun(d))) ;
}
满分:5 分
7.
读程序写出程序执行结果
#include <stdio.h>
#define S(a,b) (a)*(b)
void main()
{ int a=3 ,area;
area=S(a,a+3) ;
printf("area=%d\n",area);
}
满分:5 分
8.
读程序写出程序执行结果
#include <stdio.h>
void main()
{ char x[]="language";
char *ptr=x;
while(*ptr)
{ printf("%c\n",*ptr-32);
ptr++;
}
}
满分:5 分
9.
读程序写出程序执行结果
#include <stdio.h>
int fun(int x)
{ int y=1;
static int z=4;
z+=1;++y;
return(x+y+z);
}
void main()
{ int i;
for(i=1;i<=3;i++)
printf("%3d",fun(i));
}
满分:5 分
10.
读程序写出程序执行结果
#include <stdio.h>
#define S(x) x*x
void main()
{ int a,k=3,m=1;
a=S(k+m);
printf("%d",a);
}
满分:5 分
试卷总分:100 测试时间:--
单选题 其他题 简答题
三、简答题(共 3 道试题,共 30 分。)V 1. 编程:对N个整数进行从大到小顺序排列。(备注:建议学员在做编程序题目时,事先在记事本或word文档中编写,然后拷贝至答题区域即可。)
满分:10 分
2. 编程:编写一个函数,由实参传来一个字符串,统计此字符串中字母、数字、空格和其他字符的个数,并输出统计结果。(备注:建议学员在做编程序题目时,事先在记事本或word文档中编写,然后拷贝至答题区域即可。)
满分:10 分
3. 编程: 计算sum=1-1/2!+1/3!-1/4!+ …… -1/10!(备注:建议学员在做编程序题目时,事先在记事本或word文档中编写,然后拷贝至答题区域即可。)
满分:10 分
|
|