-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
学
号
:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
线
:
-
-
-
-
-
-
姓
名
-
-
-
-
-
-
-
学
生
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
封
-
:
-
-
-
-
年
级
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
密
-
-
专
业
:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
:
)
-
-
-
-
-
-
-
-
-
院
(
系
-
-
-
-
-
-
-
-
-
-
《
C
语言程序设计》
期末考试试卷(
B
卷)
课程名称
C
语言程序设计
课程编号
84810005
任课教师
题型
单选题
填空题
阅读题
编程题
总分
分值
30
26
24
20
100
得分
得分
评阅人
一、单选题:
(共
30
题,每题
1
分,共
30
分)
1
、
在计算机内一切信息的存取、传输和处理都是以
(
)
形式进行的。
A. ASCII
码
B.
二进制
C.
十进制
D.
十六进制
2
、下
面四个选项中,均是不合法的转义字符的选项是
(
)
。
A. '
''
'xf'
B. '1011'
''
'ab'
C. '011'
'f'
'}'
D. 'abc'
'101'
'xlf'
3
、下面程序段输出结果是(
)
。
short int i = 32769;
printf (
A. 32769
B. 32767
C. -32767
D.
输出不是确定的数
4
、
若有说明语句:
int a; float b;
,以下输入语句正确的是(
)
。
A. scanf (
B. scanf (
C. scanf (
D. scanf (
5
、
设有:
int a = 1, b = 2, c = 3, d = 4, m = 2, n = 2;
执行
(m=a>b)&&(n=c>d)
后
n
的值是
(
)
。
A. 1
B. 2
C. 3
D. 4
6
、
以下
for
循环的执行次数是(
)。
for (x = 0, y = 0; (y = 123) && (x < 4); x++);
A.
是无限循环
B.
循环次数不定
C. 4
次
D. 3
次
7
、若有说明:
int a[ ][3] = {1, 2, 3, 4, 5, 6, 7};
则
a
数组第一维的大小是(
)
。
A. 2
B. 3
C. 4
D.
无确定值
8
、以下程序的输出结果是(
)
void main ( )
{
char st[20] =
printf (%d
%d n
}
A. 9
9
B. 5
20
C. 13
20
D. 20
20
9
、以下正确的说法是(
)
。
A.
定义函数时,形参的类型说明可以放在函数体内。
B. return
后边的值不能为表达式。
C.
如果函数值的类型与返回值类型不一致,以函数值类型为准。
D.
如果形参与实参类型不一致,以实参类型为准。
10
、在
C
语言中,函数的隐含存储类别是(
)
。
A. auto
B. static
C. extern
D.
无存储类别
11
、已有如下数组定义和
f
函数调用语句,则在
f
函数的说明中,对形参数组
array
的正确定义方式为
(
)
。
int a[3][4];
f (a);
A. f (int array[ ][6])
B. f (int array[3][ ])
C. f (int array[ ][4])
D. f (int array[2][5])
12
、下面能正确进行字符串赋值操作的是(
)
。
A. char s[5] = {
B. char s[5] = {'A', 'B', 'C', 'D', 'E'};
C. char *s;s =
D. char *s;
scanf (
13
、变量的指针,其含义是指该变量的(
)
。
A.
值
B.
地址
C.
名
D.
一个标志
14
、若有定义:
int a[8];
则以下表达式中不能代表数组元素
a[1]
的地址的是(
)
。
A. &a[0] + 1
B. &a[1]
C. &a[0]++
D. a + 1
15
、设已有定义
: char *st =
下列程序段中正确的是(
)
。
A. char a[11], *p; strcpy (p = a + 1, &st[4]);
B. char a[11]; strcpy (++a, st);
C. char a[11]; strcpy (a, st);
D. char a[ ], *p; strcpy(p = a[1], st + 2);
16
、若有以下定义和语句,则对
s
数组元素的正确引用形式是(
)
。
int s[4][5], (*ps)[5];
ps = s;
A. ps+1
B. *(ps+3)
C. ps[0][2]
D. *(ps+1)+3
第
1
页
(
共
6
页
)
17
、以下程序运行的结果是(
)
。
#define ADD(x) x+x
void main ( )
{
int m = 1, n = 2, k = 3;
int sum = ADD(m+n) * k;
printf (
}
A. sum = 9
B. sum = 10
C. sum = 12
D. sum = 18
18
、根据下面的定义,能打印出字母
M
的语句是(
)
。
struct person
{
char name[9];
int age;
};
struct person class[10] = {
A. printf (
B. printf (
C. printf(
D. printf (
19
、以下程序的输出是(
)
。
struct st { int x; int *y;} *p;
int dt[4] = {10, 20, 30, 40 };
struct st aa[4]={ 50, &dt[0], 60, &dt[0], 60, &dt[0], 60, &dt[0]};
void main ( )
{
p = aa;
printf (
}
A. 10
B. 11
C. 51
D. 60
20
、以下程序的输出是(
)
。
union myun
{
struct { int x, y, z;} u;
int k;
} a;
void main ( )
{
a.u.x = 4;
a.u.y = 5;
a.u.z = 6;
a.k = 0;
printf (%dn
}
A. 4
B. 5
C. 6
D. 0
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
密
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
封
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
线
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
21
、已知:
char s[6], *ps=s
;则正确的赋值语句是
(21)
。
A)
s=
;
B)
*s=
;
C)
ps=
;
D)
*ps=
;
22
、
已知:
int a[4][3]={1,2,3,4,5,6,7,8,9,10,11,12}
;
int ( *ptr)[3]=a,*p=a[0]
;
则以下能够正确表示数组元素
a[1][2 ]
的表达式是
(22)
。
A)
*(*(a+1)+2)
B)
*(*(p+5))
C)
(*ptr+1)+2
D)
*((ptr+1)[2])
23
、已知:
int a[ ]={1,3,5,7}, y *p= a
;为使变量
y
的值为
3
,下列语句正确的是
(23)
。
A)
y = ++*p++
;
B)
y = ++(*p++)
;
C)
y = (++*p)++
;
D)
y = (*++p)++
;
24
、函数的功能是交换变量
x< br>和
y
中的值,且通过正确调用返回交换的结果。能正确执行此功能的函数是
(24)
。
A)
void funa (int *x, int *y)
{
int *p
;
p=x
;
*x=*y
;
*y=*p
;
}
B)
void funb (int x, int y)
{
int t
;
t=x
;
x=y
;
y=t
;
}
C)
void func (int *x, int *y)
{
*x=*y
;
*y=*x
;
}
D)
void func (int *x, int *y)
{
*x=*x+*y
;
*y=*x-*y
;
* x=*x-*y
;
}
第
2
页
(
共
6
页
)
25
、已知:
struct st {
int n
;
struct st *next
;
}
;
static struct st
a[3] = { 1, &a[1], 3, &a[2], 5, &a[0] }, *p
;
如果下述语句的显示是
2
,则对
p
的赋值是
(25)
。
printf(
;
A)
p=&a[0]
;
B)
p=&a[1]
;
C)
p=&a[2]
;
D)
p=&a[3]
;
26
、已知:
struct {
int
i
;
char
c
;
float
a
;
} test
;
则
sizeof(test)
的值是
(26)
。
A)
4
B)
5
C)
6
D)
7
27
、函数
rewind
的作用是(
)
。
A.
使位置指针重新返回文件的开头
B.
将位置指针指向文件中所要求的特定位置
C.
使位置指针指向文件的末尾
D.
使位置指针自动移至下一个字符位置
28
、
fseek
函数的正确调用形式是(
)
。
A. fseek(
文件类型指针
,
起始点
,
位移量
)
B. fseek(fp,
位移量
,
起始点
)
C. fseek(
位移量
,
起始点
,fp)
D. fseek(
起始点
,
位移量
,
文件类型指针
)
29
、设有以下结构体类型:
struct st { char name[8];
int num;
float s[4]; } student[50];
并且结构体数组
student
中的元素都已有值,若要将这些元素写到硬盘文件
fp
中,
以下不正确的形式
是(
)
。
A. fwrite (student, sizeof(struct st), 50, fp);
B. fwrite (student, 50*sizeof(struct st), 1, fp);
C. fwirte (student, 25*sizeof(struct st), 25, fp);
D. for (i = 0; i < 50; i++)
fwrite (student+i, sizeof(struct st), 1, fp);
30
、
若要打 开
A
盘上
user
子目录下名为
的文本文件进行读、
写操作,
下面符合此要求的函数调用是
(
)
。
A. fopen (
B. fopen (
C. fopen (
D. fopen (
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
密
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
封
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
线
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
得分
评阅人
二、填空题:
(共
6
题,共
13
空,每空
2
分)
31
、
下
面的程序的功能是求一维数组中的最小元素。
findmin(int *s,int t,int *k)
{
int p
;
for ( p=0, *k=p
;
p
p++ )
if (s[p]
(1)
;
}
main()
{
int a[10], i, *k=&i
;
for ( i=0
;
i<10
;
i++ )
scanf(
;
findmin( a, 10,
(2)
)
;
printf(
;
}
32
、
下
面程序的功能是输出
100
以内的个位 数为
6
、且能被
3
整除的所有数。
main()
{
int i,j
;
for ( i=0
;
(3)
;
i++ )
{
j = i*10+6
;
if
(
(4)
)
countinue
;
printf(
;
}
}
第
3
页
(
共
6
页
)
33
、
下
面程序的功能是删除字符串
s
中的空格。
#include
main()
{
char *s=
;
int i,j
;
for ( i=j=0
;
s[i]!='0'
;
i++ )
if ( s[i]!= ' ' )
(5)
;
else
(6)
;
s[j]= '0'
;
printf(
;
}
34
、下面程序的功能是从终端上输入5个人的年龄、性别和姓名,然后输出。
#include
struct man
{
char name[20]
;
unsigned age
;
char sex[7]
;
}
;
main ( )
{
struct man person[5]
;
data_in( person, 5 )
;
data_out( person, 5 )
;
}
data_in(struct man *p, int n )
{
struct man *q =
(7)
;
for(
;
p
;
p++ )
{
printf(
;
scanf(
;
(8)
;
}
}
data_out( struct man *p, int n )
{
struct man *q =
(9)
;
for(
;
p;
p++ )
printf(
;
%u
;
%sn
;
}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
密
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
封
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
线
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
本文更新与2021-01-24 14:20,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/561074.html
-
上一篇:上海牛津二年级英语上册《期末测试卷(一)》
下一篇:外研社九年级英语下册期末测试题