2013年c语言试卷(带答案版)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
湖北科技学院2013学年春季学期2012级非计算机本科专业
《高级语言程序设计(C语言)》期末考试试卷(A卷、闭卷)
一.选择题:(每小题1分,共40分)
1.C语言规定,必须用( C )作为主函数名。
A) Function B) include C) main D) stdio
2.下列说法正确的是( C )。
A) 在执行C程序时不是从main 函数开始的
B) C程序书写格式严格限制,一行内必须写一个语句
C) C程序书写格式自由,一个语句可以分写在多行上
D) C程序书写格式严格限制,一行内必须写一个语句,并要有行号
3.下列字符串是用户标识符的是( A )。
A) _HJ B) 9_student C) long D) float
4.下列数据中是合法的整型常量的是( C )。
A) 3E2 B) 029 C) -32768 D) 6e+007
5.语句int k,i=3;k=(i++)+(i++)+(i++);执行过后k和i的值分别为( A )。
A) 9,6 B) 12,5 C) 18,6 D) 15,5
6.10+‟a‟+1.5-567.345/‟b‟的结果是( B )型数据。
A) long B) double C) int D) unsigned float
7.在C 语言中,下列类型属于构造类型的是( D )。
A) 整型B) 指针类型C) 实型D) 结构体类型
8.在C语言中,退格符是( D )。
A) \n B) \t C) \v D) \b
9.下列符号中,可以作为变量名的是( C )。
A) +c B) *X C) _DAY D) next-day
10.以下程序的输出结果是( B )。
void main()
{ unsigned char a=2,b=4,c=5,d;
d=a|b; d&=c;
printf("%d\n",d); }
A) 3 B) 4 C) 5 D) 6
11.若已知a=5,b=10,则表达式a==b的值为( D )。
A) 10 B) 20 C) 1 D) 0
12.已有定义” int a=-2; ”和输出语句” printf( “%8x”, a );“,以下正确的叙述是( D )。
A) 整型变量的输出形式只有%d一种
B) %x是格式控制符的一种,它可以适用于任何一种类型的数据
C) %x是格式控制符的一种,其变量的值按十六进制输出,但%8x是错误的
D) %8x不是错误的格式控制符,其中数字8规定了输出数据的宽度
13. 在C语言中,凡在一个标识符后面紧跟着一对圆括弧,就表明它是一个( A )。
A) 函数B) 文件C) 变量D) 子程序
14.语句
int x=10, y=20, z=30;
if (x>y) z=x; x=y; y=z; 执行后x、y、z的值是( B )。
A) x=10,y=20,z=30 B) x=20,y=30,z=30
C) x=20,y=30,z=10 D) x=20,y=30,z=20
15.在C的if语句中,可用作条件的表达式是( D )。
A) 关系表达式B) 逻辑表达式C) 算术表达式D) 任意表达式
16.以下for循环是( D )。
for(a=0,b=0;( b!=123)&&(a<=4);a++ )
A) 无限循环B) 循环次数不定C) 执行4次D) 执行5次
17.以下程序段( C )。
x= -1; do { x=x *x; } while( !x );
A) 是死循环B) 循环执行二次C) 循环执行一次D) 有语法错误
18.程序段如下
int k=0; while( k++<=2 ) printf ( "%d\n", k );
则执行结果是( A )。
A) 1 B) 2 C) 0 D)无结果
2 3 1
3 4 2
19.以下能正确计算1×2×3×…×10的程序段是( C )。
A) do {i=1;s=1; s=s*i; i++; } while(i<=10);
B) do {i=1;s=0; s=s*i; i++; } while(i<=10);
C) i=1; s=1; do {s=s*i; i++; } while(i<=10);
D) i=1; s=0; do {s=s*i; i++; } while(i<=10);
20.若有定义:int a[10]; ,则数组a元素的正确引用是( D )。
A) a [10] B) [3.5] C) a(5) D) a [10-10]
21.设有char str[10],下列语句正确的是( D )。
A) scanf("%s",&str); B) printf("%c",str); C) printf("%s",str[0]); D) printf("%s",str); 22.若有如下定义: int a[3][3]={ {1,2,9},{3,4,8},{5,6,7} }, i , s=0 ; 则下列语句的输出结果是( A )。
for ( i=0; i<3; i++) s+=a[ i ] [ i ]+a[ i ][ 3-i-1 ]; printf( “%d\n”,s );
A) 30 B) 18 C) 10 D) 12
23. 判断字符串s1是否大于字符串s2,应当使用( D )。
A) if (s1>s2) B) if (strcmp(s1,s2))
C) if (strcmp(s2,s1)>0) D) if (strcmp(s1,s2)>0)
24.若用数组名作为函数调用的实参,传递给形参的是( A )。
A) 数组的首地址B) 数组第一个元素的值
C) 数组中全部元素的值D) 数组元素的个数
25.有如下函数调用语句
func ( rec1,rec2+rec3,( rec4,rec5 )); 该函数调用语句中,含有的实参个数是( A )。
A) 3 B) 4 C) 5 D) 2
26.在一个源文件中定义的外部变量的作用域为( D )。
A) 本文件的全部范围B) 本程序的全部范围
C) 本函数的全部范围D) 从定义该变量的位置开始至本文件结束
27.以下函数值的类型是( A )。
fun ( float x )
{ float y;
y= 3*x-4;
return y; }