(a<=10||a>=15)
C、a>10&&a<15D、!
(a<=10)&&!
(a>=15)
19、已知x=43,ch=’A’,y=0;则表达式(x>=y&&ch<’B’&&!
y)的值是:
( )
A、0B、语法错C、1D、“假”
20、表达式17%4/8的值为:
( )
A、0B、1C、2D、3
21、语句printf(“%d”,(a=2)&&(b=-2));的输出结果是:
( )
A、无输出B、结果不确定C、-1D、1
22、一个可执行的C程序的开始执行点是:
( )
A.程序中的第一个语句B.包含文件中的第一个函数
C.名为main的函数D.程序中的第一个函数
23、组成C语句的一个必不可少的符号是:
( )
A.逗号B.引号C.冒号D.分号
24、若将int、long、float等类型的数据进行混合运算,其结果的数据类型是:
( )
A.intB.longC.floatD.double
25、下述是C语言中有关变量定义的几个说法,正确的是:
( )
A.变量可以不定义直接使用
B.一个说明语句只能定义一个变量
C.几个不同类型的变量可在同一语句中定义
D.变量可以在定义时进行初绐化
26、与x*=y+z等价的赋值表达式是:
( )
A.x=y+zB.x=x*y+z
C.x=x*(y+z)D.x=x+y*z
27、当代电子计算机能够自动地处理指定的问题是因为:
( )
A.计算机是电动的
B.有解决该问题的计算机程序
C.事先存储了解决该问题的程序
D.以上都不是
28、以下叙述中最准确的是:
( )
A.计算机程序是处理某一问题所有指令的集合
B.计算机程序是处理某一问题所用到的所有数据的集合
C.计算机程序是处理某一问题的所有指令及其数据的集合
D.计算机程序是处理某一问题的所有指令及其数据的有序集合
29、关于计算机程序设计,以下描述最准确的是:
( )
A.程序设计就是用语言来编写程序
B.程序设计就是用计算机语言来编写程序
C.程序设计就是用计算机程序设计语言来编写程序
D.程序设计就是用计算机能识别的语言来编写程序
30、目前编写计算机程序一般采用的是:
( )
A.机器语言B.汇编语言 C.高级语言 D.英语
31、设计一个计算机程序最基本的工作是:
( )
A.制定正确的算法 B.选择合理的数据结构
C.制定正确的算法和选择合理的数据结构 D.以上都不是
32、算法具有五个特性,以下选项中不属于算法特性的是:
( )
A.有穷性 B.简洁性 C.可行性 D.确定性
33、下述哪一个不是结构化程序基本结构:
( )
A.顺序 B.选择 C.循环 D.嵌套
34、C语言是一种:
( )
A.机器语言 B.汇编语言 C.高级语言 D.以上都不是
35、C语言源程序的扩展名为:
( )
A..exe B..c C..obj D..cpp
36、C程序编译后最终产生(即计算机执行)的文件的扩展名为()
A..exe B..c C..obj D..cpp
37、下列各项中,不是C语言的特点是:
( )
A.语言简洁、紧凑,使用方便
B.程序执行效率高,可移植性好
C.能实现汇编语言的大多数功能
D.有较强的网络操作功能
38、构成C语言源程序的基本单位是:
( )
A.子程序 B.过程 C.文本 D.函数
39、下列叙述正确的是:
( )
A.C语言源程序可以直接在DOS环境中运行
B.编译C语言源程序得到的目标文件可以直接在DOS环境中运行
C.C语言源程序经过编译、连接得到的可执行程序可以直接在DOS环境中运行
D.C语言源程序可以直接在VC++环境中运行
40、某C程序由一个主函数main()和一个自定义函数max()组成,则该程序:
( )
A.写在前面的函数先开始执行
B.总是从main()函数开始执行
C.总是从max()函数开始执行
D.写在后面的函数先开始执行
41、以下叙述不正确的是:
( )
A.分号是C语句的必要组成部分
B.C程序的注释可以写在语句的后面
C.函数是C程序的基本单位
D.主函数的名字不一定用mian表示
42、以下为C语句的是:
( )
A.a=8 B.a++; C.if(a>8) D.#include
以下不是C语句的是:
( )
A.a=8; B.a++; C.if(a>8); D.for(i=1;i<5;i++)
43、以下所列语句中,合法的语句是:
()
A.a=1,b=2B.++a;C.a=a+1=5D.y=int(a);
44、C程序中的复合语句指的是:
( )
A.并列的多个C语句B.写在同一行中的多个C语句
C.用一对大括号对括的多个C语句D.就是函数体中的语句
45、当一个很长的C语句(中间无字符串)在一行写不下(超出屏幕的宽度)时,应该:
()
A.由系统自动换行
B.立即按回车键换行
C.在任意一个空格处按回车键换行
D.输入一个分号后并按回车键换行换行
46、在x值处于-2~2,4~8时值为“真”,否则为“假”的表达式是:
()。
A.(2>x>-2)||(4>x>8)
B.!
(((x<-2)||(x>2)&&((x<=4)||(x>8))
C.(x<2)&&(x>=-2)&&(x>4)&&(x<8)
D.(x>-2)&&(x>4)||(x<8)&&(x<2)
二、判断题
1.()C语言是严格区分大写和小写的,因次主函数不能写成main()以外的其他形式。
2.()C语言程序是从源文件的第一条语句开始执行的。
3.()C语言对其数据在内存中所占用的实际字节数是有明确规定的。
4.()C语言中/*..*/之间的注释内容是不能跨行的。
5.()C语言中多个以“;”结束的语句不能放在同一行。
6.()以下常数:
'101',e3,’\78’,(2+3)e(4-2)都是不合法的。
7.()变量说明语句inta=b=c=23;是正确的。
8.()字符型数据不可以和整数数据一起进行算术运算。
9.()C语句:
3*x*x+4*x+1+6sin(x)=y.是可以允许的。
10.()表达式m=(a=4,4*5)和m=a=4,4*5的值是相等的。
11.()C语言中强制类型转换不会改变原变量的原有数据类型。
12.()表达式j=-i++和j=-(i++)不相等
13.()程序段:
i=8,j=10;printf("%d,%d,%d,%d\n",i,j,++i,j++);其结果9,10,9,10.
14.()C语言中放在“”之间的内容都被视为字符串的一个构成部分,都可以在屏幕上原样显示。
15.()计算机程序的基本组成是:
指示计算机如何去解决某一问题的一组指令。
16.()计算机程序的执行过程实际上是对程序所表达的数据进行处理的过程。
17.()目前程序设计的理念已经从“面向过程的程序设计”向“面向对象的程序设计”方面转变。
18.()任何一个计算机程序都可以用机器语言、汇编语言和高级语言来编写。
19.()有人曾提出:
计算机程序=算法+数据结构。
20.()在程序设计中提到的算法就是“解决问题的方法和步骤”
21.()在程序设计中提到的数据结构就是“程序处理的对象的表示方法”
22.()计算机程序的算法就是解决“做什么”和“怎么做”的问题。
23.()结构化程序设计的基本理念是:
将一个较大的问题细分成若干个较小问题的组合。
24.()C程序的编译是从程序的第一行开始,到程序的最后一行结束。
25.()C程序的编译是从主函数的第一行开始,到主函数的最后一行结束。
26.()C程序的执行是从程序的第一行开始,一直到程序的最后一行结束。
27.()C程序的执行是从主函数的第一行开始,一直到主函数的最后一行结束。
28.()设x、t均为int型变量,则执行语句"x=10;t=x&&x>10;"后,t的值为0
29.()若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变
30.()在C程序中,%是只能用于整数运算的运算符
31.()在C语言中,逻辑“真”等价于不等于0的数
32.()C语言中字符型、整型、实型都能用八进制表示
33.()在VC语言中,5种基本数据类型的存储空间长度的排列顺序为:
char34.()变量的三要素是:
变量名、变量类型、变量的值。
三、多选题
1.目前程序设计采用的基本方法有:
A.面向过程的程序设计 B.面向对象的程序设计
C.面向问题的程序设计 D.面向机器的程序设计
第4章顺序结构
一、选择题
1、下面程序的输出是:
( )
main()
{intk=11;
printf("k=%d,k=%o,k=%x\n",k,k,k);
}
A)k=11,k=12,k=13B)k=11,k=13,k=13
C)k=11,k=013,k=oXbD)k=11,k=13,k=b
2、以下合法的C语言赋值语句是:
( )
A)a=b=58B)k=int(a+b);C)a=58,b=58D)--i;
3、以下程序的输出结果是:
( )
main()
{intx=10,y=3;
printf(“%d\n”,y=x/y);}
A)0B)1C)3D)不确定
4、若变量已正确说明为int类型,要给a,b,c输入数据,以下正确的输入语句是:
( )
A)read(a,b,c);B)scanf(“%d%d%d”,a,b,c);
C)scanf(“%D%D%D”,%a,%b,%c);D)scanf(“%d%d%d”,&a,&b,&b);
5、执行下面程序段后,c3中的值是:
( )
intc1=1,c2=2,c3;
c3=c1/c2;
A)0B)1/2C)0.5D)1
6、若执行以下程序段,其输出结果是:
( )
inta=0,b=0,c=0;
c=(a-=a-5),(a=b,b+3);
printf(“%d,%d,%d\n”,a,b,c);
A)0,0,0B)0,0,5C)5,0,5D)-10,0,-10
7、以下程序段的输出是:
( )
floata=57.666;
printf(“*%2.2f*\n”,a);
A)*57*B)*58*C)*57.66*D)*57.67*
8、若有以下定义和语句:
( )
inta=5,b
b=a++;
此处b的值是:
( )
A)7B)6C)5D)4
9、若有以下定义和语句:
( )
charc1='b',c2='e';
printf("%d,%c\n",c2-c1,c2-'a'+'A')
则输出结果是:
( )
A)2,MB)3,EC)2,eD)输出结果不确定
10、以下程序的输出结果是:
( )
main()
{intx=10,y=10;
printf("%d%d\n",x--,--y);}
A)1010B)99C)910D)109
11、在C语言中,如果下面的变量都是int类型,则输出结果是:
( )
sum=pad=5;
pad=sum++,pad++,++pad;
printf("%d\n",pad);
A)7B)6C)5D)4
12、以下程序的输出结果:
( )
#include
main()
{inti=010,j=10;
printf("%d,%d\n",++i,j--);}
A)11,10B)9,10C)010,9D)10,9
13、在C语言中,short类型数据的范围是-32768~32767,下面程序段的输出结果是:
( )
shorti=65536;
printf("%d\n",i);
A)65536B)0
C)1D)超出取值范围,无输出结果
14、已知字符A的ASCII码为十进制的65,下面程序的输出是:
( )
main()
{charch1,ch2;
ch1='A'+'5'-'3';
ch2='A'+'6'-'3';
printf("%d,%c\n",ch1,ch2);}
A)67,DB)B,C
C)C,DD)不确定的值
15、若有定义和语句:
chars;s="abcd";printf("%d\n",s);
则结果是:
( )
A)输出97B)输出a
C)输出adcbD)编译不能通过
16、若有定义:
intx,y;chara,b,c;并有以下输入数据(此处代表换行,代表空格):
12
ABC
则能给x赋整数1,给y赋数2,给a赋字符A,给b赋字符B,给c赋字符C的正确程序段是:
( )
A)scanf("x=%dy=%d",&x,&y);a=getchar();c=getchar();
B)scanf("%d%d",&x,&y);a=getchar();b=getchar();c=getchar();
C)scanf("%d%d%c%c%c",&x,&y,&a,&b,&c);
D)scanf("%d%d%c%c%c%c%c%c",&x,&y,&a,&a,&b,&b,&c,&;
17、两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是:
( )
main()
{intx;
scanf("%d",&x);
if(x++>5)
printf("%d",x)
else
printf("%d\n",x--);}
A)7和5B)6和3C)7和4D)6和4
18、若执行下面的程序从键盘输入3和4,则输出是:
( )
main()
{inta,b,s;
scanf("%d%d",&a,&b);
s=a;
if(a
s=s*s;
printf("%d\n",s);}
A)14B)16C)18D)20
19、设i是int型变量,f是float型变量,用下面的语句给这两个变量输入值
scanf("i=%d,f=%f",&i,&f);
为了把100和765.12分别赋给i和f,则正确的输入为:
( )
A)100<空格>765.12<回车>B)i=100,f=765.12<回车>
C)100<回车>765.12<回车>D)x=100<回车>,y=765.12<回车>
20、以下程序的输出结果是:
( )
#include
main()
{intn;
printf("%d\n",n);}
A)-1B)0C)1D)不确定
二、判断题
1.()在C语言中,实型数据在内存都中占4个字节。
2.()在C语言中,参加算术(+,-,*,/,%)运算的数据可以是任何类型的数据。
3.()若有定义和语句:
inta;charc;scanf("%d,%c",&a,&c);当通过键盘输入:
10,‘A’之后,则变量a中存放的是10,变量c中存放的是‘A’。
4.()C语言中,变量名只能是小写字母表示,符号常量名可用大写表示
5.()在C语言中,变量可以不要定义,直接使用
6.()一个C语言程序总是从主函数开始执行的
7.()注释语句必须用/*和*/括起来,且只能位于某一语句的后面
8.()“a”和‘a’均是占用1个字节的内存空间的数据
三、多选题
1.以下所列语句中,不合法的语句是:
( )
A、a=1,b=2 B、++a; C、a=a+1=5; D、y=(int)a; E、a=b=c=10;
2.下列描述正确的是:
( )
A.putchar函数的作用是向屏幕输出一个字符
B.putchar函数能在屏幕上输出控制字符
C.putchar(c)函数中,c只能是字符型变量,不能是整型变量
D.putchar函数能在屏幕上输出转义字符
E.putchar函数的使用需要包含“stdio.h”头文件
3.下列描述正确的是:
( )
A.getchar函数只能接收一个字符
B.getchar函数得到的字符可以赋给一个字符变量
C.getchar函数得到的字符可以赋给一个整型变量
D.getchar函数得到的字符可以作为表达式的一部分
E.getchar函数是编程者自定义的函数
4.printf函数中,关于格式字符描述正确的是:
( )
A.格式字符o表示以八进制无符号形式输出整数
B.格式字符u表示以无符号十进制形式输出整数
C.格式字符x表示以无符号十六进制形式输出整数
D.格式字符f表示以实数形式输出单、双精度数
E.格式字符e表示以浮点数形式输出单、双精度数
5.假设int x,y,z;若从键盘给x、y、z输入数据,下列不正确的输入语句是:
( )
A.inputx、y、z;
B.scanf("%d%d%d",&x,&y,&z);
C.scanf("%d%d%d",x,y,z);
D.read("%d%d%d",&x,&y,&z);
E.scanf("%d%d%d,&x,&y,&z");
6.假设float x,y,z;,并通过scanf("%f%f%f",&a,&b,&c);对a赋于10.0,b赋予22.0,c赋予33.0的值,下面正确的输入形式是:
( )(注:
符号︻代表空格)
A、10<回车>22<回车>33<回车>
B、10.0<回车>22.0<回车>33.0<回车>
C、10.0,22.0,33.0<回车>
D、10.0︻22.0︻33.0<回车>
E、10︻22︻33<回车>
7.若有inta,c;charb;并通过scanf("%f%c%f",&a,&b,&c);对a赋于整数10,b赋予字符M,c赋予整数33的值,下面正确的输入形式是:
( )(注:
符号︻代表空格)
A、10<回车>M<回车>33<回车>
B、10M33<回车>
C、10︻M︻33<回车>
D、10M<回车>33<回车>
E、10M︻<回车>33<回车>
若有charch;,下面可以对变量c正确赋值的语句是:
( )
A.ch=‘A’;
B.getchar(ch);
C.ch=getchar();
D.scanf(“%c”,&ch);
E.printf(“%c”,ch=‘B’)