c语言1.docx
《c语言1.docx》由会员分享,可在线阅读,更多相关《c语言1.docx(85页珍藏版)》请在冰豆网上搜索。
c语言1
1.structst{intage;intnum;}stul,*p;p=&stul;以下对结构体变量stul中成员age的非法引用是()
stul.age
age
p-->age
(*p).age
本题分值:
4.0
用户未作答
标准答案:
age
2.以下程序的运行结果是()main(){intm=5;if(m++>5)printf('%d',--m);elseprintf('%d',m++);}
4
5
6
7
本题分值:
4.0
用户未作答
标准答案:
6
3.程序段的基本结构中,不包含()
函数结构
循环结构
顺序结构
分支结构
本题分值:
4.0
用户未作答
标准答案:
函数结构
4.下面程序的输出是()main(){enumteam{my,your=4,his,her=his+10};printf('%d%d%d%d',my,your,his,her);}
0123
04010
04515
l4515
本题分值:
4.0
用户未作答
标准答案:
04515
5.若有定义typedefcharSTRING[255];STRINGs;则s是
字符指针数组变量
字符指针变量
字符变量
字符数组变量
本题分值:
4.0
用户未作答
标准答案:
字符数组变量
6.有以下程序:
#includemain(){intx,y;printf('Enteraninteger(x):
');scanf('%d',&x);if(x++<0)y=-1;elseif(x==0)y=0;elsey=1;printf('%d',y);}现从键盘上输入-1,则程序的输出是()
0
-1
1
不确定的值
本题分值:
4.0
用户未作答
标准答案:
-1
7.若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”。
则以下不能满足要求的表达式是()
A%2==1
!
(A%2==0)
!
(A%2)
A%2
本题分值:
4.0
用户未作答
标准答案:
!
(A%2)
8.以下选项中可作为C语言合法整数的是
10110B
0386
0Xffa
x2a2
本题分值:
4.0
用户未作答
标准答案:
0Xffa
9.对说明语句inta[10]={6,7,8,9,10};的正确理解是()
将5个初值依次a[1]至a[5]
将5个初值依次a[0]至a[4]
将5个初值依次a[5]至a[9]
将5个初值依次a[6]至a[10]
本题分值:
4.0
用户未作答
标准答案:
将5个初值依次a[0]至a[4]
10.下列字符串不属于标识符的是()
total
lutos_1_2_3
_night
$123
本题分值:
4.0
用户未作答
标准答案:
$123
11.判断char型变量c1是否小写字母的正确表达式为
'a'<=c1<='z'
(c1>='a')&&(c1<='z')
(c1>=a)&&(c1<=z)
('a'<=c1)||('z'>=c1)
本题分值:
4.0
用户未作答
标准答案:
(c1>='a')&&(c1<='z')
12.有一个函数原型如下所示:
abc(floatx,doubley);则该函数的返回类型为
void
double
int
float
本题分值:
4.0
用户未作答
标准答案:
int
13.执行语句for(i=1;i++<4;);后变量的值为()
3
4
5
不定
本题分值:
4.0
用户未作答
标准答案:
5
14.以下叙述正确的是()
在C程序中,main函数必须位于程序的最前面
在C程序的每一行只能写一条语句
C语言本身没有输入输出语句
在对一个C程序进行编译的过程中,可发现注释中的拼写错误
本题分值:
4.0
用户未作答
标准答案:
C语言本身没有输入输出语句
15.根据下面程序及数据的输入和输出形式,main(){charch1,ch2,ch3;输入语句printf('%c%c%c',ch1,ch2,ch3);},输入形式:
AuBuC输出形式:
AuB,程序中输入语句的正确形式应该为()(u代表空格)
scanf('%c%c%c',&ch1,&ch2,&ch3)
scanf('%c,%c,%c',&ch1,&ch2,&ch3)
scanf('%c%c%c',&ch1,&ch2,&ch3)
scanf('%c%c',&ch1,&ch2,&ch3)
本题分值:
4.0
用户未作答
标准答案:
scanf('%c%c%c',&ch1,&ch2,&ch3)
16.设有以下程序片段,inti=010,j=10,k=0xl0;printf('%d,%d,%d',k,j,i);请问执行后的输出结果是()
16,10,8
81016
10,10,10
8,10,16
本题分值:
4.0
用户未作答
标准答案:
16,10,8
17.以下描述中正确的是()
由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句
do-while循环由do开始,用while结束,在while(表达式)后面不能写分号
在do-while循环体中,一定要有能使while后面表达式的值变为零('假')的操作
do-while循环中,根据情况可以省略while。
本题分值:
4.0
用户未作答
标准答案:
在do-while循环体中,一定要有能使while后面表达式的值变为零('假')的操作
18.若x、i、j和k都是int型变量,则计算下面表达式后,x的值为()x=(i=4,j=16,k=32)
4
16
32
52
本题分值:
4.0
用户未作答
标准答案:
32
19.根据题目中已给出的数据输入和输出形式,main(){intx;floaty;printf('enterx,y:
');输入语句;输出语句}输入形式:
enterx,y:
23.4输出形式:
x+y=5.40,程序中输入输出语句的正确内容是()
scanf('%d,%f',&x,&y),printf('\nx+y=%4.2f',x+y)
scanf('%d%f',&x,&y),printf('\nx+y=%4.2f',x+y)
scanf('%d%f',&x,&y),printf('\nx+y=%6.1f',x+y)
scanf('%d%3.1f',&x,&y),printf('\nx+y=%4.2f',x+y)
本题分值:
4.0
用户未作答
标准答案:
scanf('%d%f',&x,&y),printf('\nx+y=%4.2f',x+y)
20.下面对typedef不正确的叙述是
用typedef可以定义各种类型名,但不能用来定义变量
用typedef可以增加新的基本数据类型
用typedef只是将已存在的类型用一个新的标识符表示
使用typedef有利于程序的通用和移植
本题分值:
4.0
用户未作答
标准答案:
用typedef可以增加新的基本数据类型
21.在“文件包含”预处理语句的使用形式中,当#include后面的文件名用<>括起时,寻找被包含文件的方式是()
仅仅搜索当前目录
仅仅搜索源程序所在目录
直接按系统设定的标准方式搜索目录
先在源程序所在目录搜索,再按系统设定的标准方式搜索
本题分值:
4.0
用户未作答
标准答案:
直接按系统设定的标准方式搜索目录
二判断题
1.C语言中的main函数必须位于程序的最前面
错
对
本题分值:
4.0
用户未作答
标准答案:
错
2.下列语句new→next=head;head=new;可以完成建立2结点的单向链表的功能
错
对
本题分值:
4.0
用户未作答
标准答案:
对
3.用typedef可以创建新的基本类型
错
对
本题分值:
4.0
用户未作答
标准答案:
错
4.C语言中,函数可以嵌套定义
错
对
本题分值:
4.0
用户未作答
标准答案:
错
单选题
1.设E为表达式,以下与do…while(E);不等价的语句是
do…while(!
E==0)
do…while(E>0||E<0)
do…while(E==0)
do…while(E!
=0)
本题分值:
4.0
用户未作答
标准答案:
do…while(E==0)
2.设有以下程序片段:
chars[]='Program!
';char*p;p=s;则执行完上面的程序段后,*(p+8)的值为()
!
'
'\0'
'm'
不定值
本题分值:
4.0
用户未作答
标准答案:
'\0'
3.根据下面的定义,能打印出字母“M”的语句是()structperson{charname[9];intage;};structpersonclass[10]={'John',17,'Paul',19,'Mary',18,'adam',16};
printf('%c\n',class[3].name)
printf('%c\n',class[3].name[l])
printf('%c\n',class[2].name[l])
printf('%c\n',class[2].name[0])
本题分值:
4.0
用户未作答
标准答案:
printf('%c\n',class[2].name[0])
4.设有程序段intk=10;while(k=0)k=k-1;则下面描述中正确的是()
while循环执行10次
循环是无限循环
循环体语句一次也不执行
循环体语句执行一次
本题分值:
4.0
用户未作答
标准答案:
循环体语句一次也不执行
5.根据下面程序及数据的输入和输出形式,main(){charch1,ch2,ch3;输入语句printf('%c%c%c',ch1,ch2,ch3);},输入形式:
AuBuC输出形式:
AuB,程序中输入语句的正确形式应该为()(u代表空格)
scanf('%c%c%c',&ch1,&ch2,&ch3)
scanf('%c,%c,%c',&ch1,&ch2,&ch3)
scanf('%c%c%c',&ch1,&ch2,&ch3)
scanf('%c%c',&ch1,&ch2,&ch3)
本题分值:
4.0
用户未作答
标准答案:
scanf('%c%c%c',&ch1,&ch2,&ch3)
6.不属于面向机器语言的是()
符号语言
二进制语言
汇编语言
C语言
本题分值:
4.0
用户未作答
标准答案:
C语言
7.以下程序main(){intx=10,y=10;printf('%d%d',x--,--y);}的输出结果是()
1010
99
910
109
本题分值:
4.0
用户未作答
标准答案:
109
8.若有说明:
inta[10];则对数组元素的正确引用是()
a[10]
a[3,5]
a(5)
a[10-10]
本题分值:
4.0
用户未作答
标准答案:
a[10-10]
9.在“文件包含”预处理语句的使用形式中,当#include后面的文件名用<>括起时,寻找被包含文件的方式是()
仅仅搜索当前目录
仅仅搜索源程序所在目录
直接按系统设定的标准方式搜索目录
先在源程序所在目录搜索,再按系统设定的标准方式搜索
本题分值:
4.0
用户未作答
标准答案:
直接按系统设定的标准方式搜索目录
10.以下程序的运行结果是()voidsub(intx,inty,int*z){*z=y-x;}main(){inta,b,c;sub(10,5,&a);sub(7,a,&b);sub(a,b,&c);printf('%4d,%4d,%4d',a,b,c);}
5,2,3
-5,-12,-7
-5,-12,-17
5,-2,-7
本题分值:
4.0
用户未作答
标准答案:
5,2,3
11.执行语句for(i=1;i++<4;);后变量的值为()
3
4
5
不定
本题分值:
4.0
用户未作答
标准答案:
5
12.下面对typedef不正确的叙述是
用typedef可以定义各种类型名,但不能用来定义变量
用typedef可以增加新的基本数据类型
用typedef只是将已存在的类型用一个新的标识符表示
使用typedef有利于程序的通用和移植
本题分值:
4.0
用户未作答
标准答案:
用typedef可以增加新的基本数据类型
13.若有以下定义:
inta[]={1,2,3,4,5,6,7,8,9},*p=a;则值为5的表达式是()
p+=4,*(p++)
p+=4,*++p
p+=5,*p++
p+=4,++*p
本题分值:
4.0
用户未作答
标准答案:
p+=4,*(p++)
14.以下有关宏替换的叙述不正确的是()
宏替换不占用运行时间
宏名无类型
宏替换只是字符替换
宏名必须用大写字母表示
本题分值:
4.0
用户未作答
标准答案:
宏名必须用大写字母表示
15.要打开一个已存在的非空文件"file"用于修改,选择正确的语句
fp=fopen('file','r')
fp=fopen('file','w')
fp=fopen('file','r+')
fp=fopen('file','w+')
本题分值:
4.0
用户未作答
标准答案:
fp=fopen('file','r+')
16.表达式a
&,<,||
&,||,<
<,||,&
<,&,||
本题分值:
4.0
用户未作答
标准答案:
<,&,||
17.若有以下定义,inta,b;floatx;则正确的赋值语句是()
a=1,b=2
b++
a=b=5
b=int(x)
本题分值:
4.0
用户未作答
标准答案:
b++
18.若fp已正确定义并指向某个文件,当未遇到该文件结束标志时,函数feof(fp)值
0
1
-1
一个非0值的
本题分值:
4.0
用户未作答
标准答案:
一个非0值的
19.以下函数的功能对应于intfun(char*s,char*t){while(*s)&&(*t)&&(*t==*s)}{t++;s++;}return(*s-*t);}
strlen(s)+strlen(t)
strcmp(s,t)
strcpy(s,t)
strcat(s,t)
本题分值:
4.0
用户未作答
标准答案:
strcmp(s,t)
20.写出下面程序的输出结果()main(){inti,j;i=20;j=(++i)+i;printf('%d',j);i=13;printf('%d%d),i++,i);}
4214,13
4114,14
421313
421314
本题分值:
4.0
用户未作答
标准答案:
421313
21.程序的三种基本结构是()
顺序结构,循环结构,递归结构
顺序结构,循环结构,选择结构
选择结构,循环结构,递归结构
顺序结构,选择结构,递归结构
本题分值:
4.0
用户未作答
标准答案:
顺序结构,循环结构,选择结构
二判断题
1.使用continue和break语句,都可以使得C程序中断执行
错
对
本题分值:
4.0
用户未作答
标准答案:
错
2.用typedef可以创建新的基本类型
错
对
本题分值:
4.0
用户未作答
标准答案:
错
3.对for(表达式1;;表达式3)可理解为for(表达式1;1;表达式3)
错
对
本题分值:
4.0
用户未作答
标准答案:
对
4.C语言中,函数可以嵌套定义
错
对
本题分值:
4.0
用户未作答
标准答案:
错
一单选题
1.若有以下定义,inta,b;floatx;则正确的赋值语句是()
a=1,b=2
b++
a=b=5
b=int(x)
本题分值:
4.0
用户未作答
标准答案:
b++
2.若要求表示a不等于0的关系,错误的表达式是()
a<>0
a!
=0
a
a<0||a>0
本题分值:
4.0
用户未作答
标准答案:
a<>0
3.函数rewind的作用是()
使位置指针指向文件的末尾
将位置指针指向文件中所要求的特定位置
使位置指针重新返回文件的开头
使位置指针自动移到下一个字符位置
本题分值:
4.0
用户未作答
标准答案:
使位置指针重新返回文件的开头
4.C语言中合法的字符常量是
’\\’
”H”
’He’
p
本题分值:
4.0
用户未作答
标准答案:
’\\’
5.C语言规定,函数返回值的类型是由()所决定。
return语句中的表达式类型
调用该函数时的主调函数类型
调用该函数是系统临时指定
在定义该函数时所指定的函数类型
本题分值:
4.0
用户未作答
标准答案:
在定义该函数时所指定的函数类型
6.以下程序main(){inti=010,j=10,k=0x10;printf('%d,%d,%d',i,j,k);的输出结果是()
8,10,16
8,10,10
10,10,10
10,10,16
本题分值:
4.0
用户未作答
标准答案:
8,10,16
7.以下程序的运行结果是()voidsub(intx,inty,int*z){*z=y-x;}main(){inta,b,c;sub(10,5,&a);sub(7,a,&b);sub(a,b,&c);printf('%4d,%4d,%4d',a,b,c);}
5,2,3
-5,-12,-7
-5,-12,-17
5,-2,-7
本题分值:
4.0
用户未作答
标准答案:
5,2,3
8.变量的指针,其含义是指变量的()
值
地址
名
一个标志
本题分值:
4.0
用户未作答
标准答案:
地址
9.以下程序段x=-1;dox=x*x;while(!
x);()
是死循环
循环执行两次
循环执行一次
有语法错误
本题分值:
4.0
用户未作答
标准答案:
循环执行一次
10.下面能正确进行字符串赋值操作的是()
chars[5]={'ABCDE'}
chars[5]={'A','B','C','D','E'}
char*s
s='ABCDE'
char*s
scanf('%s',s)
本题分值:
4.0
用户未作答
标准答案:
char*s
11.设a,b和c都是int型变量,且a=3,b=4,c=5,则下面的表达式中,值为0的表达式是()
a'&&'b'
a<=b
a||b+c&&b-c
!
((a
c||1)
本题分值:
4.0
用户未作答
标准答案:
!
((a
c||1)
12.C语言允许函数值类型缺省定义,此时该函数值隐含的类型是()
float型
int型
long型
double型
本题分值:
4.0
用户未作答
标准答案:
int型
13.在“文件包含”预处理语句的使用形式中,当#include后面的文件名用<>括起时,寻找被包含文件的方式是()
仅仅搜索当前目录
仅仅搜索源程序所在目录
直接按系统设定的标准方式搜索目录
先在源程序所在目录搜索,再按系统设定的标准方式搜索
本题分值:
4.0
用户未作答
标准答案:
直接按系统设定的标准方式搜索目录
14.设有以下结构体定义:
structemproyer{charname[8];intage;charsex;}staff;则下面的叙述不正确的是()
struct是结构体类型的关键字
structemproyer是用户定义的结构体类型
staff是用户定义的结构体类型名
nameage和sex都是结构体成员名
本题分值:
4.0
用户未作答
标准答案:
staff是用户定义的结构体类型名
15.以下描述中正确的是()
由于do-while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句
do-while循环由do开始,用while结束,在while(表达式)后面不能写分号
在do-while循环体中,一定要有能使while后面表达式的值变为零('假')的操作
do-while循环中,根据情况可以省略while。
本题分值:
4.0
用户未作答
标准答案:
在do-while循环体中,一定要有能使while后面表达式的值变为零('假')的操作
16.以下程序的运行结果是()main(){intm=5;if(m++>5)printf('%d',--m);elseprintf('%d',m++);}
4
5
6
7
本题分值:
4.0
用户未作答
标准答案:
6
17.根据下面的定义,能打印出字母“M”的语句是()structperson{charname[9];intage;};