版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第/\*Arabic1页2023年上学期C语言程序设计期末考试题库一、单项选择题1.执行下列程序段后的输出结果是________.int
x=1,y=1,z=1;
x+=y+=z;
printf("%d\n",x<y?y:x);A.3B.2C.1D.4答案:A2.下列关于C语言的说法错误的是(
)A.C程序的工作过程是编辑、编译、连接、运行B.C语言不区分大小写。C.C程序的三种基本结构是顺序、选择、循环D.C程序从main函数开始执行答案:B3.以下描述增强的是(
).A.continue语句的作用是重新开始一次循环体的执行B.不能在循环体内和switch语句体内使用break语句C.在循环体内使用break语句和continue语句的作用相同D.从多重循环嵌套中退出是,只能使用goto语句答案:A4.已知:int
a[10];
则对a数组元素的正确引用是(
)。A.a[10]B.a[3.5]C.a(5)D.a[0]答案:D5.若有以下定义和语句:
int
a=010,
b=0x10,
c=10;
printf("%d,%d,%d\n",a,b,c);
则输出结果是:A.10,10,10B.8,16,10C.8,10,10D.8,8,10答案:B6.给出以下定义:char
x[
]="abcdefg";char
y[
]={'a','b','c','d','e','f','g'};则正确的叙述为
________.A.数组x和数组y等价B.数组x和数组y的长度相同C.数组x的长度大于数组y的长度D.数组x的长度小于数组y的长度答案:C7.设变量a是整型,b是实型,c是双精度型,则表达式2+’a’+b*c值的数据类型是(
)。A.intB.floatC.doubleD.char答案:C8.求如下表达式5>3&&8<4-!10
的结果是:(
)A.4B.1C.6D.0答案:D9.以下选项中,不合法的字符常量是(
).A.'\t'B.'\17'C."n"D.'\xaa'答案:C10.语句int
*p;说明了(
)
。A.p是指向一维数组的指针B.p是指向函数的指针,该函数返回一int型数据C.p是指向int型数据的指针D.p是函数名,该函数返回一指向int型数据的指针答案:C11.如有定义语句int
a[]={1,8,2,8,3,8,4,8,5,8};
,则数组a的大小是_______.A.10B.11C.8D.不定答案:A12.C语言对嵌套if语句的规定是:else总是与(
)配对。A.其之前最近的ifB.第一个ifC.缩进位置相同的ifD.其之前最近且不带else
的if答案:D13.在Visual
C++
6.0环境下,C源程序文件名的默认后缀是(
)A..objB..txtC..cD..doc答案:C14.C语言中,关系表达式和逻辑表达式的值是(
)A.0B.0或1C.1D.‘T’或’F’答案:B15.以下定义语句中,错误的是_______.A.int
a[]={1,2};B.char
a[]={"test"};C.char
s[10]={"test"};D.int
n=5,a[n];答案:D16.以下描述增强的是(
).A.continue语句的作用是重新开始一次循环体的执行B.不能在循环体内和switch语句体内使用break语句C.在循环体内使用break语句和continue语句的作用相同D.从多重循环嵌套中退出是,只能使用goto语句答案:A17.int
a;
int
b=65536;
a=b;
printf("%d\n",a);
执行上面程序段后,输出结果是:A.65536B.0C.-1D.1答案:A18.下列四组选项中,正确的C语言标识符是(
)。A.%xB.a+bC.a123D.123答案:C19.下面(
)表达式的值为4.A.11/3B.11.0/3C.(float)11/3D.(int)(11.0/3+0.5)答案:D20.以下定义语句中,错误的是_______.A.int
a[]={1,2};B.char
a={"test"};C.char
s[10]={"test"};D.int
a[]={'a','b','c'};答案:B21.#include
<stdio.h>
void
main(
){
int
a=5,b=60,c;if
(a<b)
{c=a*b;printf("%d*%d=%d\n",b,a,c);}
else{c=b/a;printf("%d/%d=%d\n",b,a,c);}}
上面程序执行后的输出结果是A.60/5=12B.300C.60*5=300D.12答案:C22.(
)是构成C语言程序的基本单位。A.函数B.过程C.子程序D.子例程答案:A23.已知a=12,则表达式a+=a-=a*=a的结果是:A.0B.144C.12D.-264答案:A24.#include<stdio.h>void
main(){
int
x=10,y=10;
printf("%d
%d\n",x--,--y);}
上面程序的输出是:A.10
10B.9
9C.9
10D.10
9答案:D25.若有定义int
x=3,y=2和float
a=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b的值是A.0B.2C.1.5D.1答案:D26.运行下面程序时,若从键盘输入"3,4
<CR>",则程序的输出结果是______.#include
<stdio.h>
void
main(){int
a,b,s;
scanf("%d,%d",&a,&b);
s=a;
if
(s<b)
s=b;
s=s*s;
printf("%d\n",s);}A.14B.16C.18D.20答案:B27.以下选项中,不合法的字符常量是(
).A.'\t'B.'\17'C."n"D.'\xaa'答案:C28.C语言中主函数的个数是(
)。A.2个B.1个C.任意多个D.0个答案:B29.若i为整型变量,则以下循环语句的循环次数是______.
for(i=2;i==0;)
printf("%d",i--);A.无限次B.0次C.1次D.2次答案:B30.下列不正确的定义是(
)。A.int
*p=&i,i;B.int
*p,i;C.int
i,*p=&i;D.int
i,*p;答案:A31.(
)是构成C语言程序的基本单位。A.函数B.过程C.子程序D.子例程答案:A32.若运行下面程序时,给变量a输入15,则输出结果是____.
#include
<stdio.h>
void
main(
){
int
a,b;
scanf("%d",&a);b=a>15?a+10:a-10;
printf("%d\n",b);}A.5B.25C.15D.10答案:A33.在计算机系统中,可执行程序是(
)A.源代码B.汇编语言代码C.机器语言代码D.ASCII码答案:C34.下列符号中用来表示C语言中的回车换行的是(
)。A.\rB.\nC.\bD.\t答案:B35.下列正确的标识符是(
)。A.intB.a[i]C.a2_iD.int
t答案:C36.下列符号中用来表示C语言中的回车换行的是(
)。A.\rB.\nC.\bD.\t答案:B37.以下选项中表示一个合法的常量是(说明:符号□表示空格)(
)A.9□9□9B.0XabC.123E0.2D.2.7e答案:B38.设正x、y均为整型变量,且x=10,y=3,则以下语句的输出结果是(
)。printf("%d,%d\n",x--,--y);A.10,3B.9,3C.9,2D.10,2答案:D39.C语言程序能够在不同的操作系统下面运行,这说明c语言具有很好的
。A.适应性B.移植性C.兼容性D.操作性答案:B40.假定w、x、y、z、m均为int型变量,有如下程序段:
w=1;x=2;y=3;z=4;
m=(w<x)?w:x;
m=(m<y)?m:y;
m=(m<z)?m:z;则该程序段执行后,m的值是A.4B.3C.2D.1答案:D41.下列C语言用户标识符中合法的是(
)。A.3axB.xC.caseD.union答案:B42.对do...while语句错误的描述是:(
)A.可构成多重循环结构B.循环次数不可能为0C.先执行后判断D.循环次数可能为0答案:D43.#include<stdio.h>
void
main(){int
x=023;
printf("%d\n",--x);}
上面程序的输出是:A.17B.18C.23D.24答案:B44.若有定义int
a=12,n=5,则表达式a%=(n%2)运算后,a的值A.0B.1C.12D.6答案:A45.如果int
a=3,b=4;则条件表达式"a<b?
a:b"的值是(
)。A.3B.4C.0D.1答案:A46.循环语句中,do
while
语句是(
)语句。A.后测试B.前测试C.中间测试D.非测试答案:A47.格式控制符%d
对应的是(
)
型数值。A.浮点型B.整型C.字符型D.数组型答案:B48.在计算机系统中,可执行程序是(
)A.源代码B.汇编语言代码C.机器语言代码D.ASCII码答案:C49.C语言程序从(
)
开始执行。A.程序中第一条可执行语句B.程序中第一个函数C.程序中的main函数D.包含文件中的第一个函数答案:C50.阅读下面的程序
#include<stdio.h>void
main(){
int
i,j;
i=010;
j=9;
printf("%d,%d",i-j,i+j);
}则程序的运行结果是:A.1,19B.-1,19C.1,17D.-1,17答案:D51.C编译系统将浮点型常量作为(
)处理。A.单精度B.无符号型C.长双精度D.双精度答案:D52.C语言中最简单的数据类型包括
(
)A.整型、实型、逻辑型B.整型、实型、字符型C.整型、字符型、逻辑型D.整型、实型、逻辑型、字符型答案:B53.在C语言程序中,表达式5%2的结果是(
)。A.2.5B.2C.1D.3答案:C54.以下选项中,能表示逻辑值“假”的是(
)A.1B.0.000001C.0D.100答案:C55.执行下面程序的输出结果是_____.#include
<stdio.h>void
main(
)
{
int
a=5,b=0,c=0;if
(a=a+b)
printf("****\n");
else
int
f("####\n");}A.有语法错误不能编译B.能通过编译,但不能通过连接C.输出
****D.输出
####答案:C56.若有以下定义和语句:
int
a=010,
b=0x10,
c=10;
printf("%d,%d,%d\n",a,b,c);
则输出结果是:A.10,10,10B.8,16,10C.8,10,10D.8,8,10答案:B57.在C语言中,要求运算数必须是整型的运算符是(
)A.%B./C.<D.!答案:A58.如果int
a=3,b=4;则条件表达式"a<b?
a:b"的值是(
)。A.3B.4C.0D.1答案:A59.C语言中函数返回值的类型是由(
)
决定的.A.函数定义时指定的类型B.return语句中的表达式类型C.调用该函数时的实参的数据类型D.形参的数据类型答案:A60.C语言中最简单的数据类型包括
(
)A.整型、实型、逻辑型B.整型、实型、字符型C.整型、字符型、逻辑型D.整型、实型、逻辑型、字符型答案:B61.如果c为字符型变量,判断c是否为空格不能使用________.(假设已知空格ASCII码为32)A.if(c=='32')B.if(c==32)C.if(c=='\40')D.if(c=='
')答案:A62.以下叙述不正确的是(
).A.C语言严格,不区分大小写英文字母B.C语言用";"作为语句分隔符C.C程序书写格式自由,一行内可以写几个语句,一个语句也可以写在几行上.D.可以使用/*…*/对C程序中的任何部分作注释答案:A63.关于C语言中数的表示,以下叙述正确的是(
)A.只有整型数在允许范围内能精确无误的表示,实型数会有误差B.只要在在允许范围内整型和实型都能精确表示C.只有实型数在允许范围内能精确无误的表示,整型数会有误差D.只有八进制表示的数在不会有误差答案:A64.下面程序的输出结果是______.
#include<stdio.h>
void
main(
)
{
int
n=4;
while
(n--)
printf("%d
",n--);
}A.2
0B.3
1C.3
2
1D.2
1
0答案:B65.在定义int
a[5][4];
之后,对a的引用正确的是._______A.a[2][4]B.a[1,3]C.a[4][3]D.a[5][0]答案:C66.设有说明:char
w;
int
x;
float
y;
double
z;
则表达式:
w*x+z-y值的数据类型是A.floatB.charC.intD.double答案:D67.在定义int
a[5][4];
之后,对a的引用正确的是._______A.a[2][4]B.a[1,3]C.a[4][3]D.a[5][0]答案:C68.C语言程序的基本单位是:A.程序行B.语句C.函数D.字符答案:C69.C语言中规定,if语句的嵌套结构中,else总是(
)配对。A.与最近的ifB.与第一个ifC.与按缩进位置相同的ifD.与最近的且尚未配对的if答案:D70.以下程序段______.
x=-1;
do
{
x=x*x;
}
while
(!x);A.是死循环B.循环执行两次C.循环执行一次D.有语法错误答案:C71.以下条件表达式中能完全等价于条件表达式x的是______.A.(x==0)B.(x!=0)C.(x==1)D.(x!=1)答案:B72.在C语言程序中,表达式5%2的结果是(
)。A.2.5B.2C.1D.3答案:C73.若有定义int
a=8,b=5,C;,执行语句C=a/b+0.4;后,C的值为
(
)A.1.4B.1C.2.0D.2答案:B74.执行下面程序的输出结果是_____.#include
<stdio.h>void
main(
)
{
int
a=5,b=0,c=0;if
(a=a+b)
printf("****\n");
else
int
f("####\n");}A.有语法错误不能编译B.能通过编译,但不能通过连接C.输出
****D.输出
####答案:C75.#include<stdio.h>void
main(){char
ch1,ch2;
ch1='A'+'5'-'3';
ch2='A'+'6'-'3';
printf("%d,%c\n",ch1,ch2);}
已知字母A的ASCII码为十进制的65,上面程序的输出是:A.67,DB.B,CC.C,DD.不确定的值答案:A76.C程序的基本组成单位(
)。A.数据类型B.变量和常量C.函数D.表达式答案:C77.下列不正确的定义是(
)。A.int
*p=&i,i;B.int
*p,i;C.int
i,*p=&i;D.int
i,*p;答案:A78.#include
<stdio.h>
void
main(
){
int
a=5,b=60,c;if
(a<b)
{c=a*b;printf("%d*%d=%d\n",b,a,c);}
else{c=b/a;printf("%d/%d=%d\n",b,a,c);}}
上面程序执行后的输出结果是A.60/5=12B.300C.60*5=300D.12答案:C79.正确的整型常量是(
)A.3000B.045C.’a’D.3.4答案:B80.#include<stdio.h>
void
main()
{int
a;
printf("%d\n",(a=3*5,a*4,a+5));}
执行上面程序中的输出语句后,输出结果是:A.65B.20C.15D.10答案:B81.以下程序段______.
x=-1;
do
{
x=x*x;
}
while
(!x);A.是死循环B.循环执行两次C.循环执行一次D.有语法错误答案:C82.下列四组选项中,正确的C语言标识符是(
)。A.%xB.a+bC.a123D.123答案:C83.已知有double型变量x=2.5,y=4.7,整型变量a=7,则表达式
x+a%3*(int)(x+y)%2/4
的值是:A.2.4B.2.5C.2.75D.0答案:B84.设整型变量
a=2,则执行下列语句后,浮点型变量b的值不为0.5的是(
)A.b=1.0/aB.b=(float)(1/a)C.b=1/(float)aD.b=1/(a*1.0)答案:B85.以下描述不正确的是(
).A.使用while和do-while循环时,循环变量初始话的操作应在循环体语句之前完成B.while循环是先判断表达式,后执行循环语句C.do-while和for循环均是先执行循环语句,后判断表达式D.for,while和do-while循环中的循环体均可以由空语句构成答案:C86.#include<stdio.h>void
main()
{
int
a=-1,
b=4,
k;
k=(++a<=0)&&(b--<=0);
printf("%d,%d,%d\n",k,a,b);}
上面程序的输出是:A.1,1,2B.1,0,3C.0,1,2D.0,0,3答案:D87.在定义int
a[5][6];后,数组a中的第10个元素是.________(设a[0][0]为第一个元素)A.a[2][5]B.a[2][4]C.a[1][3]D.a[1][5]答案:C88.C语言中函数返回值的类型是由(
)
决定的.A.函数定义时指定的类型B.return语句中的表达式类型C.调用该函数时的实参的数据类型D.形参的数据类型答案:A89.若已定义int
a,则表达式a=10,a+10,a++的值是:A.20B.10C.21D.11答案:B90.以下叙述不正确的是(
).A.C语言严格,不区分大小写英文字母B.C语言用";"作为语句分隔符C.C程序书写格式自由,一行内可以写几个语句,一个语句也可以写在几行上.D.可以使用/*…*/对C程序中的任何部分作注释答案:A91.C语言中规定,赋值表达式中赋值号(“=”)左边(
)。A.可以是常数B.必须是变量名C.只能是表达式D.可以是常数或表达式答案:B92.C语言程序的基本单位是:A.程序行B.语句C.函数D.字符答案:C93.C语言中,s=i++;等价于(
)A.s=i;
i=i+1;B.i=i+1;
s=i;C.s=i;
s=s+1;D.s=i;s=i+1;答案:A94.C语言中的变量名只能由字母,数字和下划线三种字符组成,且第一个字符A.必须为字母B.必须为下划线C.必须为字母或下划线D.可以是字母,数字或下划线中的任意一种答案:C95.下面实现换行功能的格式符为(
)A.\tB.\nC.\aD.\k答案:B96.已知有double型变量x=2.5,y=4.7,整型变量a=7,则表达式
x+a%3*(int)(x+y)%2/4
的值是:A.2.4B.2.5C.2.75D.0答案:B97.表达式5!=3的值是A.TB.非零值C.0D.1答案:D98.#include<stdio.h>void
main(){char
ch1,ch2;
ch1='A'+'5'-'3';
ch2='A'+'6'-'3';
printf("%d,%c\n",ch1,ch2);}
已知字母A的ASCII码为十进制的65,上面程序的输出是:A.67,DB.B,CC.C,DD.不确定的值答案:A99.在C语言中,表示静态存储类别的关键字是:
(
)A.autoB.registerC.staticD.extern答案:C100.设有语句int
a=3;,则执行了语句a+=a=a*a;后,变量a的值是(
)A.3B.0C.9D.-12答案:D二、多项选择题101.以下选项中,能表示逻辑值“真”的是A.1.2B.0C.0.2D.M答案:ACD102.以下可以定义为用户标识符的有().A.scanfB.shortC._3com_D.int答案:AC103.以下叙述中正确的是().A.一个C源程序可由一个或多个函数组成B.一个C源程序必须包含一个main()函数C.C源程序的基本组成单位是函数D.在C源程序中,注释说明只能位于一条语句的最后答案:ABC104.以下对switch语句和break语句中描述错误的有().A.在switch语句中必须使用break语句B.break语句只能用于switch语句C.在switch语句中,可以根据需要使用或不使用break语句D.break语句是switch语句的一部分答案:ABD105.以下用户标识符,其中合法的是().A.returnB.f2_G3C.A3-3D.abc答案:BD106.在定义int
a[2][3];之后,对a的引用正确的有().A.a[0][2]B.a[1,3]C.a[1>2][!1]D.a[2][0]答案:AC107.已定义c为字符型变量,则下列语句中错误的是().A.c='97';B.c="97";C.c=97;D.c="a";答案:ABD108.以下选项中合法的字符常量是A.'\102'B.'\65'C.'\xff'D.'\019'答案:ABC109.以下叙述错误的是A.在C语言程序中,main函数必须放在其他函数的最前面B.在每个后缀为.C的C语言源程序都可以单独进行编译C.在C语言程序中,只有main函数才可单独进行编译D.每个后缀为.C的C语言源程序都应该包含一个main函数答案:ACD110.以下合法的十六进制数是().A.oxffB.0XabcC.0x01D.0X9X答案:BC111.已定义c为字符型变量,则下列语句中错误的是().A.c='97';B.c="97";C.c=97;D.c="a";答案:ABD112.以下关于数组描述错误的是().A.数组的大小是固定的,但可以有不同的类型的数组元素B.数组的大小是可变的,但所有数组元素的类型必须相同C.数组的大小是固定的,所有数组元素的类型必须相同D.数组的大小是可变的,可以有不同的类型的数组元素答案:ABD113.若以下选项中的变量已正确定义,则不正确的赋值语句是().A.x1=26.8%3B.x=3*x+xC.x3=0x12D.x4=1+2=3;答案:AD114.C语言中实型常量又称实数或浮点数,实数有两种表示形式,分别为:A.十进制小数形式B.字符形式C.指数形式D.整数形式答案:AC115.以下不符合C语言语法的实型常量是().A.1.2E0.5B.3.14.159EC..5E3D.E15答案:ABD116.以下选项中,能表示逻辑值“真”的是A.1.2B.0C.0.2D.M答案:ACD117.设有以下定义
int
a=0;double
b=1.25;char
c='A';#define
d
2
则下面语句中正确的是().A.a++;B.b++;C.c++;D.d++;答案:ABC118.以下选项中不合法的字符常量是().A."B"B.'\010'C.68D.D答案:ACD119.以下可以定义为用户标识符的有().A.scanfB.shortC._3com_D.int答案:AC120.以下对C语言中的函数描述不正确的有().A.可以嵌套定义,不可以嵌套调用B.不可以嵌套定义,可以嵌套调用C.可以嵌套定义,也可以嵌套调用D.嵌套定义和嵌套调用都不允许答案:ACD121.以下用户标识符,其中合法的是().A.returnB.f2_G3C.A3-3D.abc答案:BD122.不合法的数组定义是________.A.int
a[6]={"string"};B.int
a[5]={0,1,2,3,4,5};C.char
a={"string"};D.char
a[]={0,1,2,3,4,5};答案:ABC123.在C语言中,以下叙述正确的是A.在C程序中,无论是整数还是实数,都能被准确无误的表示B.在C程序中,变量名代表存储器中的一个位置C.静态变量的生存期与整个程序的生存期相同D.C语言中变量必须先定义后引用答案:BCD124.设有以下定义
int
a=0;double
b=1.25;char
c='A';#define
d
2
则下面语句中正确的是().A.a++;B.b++;C.c++;D.d++;答案:ABC125.以下定义语句中,正确的是_______.A.int
a[]={1,2};B.char
a[]={"test"};C.char
s[10]={"test"};D.int
n=5,a[n];答案:ABC126.不合法的数组定义是________.A.int
a[6]={"string"};B.int
a[5]={0,1,2,3,4,5};C.char
a={"string"};D.char
a[]={0,1,2,3,4,5};答案:ABC127.以下不合法的赋值语句是().A.x=y=100B.d--;C.x+y;D.c=int(a+b);答案:ACD128.若a,b,c,d都是int型变量且初值为0,以下选项中正确的赋值语句是().A.a=b=c=d=100;B.d++;C.c+b;D.d=(c=22)-(b++);答案:ABD129.不是C语言经过编译后生成的文件的后缀是A..cB..cppC..exeD..obj答案:ABC130.在定义int
a[2][3];之后,对a的引用正确的有().A.a[0][2]B.a[1,3]C.a[1>2][!1]D.a[2][0]答案:AC131.对do...while语句正确的描述是:(
)A.可构成多重循环结构B.循环次数不可能为0C.先执行后判断D.循环次数可能为0答案:ABC132.关于C语言变量,以下说法正确的是(
)A.变量名由程序员定义,必须符合标识符的命名规则。B.变量是程序运行过程中其值可以改变的量。C.可以用C语言的关键字作为变量名。D.变量命名时应尽量做到见名知意。答案:ABD133.若以下选项中的变量已正确定义,则不正确的赋值语句是().A.x1=26.8%3B.x=3*x+xC.x3=0x12D.x4=1+2=3;答案:AD134.以下可以定义为用户标识符的是(
)A.IfB.H_JC.208ongD.LINE12答案:ABD135.以下描述正确的是().A.调用函数时,实参可以是表达式B.调用函数时,实参与形参可以共用内存单元C.调用函数时,将为形参分配内存单元D.调用函数时,实参与形参的类型必须一致答案:ACD136.若以下选项中的变量已正确定义,则不正确的赋值语句是().A.x1=26.8%3B.x=3*x+xC.x3=0x12D.x4=1+2=3;答案:AD137.以下定义语句中,正确的是_______.A.int
a[]={1,2};B.char
a[]={"test"};C.char
s[10]={"test"};D.int
n=5,a[n];答案:ABC138.下面不属于C语言标识符的是(
)。A.2abB.@fC.?bD._a12答案:ABC139.以下关于数组描述错误的是().A.数组的大小是固定的,但可以有不同的类型的数组元素B.数组的大小是可变的,但所有数组元素的类型必须相同C.数组的大小是固定的,所有数组元素的类型必须相同D.数组的大小是可变的,可以有不同的类型的数组元素答案:ABD140.下列关系表达式中,结果为“真”的是A.(3+4)>5B.(5!=4)>2C.3<=4||3D.(3<4)==1答案:ACD141.已定义c为字符型变量,则下列语句中错误的是().A.c='97';B.c="97";C.c=97;D.c="a";答案:ABD142.以下选项中不是C语言合法整数的是().A.10110B.0386C.0XffaD.x2a2答案:BD143.以下关于数组描述错误的是().A.数组的大小是固定的,但可以有不同的类型的数组元素B.数组的大小是可变的,但所有数组元素的类型必须相同C.数组的大小是固定的,所有数组元素的类型必须相同D.数组的大小是可变的,可以有不同的类型的数组元素答案:ABD144.下列选项中是C语言合法标志符的有().A.good_morningB.mainC.stdio.hD.8abc答案:AB145.下面不属于C语言标识符的是(
)。A.2abB.@fC.?bD._a12答案:ABC146.以下对switch语句和break语句中描述错误的有().A.在switch语句中必须使用break语句B.break语句只能用于switch语句C.在switch语句中,可以根据需要使用或不使用break语句D.break语句是switch语句的一部分答案:ABD147.以下选项中合法的字符常量是A.'\102'B.'\65'C.'\xff'D.'\019'答案:ABC148.对do-while语句描述正确的是().A.do-while语句构成的循环可以使用break语句退出循环B.do-while语句构成的循环必须使用break语句退出循环C.do-while语句构成的循环,当while中的表达式值为非零时结束循环D.do-while语句构成的循环,当while中的表达式值为零时结束循环答案:AD149.不是C语言经过编译后生成的文件的后缀是A..cB..cppC..exeD..obj答案:ABC150.以下叙述正确的是(
)A.一个C源程序可由一个或多个函数组成B.一个C源程序必须包含一个main函数C.C程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句的后面答案:ABC三、判断题151.C语言函数返回类型的默认定义类型是void答案:错误152.break
则是结束整个循环过程,不再判断执行循环的条件是否成立。答案:正确153.任何表达式语句都是表达式加分号组成的。答案:正确154.用字符串方式赋值比用字符逐个赋值要多占一个字节,
用于存放字符串结束标志'\0'。答案:错误155.C语言函数返回类型的默认定义类型是void答案:错误156.条件表达式不能取代一般if的语句。答案:错误157.如果在同一个源文件中,外部变量和局部变量同名,则在局部变量的作用范围内,外部变量被“屏蔽”,即它不起作用。答案:正确158.表达式语句和表达式没有什么区别。答案:错误159.C
语言是一种具有某些低级语言特征的高级语言。答案:正确160.如今C与Unix密不可分?答案:错误161.表达式语句和表达式没有什么区别。答案:错误162.条件运算符?和:是一对运算符,不能分开单独使用。答案:正确163.函数的实参传递到形参有两种方式值传递和地址传递答案:正确164.do-while循环至少要执行一次循环语句。答案:正确165.下面语句是否Y?C语言既保持了BCPL和B语言的优点(精练,接近硬件),又克服了它们的缺点(过于简单,数据无类型等)。答案:正确166.在if语句的三种形式中,如果要想在满足条件时执行一组(多个)语句,则必须把这一组语句用{}括起来组成一个复合语句。答案:正确167.函数的实参传递到形参有两种方式值传递和地址传递答案:正确168.函数的返回值是通过函数中的return语句获得的,return
语句可以将被调用函数中的一个或者多个确定的值带回到主调函数中去。答案:错误169.件指针用于指向文件,文件只有被打开后才有对应的文件指针。答案:正确170.标准格式输入函数scanf()可以从键盘上接收相同数据类型的数据项。答案:错误171.break
则是结束整个循环过程,不再判断执行循环的条件是否成立。答案:正确172.预处理命令的前面必须加一个“#”号。答案:正确173.do-while循环至少要执行一次循环语句。答案:正确174.函数的参数定义时,实参可以是常量、变量和表达式。答案:正确175.标准格式输入函数scanf()可以从键盘上接收相同数据类型的数据项。答案:错误176.C语言规定可以逐个引用数组元素,也可以一次引用整个数组。答案:错误177.case语句后如没有break,顺序向下执行。答案:正确178.C
语言是一种具有某些低级语言特征的高级语言。答案:正确179.C
语言标准格式输入函数
scanf()
的参数表中要使用变量的地址值。答案:正确180.C
语言具有简洁明了的特点。答案:正确181.数组在定义时,数组名后的常量表达式可以包含常量和符号常量。答案:正确182.C
语言具有简洁明了的特点。答案:正确183.C语言规定可以逐个引用数组元素,也可以一次引用整个数组。答案:错误184.函数返回值的类型是由在定义函数时所指定的函数类型答案:正确185.表达式语句和表达式没有什么区别。答案:错误186.函数返回值的类型是由在定义函数时所指定的函数类型答案:正确187.C语言的各种数值型数据间可以进行混合运算。答案:正确188.下面语句是否正确?C语言既保持了BCPL和B语言的优点(精练,接近硬件),又克服了它们的缺点(过于简单,数据无类型等)。答案:正确189.case语句后如没有break,顺序向下执行。答案:正确190.件指针用于指向文件,文件只有被打开后才有对应的文件指针。答案:正确191.在if语句的三种形式中,如果要想在满足条件时执行一组(多个)语句,则必须把这一组语句用{}括起来组成一个复合语句。答案:正确192.函数的返回值是通过函数中的return语句获得的,return
语句可以将被调用函数中的一个或者多个确定的值带回到主调函数中去。答案:错误193.关系运算符中“=
=”的优先级别和“
<”的优先级别相同。答案:错误194.在switch语句中,每一个的case常量表达式的值可以相同。答案:错误195.函数的实参可以是常量,变量或表达式答案:正确196.如果函数定义出现在函数调用之前,必须加函数原型声明答案:错误197.C
语言具有简洁明了的特点。答案:正确198.如果指针变量p已指向数组中的一个元素,则p+1指向同一数组中的下一个元素答案:正确199.数组名能与其它变量名相同。数组名后是用方括号括起来的常量表达式,不能用圆括号。答案:正确200.int
(*p)[4]它表示p是一个指针数组,它包含4个指针变量元素答案:错误四、填空题201.表达式7+8>2
&&
25
%5的结果是________。答案:0。
202.5、有如下输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是________。答案:a=1
b=3
c=2203.表达式7+8>2
&&
25
%5的结果是________。答案:0204.执行下列语句int
a=8;
a+=a-=a*a;
后,a的值是________。答案:-
112
205.设整型变量n的值为2,执行语句“n+=n-=n*n”后,n的值是________。答案:-
4206.整数-35在机内的补码表示为________。答案:1111111111011101
207.5、有如下输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是________。答案:a=1
b=3
c=2208.有如下输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是________。答案:取运算对象的地址。
取指针变量所指的内容。
209.C语言中普通整型变量的类型说明符为________,在内存中占________字节,有符号普通整型的数据范围是
________。答案:int
;
2
;
-32768~
+32767210.C语言的预处理语句以________开头。答案:#号211.执行下列语句int
a=8;
a+=a-=a*a;
后,a的值是________。答案:-
112
212.设整型变量n的值为2,执行语句“n+=n-=n*n”后,n的值是________。答案:-
4。213.有如下语句:char
A[
]={”I
am
a
student”};
该字符串的长度是________,A[3]=
________
。答案:14;“m”214.C语言中基本的数据类型有:________、
________
、
________。答案:整型;实型;字符型。215.有如下语句:char
A[
]={”I
am
a
student”};
该字符串的长度是________,A[3]=
________
。答案:14;“m”216.整数-35在机内的补码表示为________。答案:1111111111011101
217.C语言的预处理语句以________开头。答案:#号218.C语言中基本的数据类型有:________、
________
、
________。答案:整型;实型;字符型。219.C语言中普通整型变量的类型说明符为________,在内存中占________字节,有符号普通整型的数据范围是
________。答案:int
;
2
;
-32768~
+32767220.有如下输入语句:scanf(“a=%d,b=%d,c=%d”,&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式应是________。答案:取运算对象的地址。取指针变量所指的内容。
五、简答题221.关键字和一般标识符有什么不同?答案:标识符用来标识源程序中的某个对象的名字,一个标识符由字母、数字和下划线组成。关键字可以定义变量、表达式语句功能和对一些文件进行预处理,关键字已被编译系统本身使用,所以用户编写程序时不能够使用这些关键字来作为标识符,如int,if,for等。222.c
语言的主要用途:答案:c语言主要用于程序的编程开发,和其他的高级语言相比,都采用符号形式,提供许多高级的程序结构,供编写人员组织复杂的程序。都是面向问题的语言,独立于具体的机器,比较接近人的语言习惯,能更有效的描述各种算法。c语言具有绘图能力和可移植性,有更强的数据处理能力,适用于编写系统软件、二维、三维图形和动画。223.c
语言的主要用途:答案:c语言主要用于程序的编程开发,和其他的高级语言相比,都采用符号形式,提供许多高级的程序结构,供编写人员组织复杂的程序。都是面向问题的语言,独立于具体的机器,比较接近人的语言习惯,能更有效的描述各种算法。c语言具有绘图能力和可移植性,有更强的数据处理能力,适用于编写系统软件、二维、三维图形和动画。224.根据自己的认识,写出c语言的特点答案:语言简洁,使用灵活方便,具有丰富的运算符和数据类型,便于实现程序的结构化,用c语言编写的程序可移植性好,c语言可以作为系统设计语言、应用程序设计语言,c语言具有绘图能力和强大的数据处理能力,它是数值计算的高级语言225.根据自己的认识,写出c语言的特点答案:语言简洁,使用灵活方便,具有丰富的运算符和数据类型,便于实现程序的结构化,用c语言编写的程序可移植性好,c语言可以作为系统设计语言、应用程序设计语言,c语言具有绘图能力和强大的数据处理能力,它是数值计算的高级语言。226.关键字和一般标识符有什么不同?答案:标识符用来标识源程序中的某个对象的名字,一个标识符由字母、数字和下划线组成。关键字可以定义变量、表达式语句功能和对一些文件进行预处理,关键字已被编译系统本身使用,所以用户编写程序时不能够使用这些关键字来作为标识符,如int,if,for等。227.if语句中的条件表达式可以是任意的合法表达式吗?Switch语句中break的作用是什么?答案:可以是任意数值。在switch语句中,break语句可使流程立即跳出switch语句体不执行其他的case。228.写出一个程序的组成答案:程序名、预编译指令、标准的输入输出、c语言的主函数、函数开始标志、定义变量、给变量赋值、输出结果、程序正常结束、函数结束标志229.字符数组与字符串是否相同?若不相同,有何区别?答案:不相同,C语言中没有专门的字符串变量,如果要将一个字符串存放在变量中,必须使用字符数组,即用一个字符型数组来存放一个字符串,数组中每一个元素放一个字符。字符串必须以’\0’结尾,字符数组可以包含多个’\0’230.三种循环结构中的条件是循环进行的条件还是循环结束的条件?循环结构中break语句和continue语句的作用是什么,二者有何区别?答案:for语句、while语句:循环进行的条件;do-while语句:循环结束的条件;break可用于switch语句,表示跳出整个switch块,而continue则不能用于switch语句,它们都可用于循环语句的循环体,break用于立即退出当前循环,而continue仅跳过当次循环,本次循环体内不执行continue语句后的其他语句,但下次循环还会执行。231.C
语言以函数为程序的基本单位,有什么好处?答案:函数是程序的基本组成单位,可以用函数作为程序模块来实现c语言程序。利用函数不仅可以使程序模块化,而且可以使程序设计的简单和直观,提高程序的可读性和可维护性。还可以把程序中的一些计算编成通用函数,以供随时使用。232.c语言为什么要规定,对所有使用的变量要“先定义,后使用”?答案:凡是未被事先定义的变量,在使用过程中不会被当作变量名,这样能够保证程序中的变量名使用正确。每一个变量被指定一个确定的数据类型,在编译时就能为其分配相应的存储单元。指定一个变量属于一个类型,在编译的时候就能检查该变量是否使用正确。通俗来讲,给变量一个存储位置,方便操作。233.c语言的特点以及C语言与Python的比较?答案:c语言的数据类型丰富,具有现代语言的各种数据结构,能实现复杂的运算。c语言使,用灵活方便,便于实现程序的结构化,节省内存。
C语言与Python的比较:
(1)首先Python的使用要更加简单灵活,要实现相同的功能,Python的代码量通常只有C语言的30%
(2)C语言是面向过程的语言,很多时候需要自己手动实现函数来完成一些功能,Python中引入了类和对象,是面向对象编程的语言。
(3)Python拥有许多优秀的第三方库,在编程的时候更加的简单。
(4)c语言的数据类型丰富,Python的数据类型只有数字、字符串、列表、元组、集合、字典6种,不需要事先定义变量类型,使用更加简便。234.if语句中的条件表达式可以是任意的合法表达式吗?Switch语句中break的作用是什么?答案:可以是任意数值。在switch语句中,break语句可使流程立即跳出switch语句体不执行其他的case。235.C
语言以函数为程序的基本单位,有什么好处?答案:函数是程序的基本组成单位,可以用函数作为程序模块来实现c语言程序。利用函数不仅可以使程序模块化,而且可以使程序设计的简单和直观,提高程序的可读性和可维护性。还可以把程序中的一些计算编成通用函数,以供随时使用。236.字符数组与字符串是否相同?若不相同,有何区别?答案:不相同,C语言中没有专门的字符串变量,如果要将一个字符串存放在变量中,必须使用字符
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广州广东广州天河区长兴街道综合事务中心招聘病媒生物防制消杀员笔试历年典型考点(频考版试卷)附带答案详解
- 广元四川广元苍溪县招聘县级公立医院员额人员29人笔试历年典型考点(频考版试卷)附带答案详解版
- 天津2025年天津市幼儿师范学校博士岗位教师招聘3人笔试历年典型考点(频考版试卷)附带答案详解
- 2024年04月上海2024届宁波银行上海分行校园实习生招考笔试历年参考题库附带答案详解
- 2024年03月重庆银行高新支行招考笔试历年参考题库附带答案详解
- 2024年03月苏州农商银行度春季校园招考26名人员笔试历年参考题库附带答案详解
- 2024年中国观光型游艇市场调查研究报告
- 宿迁江苏宿迁泗阳县公安局招聘警务辅助人员73人笔试历年典型考点(频考版试卷)附带答案详解版
- 2024年03月广州银行江门分行社会招考笔试历年参考题库附带答案详解
- 2025版油气开采权转让与勘探开发技术服务合同3篇
- 陕西省咸阳市2023-2024学年高一上学期期末考试 物理 含解析
- 程序员个人年终总结
- (正式版)HG∕T 21633-2024 玻璃钢管和管件选用规定
- 蔚来用户运营分析报告-数字化
- 南京市2023-2024高一上学期期末英语试卷及答案
- 《供应链管理》期末考试复习题库(含答案)
- 小车多方式运行的PLC控制——PLC控制系统课程设计
- (完整版)机加中心绩效考核方案
- 个人简历表格标准模板(Word)
- 相信自己歌词(共1页)
- 儿童相声《没考好》
评论
0/150
提交评论