常熟理工学院c语言题库本二Word文件下载.docx
- 文档编号:17274614
- 上传时间:2022-11-30
- 格式:DOCX
- 页数:27
- 大小:110.62KB
常熟理工学院c语言题库本二Word文件下载.docx
《常熟理工学院c语言题库本二Word文件下载.docx》由会员分享,可在线阅读,更多相关《常熟理工学院c语言题库本二Word文件下载.docx(27页珍藏版)》请在冰豆网上搜索。
b)
B)。
B.
的定义
e==1C.e!
=1D.e!
=0
"
voidfun(void){printf("
That'
sgreat!
"
);
},则调用”un函数的正确形式是
A.fun;
设有下列程序段:
staticinty=2;
voidf2()
{staticfloatd=3;
intx=1;
voidf1()
{intz=3;
…}
关于程序段中各变量的属性,
A.x是全局变量,函数
B.y是全局变量,函数
C.z是动态变量,函数
D.d是静态变量,函数
fun();
C.fun(void);
D.fun
(1);
…}
F面叙述中错误的是(
可以访问,函数f2不能访问和函数f2都可以访问
可访问,函数f2不可访问
和函数f2都可以访问
f1
已知某编译系统中singedint类型数据的长度是16位,该类型数据的最大值是(
A.32767B.32768C.127D.65535
设k=7,x=12,则下列表达式值为3的是(D)。
A.x%=(k%=5)B.x%=(k-k%5)
C.x%=k-k%5D.(x%=k)-(k%=5)
已有定义“inta[]={5,4,3,2,1},i=4;
,下列对a数组元素的引用中错误的是(
A.a[--i]B.a[a[0]]C.a[2*2]D.a[a[i]]
己有声明“inta=0,b=l,*p,*q;
下列正确的语句是(
A.a=p;
B.b=q;
C.p=&
a;
D.p=&
q;
C语言中,结构体类型变量在程序执行期间(
A.所有成员一直驻留在内存中
B.只有一个成员驻留在内存中
C•部分成员驻留在内存中
D•没有成员驻留在内存中
若有定义和声明typedefenum{green,red,yellow,blue,b1ack}color;
colorflower;
,贝U下列语句中正确的是(B)。
B.flower=red;
D.enum=red;
include的使用形式中,当之后的文件名用双引号括起来时,寻找C)。
A.green=red;
C.color=red;
在文件包含预处理语句#
被包含文件的方式是(_
A•仅搜索当前目录
B•仅搜索源程序所在的目录
C.先在源程序所在目录搜索,再按系统设定的标准方式搜索
D.直接按系统设定的标准方式搜索目录
已有定义“inta[2][3]={0};
*p=a[0];
,下面表达式中有语法错误的是(
A.a[0]=1B.p[0]=1C.*p=1D.a[0][0]=1
下面关于C语言数据文件的叙述中正确的是(
下面关于if语句和switch语句的叙述中错误的是(D)。
A.if语句和switch语句都可以实现算法的选择结构
B.if语句和switch语句都能实现多路(两路以上)选择
C.if语句可以嵌套使用
D.switch语句不能嵌套使用下面关于循环语句for、while、do_while的叙述中正确的是(A)。
A.三种循环语句都可能出现无穷循环
B.三种循环语句中都可以缺省循环终止条件表达式
C.三种循环语句的循环体都至少被无条件地执行一次
D.三种循环语句的循环体都必须放入一对花括号中
在C语言中while和do-while循环的主要区别是(C)。
A.while的循环控制条件比do-while的循环控制条件严格
B.do-while允许从外部转到循环体内
C.do-while的循环体至少无条件执行一次
D.do-while的循环体不能是复合语句
若已定义一个有返回值的函数,则下面关于调用该函数的叙述中错误的是
A.函数调用可以作为一个函数形参
B.函数调用可以出现在表达式中
C.函数调用可以作为一个函数实参
D.函数调用可以作为独立的语句存在设有下列程序段:
(A)。
F面叙述中错误的是
可访问,函数f2不可访问和函数f2都可以访问
(D)。
若有代数式也,则不正确的
bc
A.x/b/c*y*6
C.6*x*y/b*c
已有定义“inti;
floatf;
A.(intf)%iB.
C语言表达式是
6*x*y/b/c
x*y/c/b*6
,则下面正确的表达式是
int(f)%iC.int(f%i)
D.(int)f%i
已有定义“inta[2][3],下面选项中0正确地引用了数组a中的基本元素。
A.a[1>
2][!
1]B.a[2][0]
C.a[1]D.a
已有定义“intm=3,c,*a=&
m,*b=&
c;
A.a=b=0;
B.a=&
c,b=a;
定义一个结构体变量时,系统分配给它的内存是
A•各成员所需内存总和
B•成员中所占内存最多的容量
C.结构中第一个成员所占内存的容量
D•结构中最后一个成员所占内存的容量
已有枚举类型定义“enumletter{E,F,G=7,H,I};
值均等于10。
A.'
\xb'
-1B.F+lC.010+2
下面关于宏的叙述正确的是(A)。
A.宏定义没有数据类型限制
B.宏名必须用大写字母表示
C.宏定义必须位于源程序中所有语句之前
D.宏调用比函数调用耗费时间
设有声明语句“intb[3][3]={1,2,3,4,5,6,7,8,9};
,下面语句中不能输出数组元素b[1][2]的值6
的是(C)。
A.printf("
%d"
*(*(b+1)+2))B.printf("
*(&
b[2][0]-1));
C.printf("
*(b+1)[2]);
D.printf("
*(b[1]+2));
如果要用fopen()函数打开一个新的二进制文件,该文件要既能读也能写,则文件打开方式应为(A)。
A."
wb+"
B."
ab+"
C."
rb+"
下面选项中,不能用作C语言标识符的是(C)。
A.printB.INTC.&
a
下面合法的标识符是(A)。
则下列语句中错误的是(C)。
C.&
a=&
b;
D.*b=*a
下面表达式中除(D)外,其他表达式的机内
D.Oxf-3
D."
ab"
D.02
C.nb
D.if
A.FORB.-523
下面叙述中正确的是(B)o
A.C程序的基本组成单位是语句
B.简单C语句必须以分号结束
C.C程序中的每一行只能写一条语句
D.C程序必须在一行内写完用C语言编写的源程序中,(A)是必不可少的。
A.名为main的函数定义B.#include<
stdio.h>
C.变量定义D.注释部分
C源程序中的命令#include与#define是在(A)阶段被处理的。
A.预处理B.编译C.连接D.执行
已有定义“inta=3,b=4,c=5;
”,则下列表达式中值为0的是(D)。
A.a&
bB.a<
=bC.a||b&
cD.!
(!
c||1)
一元二次方程ax2+bx+c=0有两个相异实根的条件是a0且b2-4ac>
0,下面选项中正确的表
达式是(C)。
A.a!
=0,b*b-4*a*c>
C.a&
b*b-4*a*c>
下面关于语句的说法中正确的是
B.a!
=0||b*b-4*a*c>
0D.!
a&
0(B)。
A.while语句的循环体至少会被执行1次
B.do-while语句的循环体至少会被执行1次
C.for语句的循环体至少会被执行1次
D.在C语言中只能用do、do-while或for语句实现循环结构下面叙述中正确的是IC)。
A.break语句只能用于switch语句体中
B.continue语句的作用是:
使程序的执行流程跳出包含它的所有循环
C.break语句只能用在循环体内和switch语句体内
D.在循环体内使用break语句和continue语句的作用相同
对于C语言函数,下列叙述中正确的是(A)。
A.函数的定义不能嵌套,但函数调用可以嵌套
B.函数的定义可以嵌套,但函数调用不能嵌套C.函数的定义和调用都不能嵌套
D.函数的定义和调用都可以嵌套设有下列程序段:
F面叙述中错误的是(D)。
可以访问,函数f2不能访问和函数f2都可以访问可访问,函数f2不可访问和函数f2都可以访问
表达式“'
A'
+4*25.0-'
b'
”的正确结果是
A.67B.67.0C.不确定
存储字符串"
\\\'
abc\376"
需要的字节数是
A.11B.13
若有数组a和b的声明b的长度分别是(A^。
A.7,6B.6,7
(B)。
D.67L(D)。
D.7
C.6
staticchara[]="
abcdef'
b[]={'
a'
'
c'
d'
e'
f};
”则数组a和数组
C.6,6D.7,7
己有声明“inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;
”,则不能表示数组a中元素的是(D)。
A.*pB.a[6]C.*aD.p[a]
C语言中,下列属于构造类型的是
A.整型B.实型
若有枚举类型定义分别是(B)。
A.1,6
下面叙述错误的是
C.指针类型D.结构体类型
“enumvari{A1,A2,A3,A4=6,A5,A6};
”,则枚举常量A2和A6代表的值
B.1,8(C)。
C.2,6D.2,8
A.宏替换不占用程序运行时间
C.宏名必须用大写字母表示
已有定义“inta[2][3]={1,2,3,4,5,6};
”
是(C)。
A.*(a[0]+4)
C.*(*(a+3)+1)
D.
宏名无类型
宏替换只是字符替换则下列表达式中不能正确引用值为
5的数组元素的
B.*(a[1]+1)
D.*(*a+4)
若只允许对数据文件abc.txt做一次打开文件操作,修改其中的数据,则打开文件语句应为
“fp=fopen("
abc.txt"
(B));
”。
w+"
r+"
以下叙述中正确的是
程序设计的任务就是编写程序代码并上机调试
程序设计的任务就是确定所用数据结构
程序设计的任务就是确定所用算法
以上三种说法都不完整
C."
a+"
r"
A)
B)
C)
D)
以下选项中,能用作用户标识符的是
void
8_8
_0_
unsigred
阅读以下程序
#inelude
main()
{intcase;
floatprintF;
printf(
scanf(
}
该程序编译时产生错误,其出错原因是
“请输入2个数:
”);
“%d%f”,&
case,&
pjrintF);
“%dr%f,case,printF);
定义语句出错,定义语句出错,定义语句无错,定义语句无错,
case是关键字,不能用作用户自定义标识符printF不能用作用户自定义标识符scarf不能作为输入函数使用
printf不能输出case的值
表达式:
(int)((double)9/2)-(9)%2的值是
若有定义语句:
intx=10;
,则表达式x-=x+x的值为
-20
-10
10
有以下程序
#ineludemain()
{inta=1,b=0;
printf(“%d,”,b=a+b);
printf("
r%d,a=2*b);
程序运行后的输出结果是
0,0
1,0
3.2
1.2
设有定义:
inta=1,b=2,c=3;
,以下语句中执行效果与其它三个不同的是
if(a>
b)c=a,a=b,b=c;
b){c=a,a=b,b=c;
b)c=a;
a=b;
b=c;
b){c=a;
{intc=0,k;
for(k=1;
k<
3;
k++)
switch(k)
{default:
e+=k
case2:
e++;
break;
ease4:
e+=2;
n%d,e);
以下程序段中,与语句:
k=a>
b?
(b>
c?
1:
0):
0;
功能相同的是
A)if((a>
c))k=1;
elsek=0;
B)if((a>
b)||(b>
c)k=1;
C)if(a<
=b)k=0;
elseif(b<
=c)k=1;
D)if(a>
b)k=1;
elseif(b>
20)有以下程序
#include
{chars[]={“012xy”};
inti,n=0;
for(i=0;
s[i]!
=0;
i++)
if(s[i]>
='
a'
&
s[i]<
z'
)n++;
printf(“%d,n);
#include
{intn=2,k=0;
while(k++&
n++>
2);
pnntf(“n”,k,n);
有以下定义语句,编译时会出现编译错误的是
chara='
;
\n'
aa'
\x2d'
#includemain()
匸’4'
;
匸’4”;
“%cn%d,c1,c2);
{charc1,c2;
c1='
c2='
已知字母A的ASCII码为65,程序运行后的输出结果是
A)E,68
B)D,69
C)E,D
D)输出无定值有以下程序
voidfun(intp)
{intd=2;
p=d++;
printf(
{inta=1;
fun(a);
pnntf(
“%d'
p);
n”“%d;
32
12
21
22
以下函数findmax拟实现在数组中查找最大值并作为函数值返回,现预定功能
但程序中有错导致不能实
#defineMIN-2147483647intfindmax(intx[],intn){inti,max;
i<
N;
l++)<
p="
/>
{max=MIN;
if(maxreturnmax;
造成错误的原因是
定义语句inti,max;
中max未赋初值
赋值语句max=MIN;
中,不应给max赋MIN值语句if(max
放错了位置
{intm=1,n=2,*p=&
m,*q=&
n,*r;
r=p;
p=q;
q=r;
printf(“%d,%d,%d,%”,m,n,*p,*q);
1,2,1,2
1,2,2,1
2,1,2,1
2,1,1,2
inta[4][10],*p,*q[4];
且Owi<
4,则错误的赋值是
p=aq[i]=a[i]P=a[i]
P=&
a[2][1]
{charstr[][20]={“One*World”,“One*Dream!
”},*p=str[1];
printf(“%d,”,strlen(p));
printf(n”,p);
“%s
9,One*World
9,One*Dream
10,0ne*Dream
10,One*World
{inta[]={2,3,5,4},i;
for(i=0;
4;
i++)switch(i%2)
{case0:
switch(a[i]%2){caseO:
a[i]++;
case1:
a[i]--;
}break;
a[i[=0;
i++)printf(
a[in;
pri;
ntf(
结构化程序设计语言编写的程序由三种结构组成:
顺序结构、分支结构和一个完整的C程序可以有多个函数,其中有且只能有一个名为—
的函数。
数学式Vm所对应的C语言表达式为
(m,1/3.0)o
在调用函数fopen("
d:
\\b.dat"
"
)时,若是。
执行下面程序段中的语句“k=A*A+1;
d盘根目录下不存在文件b.dat,则函数的返回值
后k的值是
#defineB2
#defineAB+1
k=A*A+1;
已有定义“floatm;
doublen;
inta;
long
为
charc;
”,则表达式m+n*a/m+b/n+c值的类型
开头。
C语言有效的预处理命令总是以
已有定义“inta[10],*p=a+3;
”,则数组a的最后一个元素是p[已有定义“intn=12;
doublea;
”,则执行语句“a=n/=5;
”后,若要声明一个类型名STR,使得定义语句STRs等价于char*s,则声明语句是程序设计语言的发展经历了几个阶段:
机器语言、汇编语言和一个C程序总是从函数开始执行的。
已有定义“doublea=5,b=10;
”,则计算ab的库函数调用形式是已有定义“charch='
”,则表达式ch=ch-'
+'
的值为字符_表示“x>
y》”z的C语言表达式是x>
=yC语言有效的预处理命令总是以
常量'
的数据类型是O
已有定义“intb[10],*p=b,*q;
q=&
b[5];
”,则表达式q-p的值是
在文件中,以符号常量EOF作为文本文件(字符流文件)的结束标记,
是O
若要声明一个类型名STR,使得定义语句STRs等价于char*s,则声明语句是o
顺序结构、和循环结构。
C语言中除复合语句外的其它所有语句都以结束。
已有定义“doublea=10,b=5;
”,则计算ab的库函数调用形式是
C语言有效的预处理命令总是以开头。
已有定义“chara=1;
int
为O
用typedef定义一个长度为执行下面程序段中的语句“
a的值为
o
的编码。
O
EOF代表的值
b=2;
floatc=3;
doubled=4;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 常熟 理工学院 语言 题库
![提示](https://static.bdocx.com/images/bang_tan.gif)