C程序设计复习题Word文档格式.docx
- 文档编号:20844555
- 上传时间:2023-01-26
- 格式:DOCX
- 页数:28
- 大小:27.44KB
C程序设计复习题Word文档格式.docx
《C程序设计复习题Word文档格式.docx》由会员分享,可在线阅读,更多相关《C程序设计复习题Word文档格式.docx(28页珍藏版)》请在冰豆网上搜索。
,n++,++m);
A、12,35,35,14B、12,35,35,13C、12,34,35,14D、12,34,35,13
14、若整型变量a、b、c、d中的值依次为1、4、3、2,则条件表达式a<
b<
c<
d的值是(
)。
A、1B、2C、3D、0
15、C语言的运算符按运算对象的数目可分为_______。
A、单目运算符B、单目和双目运算符
C、单目、双目和三目运算符D、单目、双目、三目和四目运算符
16、C语言中的简单数据类型包括______。
A、整型、实型、逻辑型B、整型、实型、字符型
C、整型、字符型、逻辑型D、整型、实型、逻辑型、字符型
17、已知:
chara;
intb;
floatc;
doubled;
执行语句c=a+b+c+d;
后,变量c的数据类型是_______。
A、intB、charC、floatD、double
18、已知:
intj,i=1;
执行语句j=-i++;
后,j的值是_____。
A、1B、2C、-1D、-2
19、已知:
inti=5;
执行语句i+=++i;
i的值是______。
A、10B、11C、12D、A,B,C答案都不对
20、已知:
floatx=1,y;
则:
y=++x*++x的结果为_______。
A、y=9B、y=6C、y=1D、表达式是错误的
21、为了从键盘上输入字符串“HOWAREYOU?
”,可以直接使用的函数_____。
A、scanfB、putsC、getsD、都不能直接输入
22、已知:
intx=3,y=5,z;
则执行表达式z=x=x>
y后变量z的值为______。
A、0B、1C、3D、5
23、已知:
charch='
A'
;
则下列表达式的值是______。
ch=(ch>
='
&
ch<
'
Z'
)?
(ch+32):
ch;
A、AB、aC、ZD、z
24、已知:
intx=10,y=3,z;
则下列语句的输出结果是_____。
%d\n"
z=(x%y,x/y);
A、1B、0C、2D、3
25、已知:
intx=6;
则执行x+=x-=x*x;
语句后,x的值为______。
A、36B、-60C、60D、-24
26、若a=1,b=2,c=3,d=4,则条件表达式a>
b?
a:
(c<
d?
c:
d)的值为_____。
A、4B、3C、2D、1
27、若intk;
且有下面的程序片段,则输出结果为____。
k=-3;
if(k<
0)
#####"
)
else
"
);
A、#####B、&
C、#####&
D、有语法错误,无法运行
28、若ints=10;
执行下列程序段后,变量s的正确结果是______。
switch(s)
case9:
s+=1;
case10:
case11:
default:
A、10B、11C、12D、13
29、C语言程序由函数组成,它的______。
A、主函数必须在其它函数之前,函数内可以嵌套定义函数
B、主函数可以在其它函数之后,函数内不可以嵌套定义函数
C、主函数必须在其它函数之前,函数内不可以嵌套定义函数
D、主函数必须在其它函数之后,函数内可以嵌套定义函数
30、一个C语言程序的基本组成单位是_____。
A、主函数B、子程序C、函数D、过程
31、一个C语言程序总是从______开始执行的。
A、程序的第一个函数B、主函数C、子程序D、主程序
32、凡在函数中未指定存储类别的变量,其隐含的存储类别是____。
A、自动(auto)B、静态(static)
C、外部(extern)D、寄存器(register)
33、已知:
inta[3][4];
则对数组元素引用正确的是______。
A、a[2][4]B、a[1,3]C、a[1+1][0]D、a
(2)(3)
34、已知:
int*p,a;
则语句p=&
a;
中的运算符“&
”的含义是_______。
A、逻辑与运算B、按位与运算C、取指针变量内容D、取变量地址
35、程序运行的结果是______。
#include<
stdio.h>
staticchara[]="
computer"
char*p=a;
while(*p)
%c"
*p-32);
p++;
A、COMPUTERB、死循环C、computerD、语法错
36、下列叙述中不是C语言特点的是__________。
A、简洁、紧凑、使用方便、灵活,易于学习和应用
B、C语言是面向对象的程序设计语言
C、C语言允许直接对位、字节和地址进行操作
D、C语言数据类型丰富、生成的目标代码质量高
37、所有C函数,其结构包括三部分________。
A、语句、花括号和函数体B、函数名、语句和函数体
C、函数名、形式参数和函数体D、形式参数、语句和函数体
38、下面属于C语言标识符的是__________。
A、1abB、@fC、?
bD、_a12
39、C语言中主函数的个数是___________。
A、2个B、1个C、任意个D、10个
40、下列关于C语言注释,叙述错误的是_______。
A、以"
/*"
开头并以"
*/"
结尾的字符串为C语言的注释符
B、注释可出现在程序中任何位置,用来向用户提示或解释程序的意义
C、程序编译时,不对注释作任何处理
D、程序编译时,需要对注释进行处理
41、下列不是C语言的分隔符的是__________。
A、逗号B、空格C、制表符D、双引号
42、下列关于C语言关键字叙述错误的是_________。
A、关键字是由C语言规定的具有特定意义的字符串,通常也称为保留字
B、用户定义的标识符不应与关键字相同
C、ANSIC标准规定的关键字有64个
D、ANSIC标准规定的关键字有32个
43、以下不是C语言基本数据类型的是__________。
A、字符型B、浮点型C、整型D、构造类型
44、以下_________是八进制数。
A、0x12B、123C、1001D、0123
45、实数在用指数形式输出时是按规范化的指数形式输出的。
因此当指定将实数584.7按指数形式输出时,正确的输出形式是______。
A、584.7B、5.847e+002C、584.7e+000D、58.47e+001
46、字符串"
sizeof(n)=%d\n"
的长度是_________。
A、12B、11C、13D、14
47、下列程序语句的输出结果是__________。
charsp[]="
\t\v\\\0will\n"
%d"
strlen(sp));
A、12B、3C、9D、字符串中有非法字符
48、下面_________是不正确的字符串赋值或赋初值的方式。
A、char*str;
str="
string"
B、charstr[7]={'
s'
'
t'
r'
i'
n'
g'
};
C、charstr1[10];
str1="
D、charstr1[]="
str2[]="
12345678"
49、下列关于符号常量的叙述中错误的是_______。
A、定义符号常量有三种方法:
宏定义、const修饰符和枚举。
B、宏定义必须以#define开头,行末不加语句结束符--分号。
C、const定义是以关键字const开头,以冒号结束的C语句。
D、当程序中多次出现一个常量需要修改时,必须逐个修改,很可能漏改或错改;
用符号常量只需修改定义,就可以做到统统修改,减少出错几率。
50、下面这个程序段的输出是_______。
intx,y,z;
x=7;
y=8;
z=9;
if(x>
y)
x=y;
y=z;
z=x;
x=%dy=%dz=%d\n"
x,y,z);
A、x=7y=8z=7B、x=7y=9z=7
C、x=8y=9z=7D、x=8y=9z=8
51、使用字符串处理函数时,应该包含的头文件是________。
A、stdio.hB、math.hC、string.hD、不用包含头文件
52、下列程序段的输出结果是_____。
charc1,c2;
c1=65;
c2=65+32+1;
%c,%c"
c1,c2);
A、a,BB、A,BC、A,bD、a,b
53、若用数组名作为函数调用的实参,传递给形参的是__________。
A、数组的首地址B、数组中第一个元素的值
C、数组中全部元素的值D、数组元素的个数
54、下面的程序中有错误的行是_______。
floatm[5]={0.0};
/*第A行*/
inti;
for(i=0;
5;
scanf("
%f"
&
m[i]);
m[0]=m[0]+m[i];
/*第B行*/
%f\n"
m[0]);
/*第C行*/
A、第A行B、第B行C、第C行D、都没有错误
55、对于以下程序段,当输入"
3"
并回车后屏幕上显示的内容是________。
intch;
ch=getchar();
putchar(ch);
A、2B、1C、3D、0
56、对于inti=0,则表达式"
++i,--i,i+1"
的值是______。
A、2B、1C、3D、4
57、以下程序段的输出结果是________。
inty=7;
%d,%d,%d\n"
++y,--y,y++);
A、8,7,8B、8,7,7C、7,8,7D、7,8,8
58、表达式"
sizeof(unsignedshort)"
的值是_______。
A、2B、4C、3D、8
59、下列关于break语句与continue语句叙述错误的是___________。
A、break用来退出循环体
B、continue用来退出本次循环,提前进入下次循环的判定
C、break语句与continue语句均可用在while、do-while、for循环体中
D、在循环语句中break语句不能与if语句连在一起使用
60、下列关于do-while循环与while循环叙述错误的是_______。
A、do-while循环先执行循环体,然后再判断表达式
B、while循环先进行条件判断,满足条件才去执行循环体
C、while循环至少要执行一次循环体
D、do-while循环至少要执行一次循环体
61、如果n为整型,以下while循环执行________。
intn;
n=2;
while(n==0)
n);
n--;
\n"
A、0B、1C、2D、3
62、下列有关空语句的叙述错误的是_______。
A、只有分号"
组成的语句称为空语句
B、空语句是什么也不执行的语句
C、空语句是只执行一次的语句
D、在程序中空语句可用作空循环体
63、以下______属于C语言基本数据类型。
A、指针类型B、空类型C、整型D、构造类型
64、表达式"
!
5||6&
8"
的值是________。
A、1B、0C、3D、4
65、当输入"
Beijing2008"
时,下列程序段的输出结果是______。
charst[20];
charstt[]="
nihao"
gets(st);
strlwr(st);
strcat(st,stt);
puts(st);
A、beijingnihaoB、beijing2008nihao
C、Beijing2008nihaoD、Beijingnihao
66、以下程序段输出结果是_________。
chars[12]="
abook!
strlen(s));
A、12B、8C、7D、11
67、以下转义字符"
反斜杠线"
正确的表示方法是_______。
A、\B、\\C、'
\'
D、"
\"
68、下面关于字符常量和字符串常量的叙述中错误的是_______。
A、字符常量由单引号括起来,字符串常量由双引号括起来。
B、字符常量只能是单个字符,字符串常量则可以含一个或多个字符。
C、字符常量占一个字节的内存空间,字符串常量占的内存字节数等于字符串中字节数。
D、可以把一个字符常量赋予一个字符变量,但不能把一个字符串常量赋予一个字符变量。
69、下列关于一维数组的引用叙述正确的是_______。
A、数组元素可以先引用后定义。
B、C语言规定只能逐个引用数组中的元素,而不能一次引用整个数组。
C、数组元素可以被赋值,但不可以参与组成表达式。
D、如果给全部元素赋值,则在数组说明中必须给出数组元素的个数。
70、C语言可执行程序从_______开始执行。
A、程序中第一条可执行语句
B、程序中第一个函数
C、程序中的main()函数
、包含文件中的第一个函数
71、对于以下程序段的输出结果"
3333.333664"
有效的数据项是________。
floata;
a=3333.33333;
a);
A、3333.333664B、3333.33333C、3333,3333D、3333.333
72、若定义如下函数:
sub(intx)
floaty;
y=3*x-4;
returny;
则该函数返回值的数据类型是_______。
A、intB、不确定C、voidD、float
73、在C语言的if语句中,用作判断的表达式为__________。
A、算术表达式B、其他表达式C、关系表达式D、任意表达式
74、下面这个程序的输出是________。
intn=10;
while(n--);
n=%d"
A、while构成死循环B、n=0C、n=1D、n=-1
【简答题】
75、简述开发C程序的步骤。
76、C语言中采用哪种代码形式表示字符?
77、C语言程序结构有何特点?
78、简述C语言提供的基本数据类型。
79、*.c,*.obj,*.exe分别表示什么文件?
80、什么是C语言的保留字?
使用保留字时应注意些什么?
81、计算机怎样执行C程序?
82、对math.h进行预处理,应该如何表示?
【填空题】
83、1966年,Bohra和Jacopini提出了三种基本结构__________、__________、__________作为表示一个良好算法的基本单元。
84、把变量x定义为整型的语句为________________。
85、设x=2.5,a=7,y=4.7,算术表达式x+a%3*(int)(x+y)%2/4的值为___________。
86、下列程序的运行结果为__________。
inti,j,m,n;
i=8;
j=10;
m=++i;
n=j++;
%d,%d,%d,%d"
i,j,m,n);
87、设a和n为整型变量,且a=12,表达式a+=a=a-=a*=a运算后a的值为________。
88、下面程序的功能是输入三角形的三边长,求三角形面积。
math.h>
floata,b,c,s,area;
%f,%f,%f"
a,&
b,&
c);
s=1.0/2*(a+b+c);
______________________________________
a=%3.2f,b=%3.2f,c=%3.2f,s=%3.2f\n"
a,b,c,s);
area=%3.2f\n"
area);
89、下面程序的功能是打印以下图案,请把程序补充完整。
******
inti,j,k;
for(i=1;
____________________________/*打印每行的前导空格*/
for(j=1;
j<
j++)printf("
*"
90、下列程序的功能是求出两个数中的较大者,请把用户自定义函数max(x,y)填写完整。
intmax(int,int);
{inta,b,c;
%d.%d"
b);
c=max(a,b);
Maxis%d"
c);
max(intx,inty)
intz;
/*利用条件表达式使z保存x和y中较大者的值*/
____________________
return(z);
91、下列程序采用递归方法计算n!
,请把程序补充完整。
longfac(intn)
longf;
if(n<
n<
0,dataerror!
elseif(n==0||n==1)
f=1;
________________________
returnf;
longy;
inputaninteger:
n);
y=fac(n);
%d!
=%ld\n"
n,y);
92、下列程序运行时输入5,9,输出结果为______。
inta,b,*p1,*p2,*p;
a,b="
%d,%d"
p1=&
p2=&
b;
if(a<
b)
p=p1;
p1=p2;
p2=p;
%d\t%d"
*p1,*p2);
93、对键盘输入的任意10个整数求和。
intcount,num,total;
count=0;
total=0;
while(count<
10)
count++;
EntertheNo.%d"
count);
total+=num;
Total=%d\n"
total);
94、计算1+2+3+……+100。
sum=0;
i=1;
while(i<
=10)
________________
i++;
95、统计100~200之间不能被3整除的数有多少。
intn,num;
for(n=100;
=200;
n++)
if(n%3==0)continue;
_________________
num);
96、C程序是由_____构成的,一个C程序中至少包含______。
97、C程序注释是由_____和____所界定的文字信息组成的。
98、若要输出下列各种类型的数据,应使用什么转换说明符。
(答题请打上双引号)字段宽度为4的十进制整数应使用"
%4d"
,字段宽度为6的十六进制整数应使用______,字段宽度为5的八进制整数应使用_____,字段宽度为3的字符应
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 复习题