东北大学秦皇岛c语言考试题7Word格式.docx
- 文档编号:19850579
- 上传时间:2023-01-10
- 格式:DOCX
- 页数:24
- 大小:23.34KB
东北大学秦皇岛c语言考试题7Word格式.docx
《东北大学秦皇岛c语言考试题7Word格式.docx》由会员分享,可在线阅读,更多相关《东北大学秦皇岛c语言考试题7Word格式.docx(24页珍藏版)》请在冰豆网上搜索。
D)(c>
)&
&
(c<
4.以下所列的各函数首部中,正确的是
A)voidplay(var:
Integer,varb:
Integer)
B)voidplay(inta,b)
C)voidplay(inta,intb)
D)Subplay(aasinteger,basinteger)
5.下列程序的运行结果是
voidfun(int*a,int*b)
{int*k;
k=a;
a=b;
b=k;
{inta=3,b=6,*x=&
a,*y=&
b;
fun(x,y);
%d%d"
a,b);
A)63
B)36
C)编译出错
D)00
B×
6.以下只有在使用时才为该类型变量分配内存的存储类说明是
A)auto和static
B)auto和register
C)register和static
D)extern和register
7.以下程序的输出结果是
{inta[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;
3;
i++)
for(j=0;
j<
=i;
j++)s+=a[i][j];
%dn"
s);
A)18
B)19
C)20
D)21
A×
8.以下合法的赋值语句是
A)x=y=100
B)d--;
C)x+y;
D)c=int(a+b);
9.设正x、y均为整型变量,且x=10y=3,则以下语句的输出结果是
printf("
%d,%d\n"
x--,--y);
A)10,3
B)9,3
C)9,2
D)10,2
10.假定w、x、y、z、m均为int型变量,有如下程序段:
w=1;
x=2;
y=3;
z=4;
m=(w<
x)?
w;
x;
m=(m<
y)?
m;
y;
z)?
z;
则该程序运行后,m的值是it
A)4
B)3
C)2
D)2
11.设有以下函数:
f(inta)
{intb=0;
staticintc=3;
b++;
c++;
return(a+b+c);
如果在下面的程序中调用该函数,则输出结果是
{inta=2,i;
for(i=0;
i++)printf("
f(a));
A)7
8
9
B)7
11
C)7
10
13
D)7
7
12.假定int类型变量占用两个字节,其有定义:
intx[10]={0,2,4};
,则数组x在内存中所占字节数是
A)3
B)6
C)10
D)20
13.以下程序的输出结果是
{charst[20]="
hello\0\t\\\"
;
printf(%d%d\n"
strlen(st),sizeof(st));
A)99
B)520
C)1320
D)2020
14.以下程序段的输出结果是
inta=1234;
%2d\n"
a);
A)12
B)34
C)1234
D)提示出错、无结果
15.以下程序的输出结果是
{charx=040;
x<
1);
A)100
B)80
C)64
D)32
16.以下程序的输出结果是
{intb[3][3]={0,1,2,0,1,2,0,1,2},i,j,t=1;
for(i=0;
i++)
for(j=i;
j++)t=t+b[i][b[j][j]];
t);
B)4
C)1
D)9
17.若以下定义:
structlink
{intdata;
strucklink*next;
}a,b,c,*p,*q;
且变量a和b之间已有如下图所示的链表结构:
ab
datanextdatanext
┌──┬──┐┌──┬──┐
│5│┼──→│9│\0│
└──┴──┘└──┴──┘
↑p
c
datanext
┌──┬──┐
│7││
└──┴──┘
↑q
指针p指向变量a,q指向变量c。
则能够把c插入到a和b之间并形成新的链表的语句组是:
A)a.next=c;
c.next=b;
B)p.next=q;
q.next=p.next;
C)p->
next=&
c;
q->
next=p->
next;
D)(*p).next=q;
(*q).next=&
18.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用八进制表示的字符常量'
\101'
是
A)字符A
B)字符a
C)字符e
D)非法的常量
19.以下非法的赋值语句是
A)n=(i=2,++i);
B)j++;
C)++(i+1);
D)x=j>
0;
20.设有定义:
longx=-123456L;
,则以下能够正确输出变量x值的语句是
A)printf("
x=%d\n"
x);
B)printf("
x=%Ld\n"
C)printf("
x=%8dL\n"
D)printf("
x=%LD\n"
21.有以下程序段
intn=0,p;
do{scanf("
%d"
&
p);
n++;
}while(p!
=12345&
n<
3);
此处do-while循环的结束条件是
A)P的值不等于12345并且n的值小于3
B)P的值等于12345并且n的值大于等于3
C)P的值不等于12345或者n的值小于3
D)P的值等于12345或者n的值大于等于3
22.以下程序中函数sort的功能是对a所指数组中的数据进行由大到小的排序
voidsort(inta[],intn)
{inti,j,t;
N-1;
I++
for(j=i+1,j<
N;
J++)
if(a[i]}
{intaa[10]={1,2,3,4,5,6,7,8,9,10},i;
sort(&
aa[3],5);
for(i=o;
10;
i++)print("
%d,"
aa[i]);
printf('
\n"
);
程序运行后的输出结果是
A)1,2,3,4,5,6,7,8,9,10B)10,9,8,7,6,5,4,3,2,1,
C)1,2,3,8,7.6.5.4.9,10D)1,2,10,9,8,7,6,5,4,3
23.以下叙述中错误的是
A)二进制文件打开后可以先读文件的末尾,而顺序文件不可以
B)在程序结束时,应当用fclose函数关闭已打开的文件
C)在利用fread函数从二进制文件中读数据时,可以用数组名给数组中所有元素读入数据
D)不可以用FILE定义指向二进制文件的文件指针
24.在一个C程序中( )。
A)main函数必须出现在所有函数之前
B)main函数可以在任何地方出现
C)main函数必须出现在所有函数之后
D)main函数必须出现在固定位置
25.下列关于C语言用户标识符的叙述中正确的是
A)用户标识符中可以出现在下划线和中划线(减号)
B)用户标识符中不可以出现中划线,但可以出现下划线
C)用户标识符中可以出现下划线,但不可以放在用户标识符的开头
D)用户标识符中可以出现在下划线和数字,它们都可以放在用户标识符的开头
26.有以下程序
main()
{intx[8]={8,7,6,5,0,0},*s;
s=x+3
printf("
s[2]);
}
执行后输出结果是( )。
A)随机值
B)0
C)5
D)6
27.有以下程序
{ints=0,a=1,n;
scanf("
n);
do
{s+=1;
a=a-2;
}
while(a!
=n);
printf("
若要使程序的输出值为2,则应该从键盘给n输入的值是( )。
A)-1
B)-3
C)-5
D)0
28.以下程序中函数scmp的功能是返回形参指针s1和s2所指字符串中较小字符串的首地址
#include
char*scmp(char*s1,char*s2)
{if(strcmp(s1,s2)<
0)
return(s1);
elsereturn(s2);
main()
{inti;
charstring[20],str[3][20];
i++)gets(str[i]);
strcpy(string,scmp(str[0],str[1]));
/*库函数strcpy对字符串进行复制*/
strcpy(string,scmp(string,str[2]));
%s\n"
string);
若运行时依次输入:
abcd、abba和abc三个字符串,则输出结果为( )。
A)abcd
B)abba
C)abc
D)abca
29.有以下程序
{
inta[3][3],*p,i;
p=&
a[0][0];
9;
i++)p[i]=i+1;
%d\n"
a[1][2]);
程序运行后的输出结果是( )。
A)3
B)6
C)9
D)2
30.以下叙述中正确的是( )。
A)C语言的源程序不必通过编译就可以直接运行
B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令
C)C源程序经编译形成的二进制代码可以直接运行
D)C语言中的函数不可以单独进行编译
31.以下符合C语言语法的实型常量是( )。
A)1.2E0.5 B)3.14.159E C).5E-3 D)E15
32.有以下程序
main()
intx=0,y=5,z=3;
while(z-->
0&
++x<
5)y=y-1;
%d,%d,%d\n"
x,y,z);
程序执行后的输出结果是( )。
A)3,2,0 B)3,2,-1 C)4,3,-1 D)5,-2,-5
33.设有定义:
intn=0,*p=&
n,**q=&
p;
则以下选项中,正确的赋值语句是( )。
A)p=1;
B)*q=2;
C)q=p;
D)*p=5;
34.有以下程序
char*p[10]={"
abc"
"
aabdfg"
dcdbe"
abbd"
cd"
};
strlen(p[4]));
A)2 B)3 C)4 D)5
35.下面程序的功能是输出以下形式的金字塔图案是:
*
***
*****
*******
main()
{inti,j;
for(i=1;
=4;
{for(j=1;
=4-i;
j++)printf(““);
for(j=1;
=_______;
j++)printf(“*”);
printf(“\n”);
}
在下划线处应填入的是( )。
A)i B)2*i-1 C)2*i+1 D)i+2
36.有以下程序
voidf(inta[],inti,intj)
intt;
if(i<
j)
{
t=a[i];
a[i]=a[j];
a[j]=t;
f(a,i+1,j-1);
inti,aa[5]={1,2,3,4,5};
f(aa,0,4);
5;
A)5,4,3,2,1, B)5,2,3,4,1, C)1,2,3,5,4, D)1,2,3,4,5,
37.有以下定义语句
doublea,b;
intw;
longc;
若各变量已正确赋值,则下列选项中正确的表达式是( )。
A)a=a+b=b++
B)w%(int)a+b)
C)(c+w)%(int)a
D)w=a==b;
38.有以下程序
main()
{inti;
for(i=0;
switch(i)
{
case0:
i);
case2:
default:
}
程序运行后的输出结果是( )。
A)022111
B)021021
C)000122
D)012
39.若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|<
10的是( )。
A)abs(x-y)<
10
B)x-y>
-10&
x-y<
10
C)!
(x-y)<
-10||!
(y-x)>
D)(x-y)*(x-y)<
100
40.有以下程序
{chara,b,c,d;
scanf("
%c,%c,%d,%d"
a,&
b,&
c,&
d);
c,%c,%c,%c\n"
a,b,c,d);
}
若运行时从键盘上输入:
6,5,65,66<
回车>
。
则输出结果是( )。
A)6,5,A,B
B)6,5,65,66
C)6,5,6,5
D)6,5,6,6
41.s12和s2已正确定义并分别指向两个字符串。
若要求:
当s1所指串大于s2所指串时,执行语句S;
则以下选项中正确的是( )。
A)if(s1>
s2)S;
B)if(strcmp(s1,s2))S;
C)if(strcmp(s2,s1)>
0)S;
D)if(strcmp(s1,s2)>
42.有以下定义和语句
inta[3][2]={1,2,3,4,5,6,},*p[3];
p[0]=a[1];
则*p[0]+1)所代表的数组元素是( )。
A)a[0][1]
B)a[1][0]
C)a[1][1]
D)a[1][2]
43.有如下程序
#include
{FILE*fp1;
fp1=fopen("
f1.txt"
w"
fprintf(fp1,"
fclose(fp1);
若文本文件f1.txt中原有内容为:
good,则运行以上程序后文件f1.txt中的内容为( )。
A)goodabc
B)abcd
C)abc
D)abcgood
44.有以下程序
#include"
stdio.h"
string.h"
chara[7]="
abcd"
inti,j;
i=sizeof(a);
j=strlen(a);
%d%d"
i,j);
A)22
B)74
C)72
D)62
45.以下能正确定义一维数组的选项是( )。
A)inta[5]={0,1,2,3,4,5};
B)chara[]={0,1,2,3,4,5};
C)chara={'
A'
'
B'
C'
D)inta[5]="
0123"
46.有以下程序
#defineN20
fun(inta[],intn,intm)
{inti,j;
for(i=m;
i>
=n;
i--)
a[i+1]=a[i];
inti,a[N]={1,2,3,4,5,6,7,8,9,10};
fun(a,2,9);
a[i]);
A)10234
B)12344
C)12334
D)12234
47.以下语句或语句组中,能正确进行字符串赋值的是( )。
A)char*sp;
*sp="
right!
"
B)chars[10];
s="
C)chars[10];
*s="
D)char*sp="
48.设有如下说明
typedefstructST
longa;
intb;
charc[2];
}NEW;
则下面叙述中正确的是( )。
A)以上的说明形式非法
B)ST是一个结构体类型
C)NEW是一个结构体类型
D)NEW是一个结构体变量
49.有以下程序
chars[]="
159"
*p;
p=s;
%c"
*p++);
A)15
B)16
C)12
D)59
50.有以下程序
intnum[4][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12},{13,14,15,16}},i,j;
4;
for(j=1;
j++)printf("
'
for(j=j<
%4d"
num[i][j]);
"
若要按以下形式输出数组右上半三角
1234
678
1112
16
则在程序下划线处应填入的是( )。
A)i-1
B)i
C)i+1
D)4-i
51.当把以下四个表达式用作if语句的控制表达式时,有一个选项与其它三个选项含义不同,这个选项是( )。
A)k%2 B)k%2==1 C)(k%2)!
=0 D)!
k%2==1
52.设有定义:
intk=1,m=2;
floatf=7;
,则以下选项中错误的表达式是(
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 东北大学 秦皇岛 语言 考试题