第一篇:C语言基础试题
一、单选题:
1、以下说法中正确的是(c)
A.C语言程序总是从第一个的函数开始执行
B.在C语言程序中,要调用的函数必须在main()函数中定义
C.C语言程序总是从main()函数开始执行
D.C语言程序中的main()函数必须放在程序的开始部分
2、C语言可执行程序的开始执行点是(c)
A.程序中的一条可执行语句
B.程序中第一个函数
C.程序中的main函数
D.包含文件中的第一个函数
3、C程序是(B)
A.顺序执行
B.从Main函数开始
C.从函数体开始
D.任意语句
4、C语言程序的基本单位是_____B__.A.语句
B.函数
C.程序行
D.字符
5、C语言程序由(C)组成
A.子程序
B.过程
C.函数
D.主程序段程序
6、一个C程序的执行是从(A)
A.本程序的main函数开始,到main函数结束
B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束
C.本程序的main函数开始,到本程序文件的最后一个函数结束
D.本程序文件的第一个函数开始,到本程序main函数结束
7、以下叙述正确的是(C)
A.在C程序中,main函数必须位于程序的最前面
B.C程序的每行中只能写一条语句
C.C语言本身没有输入输出语句
D.在对一个C程序进行编译的过程中,可发现注释中的拼写错误
8、以下叙述不正确的是 D
A.一个C源程序可由一个或多个函数组成
B.一个C源程序必须包含一个main函数
C.C程序的基本组成单位是函数
D.在C程序中,注释说明只能位于一条语句的后面
9、C语言规定,在一个源程序中,main函数的位置(C)
A.必须在最开始
B.必须在系统调用的库函数的后面
C.可以任意
D.必须在最后
10、一个C语言程序是由 B
A.一个主程序和若干子程序组成
B.函数组成
C.若干过程组成
D.若干子程序组成
二、填空题:
1、函数体用____{___开始,用____}__结束。
2、C源程序的基本单位是____函数__________
3、一个C源程序中至少应包括一个____MAIN函数_________
4、在一个C源程序中,注释部分两侧的分界符分别为___/*_____和_____*/___
三、程序设计题:(这两个程序设计题上课讲过我就不做了,自己写吧)
1、编写一个C程序,输出以下信息:
*********************
Very good!
*********************
2、编写一个程序,输入a,b,c三个值,输出其中最大者。
第2 章 程序设计的灵魂——算法
一、单选题:
1、将三个数排序需要比较__B____次。
A.2 B.3 C.4
D.不确定
2、算法的表示方法有___A_____。
A.自然语言,传统流程图,N-S流程图,伪代码
,计算机语言
B.高级语言,汇编语言,机器语言
C.C语言,QBASIC语言,InterDev
D.图形图像法,描述法,编程法
二、问答题:
1、什么是结构化的算法?为什么要提倡结构化的算法?
2、算法有哪些特性?
3、什么叫算法?为什么要提倡结构化算法?
第3 章 数据类型、运算符和表达式
一、单选题:
1、设 int b=2;表达式b/(b*2)的值是____A____.A.0
B.0.5
C.0.500000
D.0.000000
2、设有如下定义:
int a=1,b=2,c=3,d=4,m=2,n=2;
则执行表达式:(m= a < b)&&(n= c > d)后,m的值为__A___。
A.1 B.2 C.3 D.0
3、设有a=b=c=2,求表达式a+++b+++c++的结果是___A____。
A.6 B.9 C.8
D.表达式出错
4、表示关系X < =Y < =Z的C语言表达式为___A_____。
A.(X < =Y)&&(Y < =Z)
B.(X < =Y)AND(Y < =Z)C.(X < =Y < =Z)
D.(X < =Y)&(Y < =Z)
5、选出运行结果为4的表达式(C);
A.int i=0,j=1;(i=3,(++j > +1))
B.int i=0,j=1;(j==1)?(i=1):(i=3)
C.int i=1,j=1;i+=j+=2;
D.int i=1,j=0;j=i=((i=3)*2);
6、表达式(a=3*5,a*5),a+5的值是多少(B)
A.20
B.80
C.不能确定
D.15
7、设有整型变量a,b,c,它们的初值是1运行表达式:
++a||++b&++c后,a,b,c的值分别是:___A_____。(这个最好电脑上通过一下)
A.2,1,1
B.2,2,1
C.1,2,1
D.1,1,2
8、下面的表达式中__A__满足:当x为偶数时值为“真”,为奇数时值为“假”
A.x%2==0
B.!x%2!=0
C.2*x/2-x==0
D.!(x%2)
9、C语言的对语句中用作判断的表达式一般为__E__
A.关系表达式
B.逻辑表达式
C.算术表达式
D.逻辑表达式和关系表达式
E.关系或逻辑表达式
10、若已定义x和y为double型,则表达式:x=1,y=x+3/2的值是(D)A.1 B.2
C.2.0
D.2.5
11、若有以下定义:
char a;int b;
float c;double d;
则表达式a*b+d-c值的类型为__D____.A.float
B.int
C.char
D.double
12、以下定义和语句:
char cl='b',c2='e';
printf(″%d,%cn″,c2-c1,c2-'a'+'A');
则输出结果是:___B____.A.2,M
B.3,E
C.2,E
D.输出项与对应的格式控制不一致,输出结果不确定
13、语句:printf(“%d n”,12&&12);的输出结果是___B_____.A.12 B.1
C.24
D.0
14、设A=3,B=4,执行
printf(“%d,%d”,(A,B),(B,A));的输出是___B___.A.3,4
B.4,3
C.3,3
D.4,4
15、若x和y都是int型变量,x=100,y=200,且有下面的程序片段:
printf(“%d”,(x,y));
上面程序片段的输出结果是 A
A.200
B.100
C.200 100
D.输出格式符不够,输出不确定的值
16、表达式:10!=9的
值是__D_
A.true
B.非零值
C.0
D.1
17、请读程序:
main()
{ int A;
float B, C;
scanf(“%2d%3f%4f”,&A,&B,&C);
printf(“nA=%d,B=%f,C=%fn”,A,B,C);}
若运行时从键盘上输入9876543210(表示回车),则上面程序的输出结果是 B
A.A=98, B=765, C=4321
B.A=10, B=765.000000, C=4321.000000
C.A=98, B=765.0, C=4321.0
D.以上答案都不正确
18、执行程序段char str[20]={'a','b','c','o'};
int len=strlen(str);
变量len的值为(C)
A.20 B.4 C.3
D.3或4或20
19、若x,i,j和k都是int型变量,则计算下面表达式后,x的值为 C
x=(i=4,j=16.k=32)A.4
B.16
C.32
D.52
20、下列四组选项中,均不是C语言关键字的选项是 A
A.define IF type
B.getc char printf
C.include scanf case
D.while go pow
21、下列四个选项中,均是C语言关键字的选项是 B
A.auto enum include
B.switch typedef continue
C.signed union scanf
D.if struct type
22、C语言中的标识符只能由字母,数字和下划线三种字符组成,且第一个字符 C
A.必须为字母
B.必须为下划线
C.必须为字母或下划线
D.可以是字母,数字和下划线中任一字符
23、下面四个选项中,均是不合法的浮点数的选项是 B
A.160.0.12 e3
B.123 2e4.2.e5
C.-.18 123e4 0.0
D.-e3.234 1e3
24、已知各变量的类型说明如下: A
int k,a,b;
unsigned long w=5;
double x=1.42;
则以下不符合C语言语法的表达式是
A.x%(-3)
B.w+=-2
C.k=(a=2,b=3,a+b)
D.a+=a-=(b=4)*(a=3)
25、以下不正确的叙述是 D
A.在C程序中,逗号运算符的优先级最低
B.在C程序中,APH和aph是两个不同的变量
C.若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b中的值不变
D.当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值
26、若有定义:int a=7;float x=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是 A
A.2.500000
B.2.750000
C.3.500000
D.0.000000
27、设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为 C
A.int
B.float
C.double
D.不确定
28、以下关于运算符优先顺序的描述中正确的是 C
A.关系运算符 < 算术运算符 < 赋值运算符 < 逻辑运算符
B.逻辑运算符 < 关系运算符 < 算术运算符 < 赋值运算符
C.赋值运算符 < 逻辑运算符 < 关系运算符 < 算术运算符
D.算术运算符 < 关系运算符 < 赋值运算符 < 逻辑运算符
29、若有条件表达式(exp)?a++:b--,则以下表达式中能完全等价于表达式(exp)的是 B
A.(exp==0)
B.(exp!=0)C.(exp==1)
D.(exp!=1)
30、设 i
nt x=1, y=1;表达式(!x||y--)的值是 B A.0 B.1 C.2
D.-1
二、填空题:
1、字符串“This is a string“的存储形式为___顺序存储_______。
2、写出下问表达式运算后a的值设原来a=12
1)a+=a 24
2)a-=a 0
3)a/=a+a 0
4)a+=a-=a*=a 0
3、求下面算术表达式的值
1)x+a%3*(int)(x+y)%2/4 2.5
设x=2.5,a=7,y=4.7
2)(float)(a+b)/2+(int)x%(int)y 3.5
设a=2,b=3,x=3.5,y=2.5
4、写出该程序运行的结果。
#include
void main()
{ int i, j, k=10;
i=(j=k)>0;
j=i==j;
printf(``%2d,%2dn``,i,j);1 0
k=!i==++j;
printf(”%2d, %2d, %2dn“, i, j, k);} 1 1 0
5、main()
{char st='A';
int i=10;st=st+i;i=st%i;
printf(”%C,%dn“,st,i);}
已知字母A的ASCII码为65
结果:__K,5__
6、假设所有变量均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为_____9_______
7、C语言中的标识符只能由三种字符组成,它们是___字母____,____数字__和___下画线_______
8、已知字母a的ASCII码为十进制数97,且设ch为字符型变量,则表达式ch='a'+'8'-'3'的值为___f_______
9、若x和y都是double型变量,且x的初值为3.0,y的初值为2.0,则表达式 pow(y,fabs(x))的值为____8.0_____
10、若有定义:int e=1,f=4,g=2;
float m=10.5,n=4.0,k;则计算赋值表达式k=(e+f)/g+sqrt((double)n)*1.2/g+m后k的值是___13.7_________
第4 章 顺序程序设计
一、单选题:
1、输入一个华氏温度,要求输出摄氏温度。计算公式为: c=5/9(F-32),以下程序正确的是(B)
A.main(){ float c,F;scanf(”%f,%f“,&c,&F);c=5/9*(F-32);printf(”摄氏温度是:%fn“,c);}
B.main(){ float c,F;scanf(”%f,%f“,&c,&F);c=5*(F-32)/9;printf(”摄氏温度是:%fn“,c);}
C.main(){ float c,F;scanf(”%f,%f“,&c,&F);c=5%9*(F-32);printf(”摄氏温度是:%fn“,c);}
D.main(){ float c,F;scanf(”%f,%f“,&c,&F);c=5.0/9.0(F-32);printf(”摄氏温度是:%fn“,c);}
2、以下程序的输出结果是 C
main()
{
int a=12,b=12;
printf(”%d %dn“,--a,++b);}
A.10 10
B.12 12
C.11 13
D.11 10
3、有如下程序
main0
{
int y=3,x=3,z=1;
printf(”%d %dn“,(++x,y++),z+2);}
运行该程序的输出结果是 D
A.3 4
B.4 2
C.4 3
D.3 3
4、能正确表示逻辑关系:”a ≥ =10或a ≤ 0“的C语言表达式是 D
A.a > =10 or a < =0
B.a > =0||a < =10
C.a > =10 &&a < =0
D.a < =0 || a>=10
5、下列程序的输出结果是 C
main(){
double d=3.2;
int x,y;
x=1.2;y=(x+3.8)/5.0;
printf(”%d n“, d*y);
} A.3
B.3.2 C.0
D.3.07
二、填空题:
1、从键盘输入一个大写字母,要求改用小写字母输出,程序如下办 #inc
lude
main()
{ char c1,c2;
(1)___scanf(“%c”,&c1);______;
printf(”%c,%dn“,c1,c1);
(2)___c2=c1+32;__________;
printf(”%c,%dn“,c2,c2);}
2、以下程序不用第三个变量,实现将两个数进行对调操作:
#include
main()
{ int a , b;
scanf(”%d%d“ , &a , &b);
printf(”a=%d b=%dn“ , a , b);
a=(_a+b_________);b=(_a-b_______);a=(____a-b_____);
printf(”a=%d b=%dn“,a,b);}
3、写出该程序运行的结果。K,5
main()
char st='A';
int i=10;
st=st+i;
i=st%i;
printf(”%c,%dn“,st,i);}
(已知字母A的ASCII码为65)
四、程序设计题:
1、用scanf函数输入一个年份year,然后用一个赋值语句计算这一年中2月份的天数datesum,最后用格式输出函数printf输出datesum值。
具体要求如下:(1)所有变量为整型
(2)输入前要有提示(3)输出结果时要有必要的文字说明
#include
void main()
{ int year,datesum;
clrscr();
Printf(“请任意输入一个年份值:”);
Scanf(“%d”,&year);
Datesum=((year%400= =0)||((year%4= =0)&&(year%100!=0)))?29:28;
Printf(“n%d二月份的天数为:%d”,year,datesum);}
2、由键盘输入一个小于256的十进制整数,然后将该数转换成八位的二进制形式输出。
具体要求如下:
(1)输入前要有提示
(2)若转换成的二进制数不够八位,则在前面添“0”补足八位。例如:十进制数79转换成的二进制数为1001111,但应输出01001111
(3)分别输入十进制数54,96,175,233,255来运行这个程序。
#include
#include
void main()
{ int number,b,i,n=0;
long result=0,p;
clrscr();printf(“请输入一个大于0小于256的整数”);
scanf(“%d”,&number);p=1;
Printf(“n%d=”,number);do
{ b=number%2;
result=result+p*b;
p=p*10;n++;
number=number/2;}
While(number!=0)
For(i=8;i>n;i--)
Printf(“0”);
Printf(“%ld B”,result);}
第5 章 选择结构程序设计
一、单选题:
1、以下程序的输出结果是 C
main()
{ int a=-1,b=1;
if((++a < 0)&&!(b--< =0))
printf(”%d %dn“,a,b);
else
printf(”%d %dn“,b,a);
}
A.-1 1
B.0 1
C.1 0
D.0 0
2、两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是___A_
main(){
int x;
scanf(”%d“,&x);
if(x++> 5)printf(”%d“,x)
else printf(”%dn“,x--);}
A.7和5
B.6和3
C.7和4
D.6和4
3、若执行下面的程序从键盘输入3和4,则输出是____B___
main()
{ int a,b,s;
scanf(”%d%d“,&a,&b);
s=a;
if(a < b)s=b;
s=s*s;
printf(”%dn“,s);}
A.14
B.16
C.18
D.20
4、下面的程序是__D____
main(){ in
t x=3,y=0,z=0;
if(x==y+z)printf(”****“);
else printf(”####“);}
A.有语法错误不能过通过编译
B.输出****
C.可能通过编译,但是不能通过连接,因而不能运行
D.输出####
5、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系 的表达式为____D____。
A.a < > 0
B.!a
C.a=0
D.a!=0
6、在C语言中的if语句中,用作判断的表达式为(D)
A.关系表达式
B.逻辑表达式
C.算数表达式
D.任意表达式
7、以下程序输出结果是 B
main()
{ int m=5;
if(m++ > 5)printf(”%dn“,m);
else printf(”%dn“,m--);} A.7 B.6 C.5
D.4
8、两次运行下面的程序,如果从键盘上分别输入6和4,则输出结果是 A
main()
{ int x;
scanf(”%d“,&x);
if(x + + 〉 5)printf(”%d“,x);
else printf(”%dn“,x--);}
A.7和5
B.6和3
C.7和4
D.6和4
9、为避免嵌套的条件分支语句if„else的二义性,C语言规定,C程序中的
else总是与__A__组成配对关系。
A.其上面距它最近的,并且没有其他else与其配对的if相配对
B.在同一行上的if
C.缩排位置相同的if
D.在其之前未配对的if
10、若变量都已经说明,则以下程序段输出为(B)
a=10;b=50;c=30;
if(a > b)a=b;b=c;c=a;
printf(”a=%db=%dc=%dn“,a,b,c);
A.a=10 b=50 c=10
B.a=10 b=30 c=10
C.a=50 b=30 c=10
D.a=50 b=30 c=50
11、在执行以下程序时,为了使输出结果为t=4,则给a和b输入的值应满足的条件是 D
main()
{ int s,t,a,b;
scanf(”%d,%d“,&a,&b);
s=1;
t=1;
if(a < 0)s=s+1;
if(a > b)t=s+1;
else if(a= =b)t=5;
else t=2*s;
printf(”t=%dn“,t);}
A.0 > a > b
B.a=0 < b
C.a=b < 0
D.a < b < 0
12、若变量都已经说明,则以下程序段输出为(B)
a=10;b=50;c=30;
if(a > b)a=b;b=c;c=a;
printf(”a=%db=%dc=%dn“,a,b,c);
A.a=10 b=50 c=10
B.a=10 b=30 c=10
C.a=50 b=30 c=10
D.a=50 b=30 c=50
13、执行下面语句后的输出为(D)
int i=-1;
if(i < =0)printf(”****n“)
else printf(”%%%%n“)
A.****
B.%%%%
C.%%%%C
D.有语法错,不能执行
14、下列语句正确的是(B)
A.if(a > b > c)temp=a
B.if((a=b)> 0)temp=a
C.int a=b=c=4
D.int a;scanf(%d,a)
15、若有定义: float w;int a, b;则合法的switch语句是(c)A.switch(w){ case1.0: printf(”*n“);case2.0: printf(”**n“);}
B.switch(a);{ case 1 printf(”*n“);case 2 printf(”*n“);}
C.switch(b){ case 1: printf(”*n“);case 2: printf(”*n“);} D.switch(a+b);{ case 1: printf(”*n“);default: printf(”n“);case 2 }
16、判断两个字符串S1 和 S2 相等的正确语句是__D__
A.if(S1=S2)
B.if(S1==S2)
C.if
(strcpy(S1,S2))
D.if(strcmp(S1,S2)==0)
17、以下不正确的if语句形式是 D是不是没写完啊
A.if(x>y&&x!=y)t=x++;
B.if(x==y)x+=y;
C.if(x!=y)scanf(”%d“,&x)else scanf(”%d“,&y);
D.if(x<>
18、已知 int x=10,y=20,z=30;以下语句执行后x,y,z的值是 B
if(x>y)
z=x;x=y;y=z;
A.x=10,y=20,z=30
B.x=20,y=30,z=30
C.x=20,y=30,z=10
D.x=20,y=30,z=20
19、当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是 B
if(a < b)
if(c < d)x=1;
else
if(a < c)
if(b < d)x=2;
else x=3;
else x=6;
else x=7;A.1 B.2 C.3
D.6
20、若运行以下程序时,从键盘输入 ADescriptor < CR >(< CR > 表示回车),则下面程序的运行结果是 D
#include
main()
{char c;
int v0=0,v1=0,v2=0;do{ switch(c=getchar())
{case 'a':case 'A':
case 'e':case 'E':
case 'i':case 'I':
case 'o':case 'O':
case 'u':case 'U':v1+=1;
default:v0+=1;v2+=1;}
}while(c!='n');
printf(”v0=%d,v1=%d,v2=%dn“,v0,v1,v2);}
A.v0=7,v1=4,v2=7
B.v0=8,v1=4,v2=8
C.v0=11,v1=4,v2=11
D.v0=12,v1=4,v2=12
21、阅读以下程序:
main()
{ int x;
scanf(”%d“,&x);
if(x--<5)printf(”%d“'x);
else printf(”%d“'x++);} 程序运行后,如果从键盘上输人5,则输出结果是 B A.3 B.4 C.5
D.6
22、若执行以下程序时从键盘上输入9,则输出结果是 B
main()
{ int n;
scanf(”%d“,&n);
if(n++<10)printf(”%dn“,n);
else printf(”%dn“,n--);}
A.11
B.10 C.9
D.8
23、若a、b、c1、c2、x、y、均是整型变量,正确的switch语句是 B
A.switch(a+b);{case 1:y=a+b;break;case 0:y=a-b;break;case 3:y=b-a,break;}
B.switch(a*a+b*b){case 3: case 1:y=a+b;break;}
C.switch a {case c1:y=a-b;break;case c2:y=a*d;break;default:x=a+b;}
D.switch(a-b){default:y=a*b;break;case 4:x=a+b;break;case 10:y=a-b;break;}
24、有如下程序
main()
{ int a=2,b=-1,c=2;
if(a < b)
if(b<0)c=0;
else c++;
printf(”%dn“,c);
}
该程序的输出结果是 C A.0 B.1 C.2
D.3
25、若有定义: float w;int a, b;则合法的switch语句是 D A.switch(w){case1.0: printf(”*n“);case2.0: printf(”**n“);}
B.switch(a);{ case 1 printf(”*n“);case 2 printf(”**n“);}
C.switch(b){ case a: printf(”*n“);default: printf(”n“);case b: printf(”**n“);}
D.switch(a+b){ case 1: printf(”*n“);case 2: printf(”**n“);default: printf(”n“);}
二、填空题:
1、#include < stdio.h >
main()
{int i=0,j=0,a=6;
if((++i > 0)||(j++ > 0))a++;
printf(”i=%d,j=%d,a=%dn“,i,j,a);}
结果:_i=1,j=0,a=7____
2、若从键盘输入58,则以下程序输出的结果是 _585858_______。
main()
{ int a;
scanf(”%d“,&a);
if(a>50)printf(”%d“,a);
if(a>40)printf(”%d“,a);
if(a>30)printf(”%d“,a);}
3、下列程序段的输出结果是 _passwarm___________。
int n='c';
switch(n++)
{ default: printf(”error“);break;
case 'a':case 'A':case 'B':printf(”good“);break;
'b':case
case 'c':case 'C':printf(”pass“);
case 'd':case 'D':printf(”warm“);
}
三、程序设计题:
1、编写程序,从键盘输入年号和月号,计算这一年的这一月共有几天.#include
Void main()
{ int year,m,sumdate;
Clrscr();
Printf(“请输入年号和月号:”);
Scanf(“%d%d”,&year,&m);
if(m==1||m==3||m==5||m==7||m==8||m=10||m==12)sumdate=31;
else if(m==4||m==6||m==9||m==11)sumdate=30;
else if((m==2)&&((year%400==0)||((year%4==0)&&(year%100!=0)))sumdate=29
else sumdate=28;
printf(“n%d.%d的天数为:%d”,year,m,sumdate);}
2、编写程序,从键盘输入x的值,计算并打印下列分段函数的值。(这个题目太容易,自己写吧)
y=0(x<60)y=1(60<=x<70)
y=2(70<=x<80)
y=3(80<=x<90)
y=4(x>=90)
3、编写程序,输入三个整数x,y,z,请把这三个数由小到大输出。(这个上课讲过)
[程序分析]
我们想办法把最小的数放到x上,先将x与y进行比较,如果x>y则将x与y的值进行交换,然后再用x与z进行比较,如果x>z则将x与z的值进行交换,这样能使x最小。
4、编写程序,输入一个5位数,判断它是不是回文数。即12321是回文数,个位与万位相同,十位与千位相同。
#include
Void main()
{ long date;
int a,b,c,d;
clrscr();
printf(“请任意输入一个五位的整数:”)
a=date/10000;
b=(date/1000)%10;
c=(date%100)/10;
d=date%10;
if(a==d&&b==c)
printf(“n%d是一个回文数”,date);else
printf(“n%d不是一个回文数”,date);}
5、编写程序,将一个不大于256的十进制正整数转化为8位的二进制数,若不足8位,则在前面补0,例如十进制数2转化位8位二进制数后是00000010,37转化后是00100101。
试求出十进制数5、23、189转化位8位二进制分别是多少?(要求必须使用循环语句实现)
(这个题目上一章做过了)
第6章 循环结构程序设计
一、单选题:
1、以下程序运行后,输出结果是
main()
{ int y=18,i=0,j,a[8];do
{ a[i]=y%2;i++;
y=y/2;
} while(y > =1);
for(j=i;j > 0;j--)printf(”%dn“,a[j]);
printf(”n“);}
A.1000
B.11010
C.01001
D.10100
2、以下程序的输出结果是
main()
{ int x=10,y=10,i;
for(i=0;x > 8;y=++i)
printf(”%d %d “,x--,y);
}
A.10 1 9 2
B.9 8 7 6
C.10 9 9 0
D.10 10 9 1
3、以下程序的输出结果是
main(){
int n=4;
while(n--)printf(”%d “,--n);
}
A.2 0
B.3 1
C.3 2 1
D.2 1 0
4、假定a和b为int型变量,则执行以下语句后b的值为
a=1;b=10;do
{ b=b-a;a++;}
while(b--> 0);
A.-3
B.-2
C.-1
D.-4
5、下面程序的输出是____
main()
{int x=3,y=6,a=0;
while(x++!=(y-=1)){
a+=1;
if(y < x)break;}
printf(”x=%d,y=%d,a=%dn“,x,y,a);}
A.x=4,y=4,a=1
B.x=5,y=5,a=1
C.x=5,y=4,a=3
D.x=5,y=4,a=1
6、定义如下变量:
int n=10
则下列循环的输出结果是______
while(n > 7){
n--;
printf(”%dn“,n);}
A.10 9 8
B.9 8 7
C.10 9 8 7
D.9 8 7 6
7、以下程序段的输出结果是_____
int x=3;do
{ printf(”%3d“,x-=2);}
while(!(--x));A.1
B.3 0 C.1-2
D.死循环
8、以下程序的输出结果是
main()
{ int i,k,a[10],p[3];
k=5;
for(i=0;i < 10;i++)a[i]=i;
for(i=0;i < 3;i++)p[i]=a[i*(i+1)];
for(i=0;i < 3;i++)k=k+p[i]*2;
printf(”%dn“,k);}
A.20
B.21
C.22
D.23
9、有以下程序
main()
{ int x,i;
for(i=1;i < =50;i++)
{ x=i;
if(x%2==0)
if(x%3==0)if(x%7==0)
printf(”%d“,i);} }
输出结果是
A.28
B.27
C.42
D.41
10、下面程序的输出是
main(){
int y=9;
for(;y > 0;y--){
if(y%3==0)
{printf(”%d“,--y);continue;} } }
A.741
B.852
C.963
D.875421
11、若X是int型变量,且有下面的程序片段:
for(X=3;X < 6;X++)
printf((X%2)?(”**%d“):(”##%dn“),X);
上面程序片段的输出结果是
A.**3
B.##3
C.##3
D.**3##4 **5
12、执行下面的程序后,a的值为
main()
{ int a,b;
for(a=1,b=1;a < = 100;a++)
{ if(b > = 20)break;
if(b%3==1){
b-=2;
continue;}
b+=5;} }
A.11
B.15
C.12
D.13
13、有以下程序
main()
{ int x,i;
for(i=1;i < = 50;i++)
{ x=i;
if(x%2==0)
if(x%3==0)
if(x%7==0)
printf(”%d“,i);} }
输出结果是
A.28
B.27
C.42
D.41
14、以下程序的输出结果是
main()
{ int i;
for(i='A';i < 'I';i++,i++)printf(”%c“,i+32);
printf(” n“);
}
A.编译不通过,无输出
B.aceg
C.acegi
D.abcdefghi
15、执行以下程序后,输出的结果是
main()
{ int y=10;
do{y--;} while(--y);
printf(”%dn“,y--);}
A.-1 B.1 C.8
D.0
16、如果输入为:ABCdef 执行下面一段程序后,则输出为:
main()
{char ch;
while((ch=getchar())!='n')
{ if(ch > = 'A' && ch < = 'Z')ch=ch+32;
else if(ch > = 'a' && ch < 'z')ch=ch-32;
printf(”%c“,ch);}
printf(”n“);}
A.ABCdef
B.abcDEF
C.abc
D.DEF
17、请读程序:
#include
main()
{ int num=0;
while(num < = 2)
{ num++;printf(”%dn“,num);} }
上面程序的输出结果是
A.1 2 3 4
B.1 2
C.1 2 3
D.1
18、设有程序段:
t=0;
while(printf(”*“))
{t++;
if(t < 3)break;}
下面描述正确的是
A.其中循环控制表达式与0等价
B.其中循环控制表达式与'0'等价
C.其中循环控制表达式是不合法的
D.以上说法都不对
19、以下程序段______
x=-1;do
{x=x*x;}
while(!x);
A.是死循环
B.循环执行二次
C.循环执行一次
D.有语法错误
20、下面程序的运行结果是
#include
main()
{int y=10;
do{y--;}while(--y);
printf(”%dn“,y--);}
A.-1 B.1 C.8
D.0
21、对 for(表达式1;;表达式3)可理解为
A.for(表达式1;0;表达式3)
B.for(表达式1;1;表达式3)
C.for(表达式1;表达式1;表达式3)
D.for(表达式1;表达式3;表达式3)
22、有一堆零件(100到200之间),如果分成4个零件一组的若干组,则多2个零件;若分成7个零件一组,则多3个零件;若分成9个零件一组,则多5个零件。下面程序是求这堆零件总数,请选择填空。
#include
main()
{int i;
for(i=100;i<200;i++)
if((i-2)%4==0)
if(!((i-3)%7))
if(______)
printf(”%d“,i);}
A.i%9=5
B.i%9!=5
C.(i-5)%9!=0
D.i%9==5
23、t为int类型,进人下面的循环之前,t的值为0
while(t=l)
{ „„}
则以下叙述中正确的是
A.循环控制表达式的值为0
B.循环控制表达式的值为1
C.循环控制表达式不合法
D.以上说法都不对
24、以下程序执行后sum的值是
main()
{ int i , sum;
for(i=1;i < 6;i++)sum+=i;
printf(”%dn“,sum);
}
A.15
B.14
C.不确定
D.0
25、以下程序的输出结果是
main()
{ int i, k, a[10], p[3];
k=5;
for(i=0;i<10;i++)a[i ]=i;
for(i=0;i<3;i++)p[i ]=a[i *(i+1)];
for(i=0;i<3;i++)k+=p[i] *2;
printf(”%dn“,k);}
A.20
B.21
C.22
D.23
26、有如下程序
main()
{ int i,sum;
for(i=1;i <= 3;sum++)sum+=i;
printf(”%dn“,sum);}
该程序的执行结果是
A.6 B.3
C.死循环
D.0
27、有如下程序
main()
{ int n[5]={0,0,0},i,k=2;
for(i=0;i < k;i++)n[i]=n[i]+1;
printf(”%dn“,n[k]);
}
该程序的输出结果是 A.不确定的值
B.2 C.1
D.0
28、有如下程序
main()
{ char ch[2][5]={”6937“,”8254“},*p[2];
int i,j,s=0;
for(i=0;i < 2;i++)p[i]=ch[i];
for(i=0;i < 2;i++)
for(j=0;p[i][j] > ' ';j+=2)
s=10*s+p[i][j]-'0';
printf(”%dn",s);
}
该程序的输出结果是
A.69825
第二篇:语言基础
一、语言文字运用(选择题每题3分,共24分)
1.下列词语中加点的字,每对的读音完全相同的一组是
A.狙击/沮丧舷窗/琴弦呼吁/驾驭......
B.乌龟/龟裂遒劲/灰烬悄然/铁锹......
C.维系/系数熊罴/裨将炮制/泡桐......
D.俳优/徘徊涅槃/啮噬书箧/胆怯 ......
2.下列句子中,没有错别字的一组是
A.高山巍巍,流水潺潺。能在莫扎特和贝多芬的音乐中徜徉于美妙的高山流水,真是人类的福份。
B.站在这栋有着巨大圆顶的庞大楼房面前,我感到张皇失措。这样的建筑,是岩石屈从于人类想像力而开出的绚丽的花朵,人类的智慧和灵巧使花岗岩开出了永不凋谢的花。
C.当前,要以预防交通、火灾、拥挤踩塌等事故为重点,加强对学校门口交通标识标线、校车等的监督检查。
D.巴菲特、罗杰斯都曾说,但凡“贩夫走卒、引车卖浆者流”都在谈论股票的时候,就应该从市场激流勇退了。
3.下列句子中,加点的词语使用正确的一句是
A.每年一度的杭州西湖博览会烟花晚会让整个西湖的夜空流光溢彩,如果苏东坡也能看上一眼,说不定又....
能为我们留下许多美妙的诗句。
B.最近他们两人总有些不对劲,就说庆祝“元旦”吧,一个说组织一场球赛,另一个偏要反弹琵琶,非要....组织一次文艺演出不可。
C.地理条件严重制约了我们村致富奔小康的步伐,于是经过全体村民的讨论,大家一致认为,有必要另找一个地势平坦的地方安土重迁、重建家园。....
D.大家都非常同情他的境遇,也很想帮他,可是落花有意、流水无情,人们渐渐明白,帮助别人也不是那.........
么一件容易的事。
4.下列各句中,没有语病的一项是
A.公司专业的技术人才、雄厚的技术力量、科学的管理方法,积极创新,开拓市场,竭诚为各级教育机构和学校提供最先进的设备和最完善的服务。
B.形成高考移民现象的主要原因是不同地方参加高考的人数、录取分数线和录取人数不同造成的。
C.这种将企业各方的权利和义务用合同、章程等方式加以明确的措施,对于职工行使民主管理权利无疑是一种基本保障。
D.目前,少数政府网站变成花架子的现象在全国较为普遍,主要原因是不少地方政府只为赶时髦,仓促间“跟风上网”,而网络管理人才队伍建设却没有及时跟上。
参考答案:
1.D(A.jū/jǔ,xián/xián,yù/yùB guī/jūn,jìng/jìn,qiǎo/qiāo
C.xì/xì,pí/pípáo/pāoD.pái/pái , niâ/niâ, qiâ/qiâ
2.B(福份-福分踩塌-踩踏激流勇退-急流勇退)
3.A(B.“反弹琵琶”,来自敦煌壁画中的一种舞姿造型。喻指突破常规的思维和行为;从反面看问题,与常规事物对着干。安土重迁:在家乡住惯了,很不愿意搬迁。落花有意、流水无情:比喻这一方面有情,那一方面无意,多指男女恋爱。)
4.C(A.公司后加“凭借”B .“主要原因”与“造成的”语意重复。D.“少数”与“普遍”矛盾)
1.下列词语中加点字的读音,不完全相同的一组是
A.匮乏馈赠喟叹发聋振聩 ....
B.惬意挈带堆砌锲而不舍 ....
C.枢纽倏忽殊荣毁家纾难 ....
D.枭雄骁勇销毁祸起萧墙 ....
2.下列各句中,没有错别字的一项是
A.当欣赏杜甫那些千古留传的诗作时,我们一定会感悟到在忧患重重的现实处境中诗
人的感情心志与民生痛苦如胶似漆般的结合在一起。
B.只要我们审时度势、科学决策、周密布署,完全有条件化挑战为机遇,把国际金融危机的不利影响降到最低程度。
C.鲁迅总是独具匠心地抓住一切机会,运用他特有的幽默才能,出奇不意地使词语闪烁出动人的艺术的光芒。
D.辽阔苍茫的戈壁荒漠,缥缈洁白的雪山冰峰,森严幽深的皇城内院,人声鼎沸的京城市井,灵秀旖旎的青山碧水,这一切使整部作品呈现出一种浓郁的诗意美。
3.下列各句中,加点词语不能被括号中的词语替换的一项是
A.这篇小说反映了特定历史时期南方人民艰苦卓绝的斗争生活,特别是把一批走出校门、献身革命的年轻人刻画得力透纸背。(入木三分)....
B.那些问题奶粉给食用的婴幼儿所造成的危害骇人听闻,对于生产奶粉的企业和经营....
奶粉的市场非整顿不可。(耸人听闻)
C.欧洲批判现实主义文学的奠基人巴尔扎克笔下的老葛朗台,是一个腰缠万贯却锱铢..必较的典型的吝啬鬼形象。(斤斤计较)..
D.京剧和地方戏在艺术形式上并不像有些人说的是判若鸿沟的,其实它们之间相互借....
鉴、吸收的地方很多。(泾渭分明)
4.下列各句中,没有语病的一项是
A.杭州湾跨海大桥是一座由我国自行建造、自行设计、自行管理、自行投资的特大型交通基础设施,是我国跨海大桥建设史上的一个重要里程碑。
B.全面考核、竞争上岗、择优录取的人事制度改革,对那些思想保守、不思进取、混日子过的干部职工,的确会感到很不适应。
c.如果明年国际经济政治环境不继续恶化,国内不出现大范围的严重自然灾害和其他问题,我国的GDP仍有望保持9%左右的快速增长。
D.新城高新科技园区以智力密集为依托,以开拓新产业和高科技成果为目标,不断加强科研、教育与生产的结合,促进了经济的高速发展。
1.B2.D3.B4.C
1.下列词语中加点字的读音完全相同的一项是()
A、给付给养给以支援家给户足B、着想着墨不着边际整理着装 ........
C、背谬背影背债累累背信弃义D、分外处分恰如其分分文不取 ........
2.下列各句中,没有错别字的一项是()
A、西溪自古就是隐逸之地,被文人视为人间静土、世外桃源。秋雪庵、泊庵、梅竹山庄、西溪草堂在历史上都曾是众多文人雅士开创的别业,他们在西溪留下了大批诗文辞章。
B、歌声不仅仅代表了音律的变迁,更多的是对那些岁月、那些闪耀着理想光辉的年代的留恋与思索。于是,浮躁的渴望回归,遥远的成为永远,30年来的歌曲形形色色,那一份朴实和简单的快乐却还在心里。
C、春晚起用了北京奥运会开幕式的舞美总设计和灯光总设计,舞台引进先进的视频灯光设备,奥运会开幕式中的卷轴,将变身为春晚舞台的视觉景观。此外,直播中还将起用无人跟拍和蜘蛛眼摄像机,全面捕捉现场的精彩。
D、生活里最美好的东西,从来不是有形的东西,财富的意义也并不只于金钱。在这个高速
发展的年代,每个人都需要停下心来想想了。显然,对美好生活而言,速度不是第一位的。一切正如甘地所说,“如果方向错了,速度快又有什么用呢?”
3.下列各句中加点的词语能用括号内的词语来替代的一项是()
A、梁文道在《常识》序言中说:“本书所集,卑之无甚高论,多为常识而已。若觉可怪,......
是因为此乃一个常识稀缺的时代。”(微言大义)
B、早就听说他要认真学习,可几年过去了,也不见他真刻苦起来,还是老样子,雷声大,...雨点小。(小题大做)...
C、他的作品很一般,怕被人看不起,动不动就搬出某某名作家吓唬人,四处乱吹,无非想拉大旗作虎皮抬高自己罢了,并不能说明他的作品好。(狐假虎威)......
D、岁月悠悠,不觉二十多年倏得就过去,日本的经济泡沫也破了,往日的风光不再,当然烂船也有三斤铁,日本仍然是不容忽视的,日本人的奋斗精神和创意能望其项背者几何!(点.......
金成铁)
4.下列各句中,没有语病的一句是
A、无论是在离家多远的地方,只要随着年的来临,每个人的心里就都不会再平静,能回家的会想尽一切办法回家,不能回家的,就开始想家,想尽一切办法地回家。
B、近年,随着大杭州的构筑和逐渐成形,住宅郊区化势头迅猛,而郊区居民入住的社会商业也随之迅猛发展起来。
C、防治人禽流感的最好方法,是保持充足的睡眠和休息,进行适量的运动,增强自己的抵抗力,并加强室内空气流通,不要去空气欠佳的地方。
D、前一天在正式的总统就职仪式上,面对赶到周边地区观礼的上百万名观众和通过电视、网络见证历史的世界各地的无数群众,罗伯茨领誓出现错误,奥巴马也被带得发生口误。
1、B(A给以支援gěi,其余jǐ B都念zhuó C背债累累bēi,其余bâi D分文不取fēn,其余fân)
2、B(A净土C启用D不止于)
3、C(C拉大旗作虎皮:比喻打着某种旗号以张声势,来吓唬人、蒙骗人。A卑之无甚高论:表示只就浅易的说,没有什么过高难行的意见。微言大义:精微的语言和深奥的道理。B雷声大,雨点小:比喻声势很大,实际行动却很少。小题大做:比喻把小事情当作大事情来办。D烂船也有三斤铁:比喻不好的东西也有可利用的、不可小看的成分。点金成铁:比喻把别人的好文章改坏。)
4A(B成分残缺,在“郊区居民入住”前加上“为”C不合逻辑,把“防治”改为“预防”D语序不当,把“世界各地的”提到“通过”前,并删去“的”。)
1.下列词语中加点的字,每对读音都相同的一组是
A.气氛/安分守己主宰/载歌载舞殷红/恹恹欲睡 ......
B.愠怒/风流蕴藉腼腆/暴殄天物款识/栉风沐雨 ......
C.倜傥/痛哭流涕警醒/杀一儆百筵席/偃旗息鼓 ......
D.缱绻/卷土重来股肱/觥筹交错散佚/卷帙浩繁 ......
2.下列词语中,没有错别字的一项是
A.插科打诨风声鹤唳不容置喙额首称庆
B.平心而论坚苦卓绝意兴阑珊斐然成章
C.两全其美同仇敌忾砰然心动毛骨悚然
D.切中肯綮方枘圆凿皓首穷经高潮迭起
3.下列句子中加点成语使用正确的一项是
A.在建立导弹防御系统问题上,美德两国首鼠两端,很快达成了一致意见。....
B.由美国次贷危机引发的金融风暴,以风卷残云之势在两周内迅速蔓延到世界各地,其....
影响之大让人始料不及。
C.孙犁在“文革”后至1995年写成的《耕堂劫后十种》,在思想性与艺术性上有较大的突破,是散文界的空谷足音。....
D.中国古典山水诗平淡而隽永,读者透过优雅的意象想像其中的画面和情景,就能领悟意境的含英咀华和美妙深远。....
4.下列各句中,没有语病且表意明确的一句是
A.每次学校开运动会前,老师总是嘱咐运动员要穿好鞋,可有的运动员就是不当回事。
B.国务院台湾事务办公室举行新闻发布会,就两岸民间行业组织协商“三通”、外国公司参与两岸航运和所谓“台湾安全”等相关问题作出了说明。
C.面对全球金融危机,各国本应携起手来,共同应对,可法国总统却在中欧峰会的关键时刻会见**,干涉中国内政,这对于金融危机是毫无益处的。
D.中央经济工作会议是制定第二年宏观经济政策、判断当前经济形势最权威的风向标,也是每级别最高的经济工作会议。
1.B(A.fēn/fânzǎi/zàiyānB.yùn tiǎnzhì C.tì jǐng yán/yǎnD.quǎn/juǎngōngyì/zhì)
2.D(额手称庆艰苦卓绝怦然心动)
3.C(A.首鼠两端:迟疑不决或动摇不定。B.风卷残云:比喻一下子消灭干净。C.空谷足音:空旷的山谷里听到人的脚步声。比喻难得的音信、言论或事物。D.含英咀华:细细琢磨、体味诗文精华,是动词性成语。)
4.B(A."穿好鞋”表意不明C.成分残缺,“这对于金融危机是毫无益处的”应为“这对于金融危机的解决是毫无益处的”D.语序不当,“定调第二年宏观经济政策”和“判断当前经济形势”颠倒)
1.下列词语中加点字的读音,完全相同的一组是()
A.戍边恕罪庶民追本溯源....
B.刨冰曝晒龅牙孢子植物....
C.诤言铮亮症状饮鸩止渴....
D.垂询锤炼边陲椎心泣血....
2.下列各句中,没有错别字的一项是()
A.他历经坎坷,饱经沧桑,70多年的酸甜苦辣,大致反映在他等身的著作中,可惜,直到晚年,他的一系列煌煌巨著才相继问世。
B.一支弯曲的木橹,在水面上悠然搅动,倒映在水中的石桥、楼屋,都被这不慌不忙的木橹搅碎,碎成斑斓的光点,犹如在风中漾动的一匹长长的彩绸,没有人能描绘它朦胧眩目的花纹„„
C.我瘦削的手指刚刚抵住磨砂玻璃光滑的表面,就听到楼下传来熟稔的咳嗽和喷嚏声,父亲能够把他的咳嗽和喷嚏弄得震耳欲聋,这曾经是我们一家人谈笑的话题。
D.《生命中的那个夏天》没有长篇累牍、谍谍不休的说教,却让少年幡然醒悟,意识到
只有努力创造才能改变自己的命运。生命中的那个夏天,少年铭记于心。
3.下列各句中,加点词语能被括号中的词语替换且不改变句意的一项是()
A.一些技术落伍、管理理念落后的中小企业,要以目前的实力,去和跨国大公司争夺有限的国内市场,简直是蚍蜉撼树。(螳臂当车)....
B.张大妈对着那个刚来的人撇了撇嘴:“一看这个年轻人穿得那么稀奇古怪,就知道是个不三不四的人。”(不伦不类)....
C.借给他钱,只是扬汤止沸罢了,钱花光了,他一样会面临生活危机,要想帮助他真正....
摆脱困境,只有让他彻底改变自己的观念才行。(釜底抽薪)
D.王道长为人沉默寡言,神情慈祥温和,只求能栖息道观,虽箪食瓢饮,却能安之若素。....
(箪食壶浆)
4.下列各句中,没有语病且表意明确的一项是()
A.昨天下午,沈红要去机场接客人,走之前,她蒸好了米饭,炒了两个孩子爱吃的菜,留了一张纸条,就匆匆去了机场。
B.网易、新浪等14家网站联合向互联网界发出文明办网倡议书,号召营造健康文明的网络文化环境,清除不健康消息,已成为社会的共同呼唤、家长的强烈要求和保障未成年人的迫切需要。
C.以生漆为底层的彩绘陶质文物保护是一个世界性难题,没有任何的经验和技术可以借鉴,艳丽的秦俑彩绘如何保留成为当务之急。
D.近日,恐怖分子在印度最大城市孟买的19处重要地点,进行了“协调一致”的一系列袭击,造成当地局势和社会秩序的骤然紧张。
1.D
2.C(A.皇皇巨著B.炫目D.喋喋不休)
3.A(蚍蜉撼树:比喻力量很小而想动摇强大的事物,不自量力。螳臂当车:比喻不估计自己的力量,去做办不到的事情,必然招致失败。不三不四:指不正派或不像样子。不伦不类:形容不成样子或不规范。扬汤止沸:比喻办法不彻底,不能从根本上解决问题。釜底抽薪:比喻从根本上解决。箪食瓢饮:形容读书人安于贫穷的清高生活。箪食壶浆:形容军队受欢迎的情况。)
4.C(A“炒了两个孩子爱吃的菜”歧义。B句子杂糅,“已成为社会的„„„”缺主语D搭配不当,应为“当地局势的骤然紧张和社会秩序的极度混乱”)
1.下列词语中加点字的读音,完全相同的一组是()
A.渲染寒暄萱草煊赫一时....
B.殚力忌惮邯郸箪食壶浆 ....
C.燎原同僚撩拨青面獠牙 ....
D.骠勇剽悍飞镖膘肥体壮 ....
2.下列各句中,没有错别字的一项是()
A.中国古代诗歌中的名句,千百年来一直传颂不衰,脍炙人口,对以后历代的影响,远远超过了诗歌本身的范畴。
B.今年以来,房价疯涨得到了明显的遏止。国家发改委的数据显示,今年1-7月份,全国房屋销售价格同比涨幅连续7个月下降,环比涨幅在0.3%以下。
C. 回首来时的路,我们有磕绊,有惊喜,有阳光,有阴霾,这就是我们的青春呵,我们不悔的青春。
D.当那些刚刚绽放的花蕊骤然凋谢,当那三万多个毫无终结迹象的生命嘎然而止,我们怎能不为他们感到伤悲,怎能不为他们动容,怎能不为他们祈祷?
3.下列各句中,加点的词语使用不正确的一项是()
A. 因为缺乏位置感,他们根本就不关心老百姓的疾苦,在他们看来,平民意识犹如一
块一文不名的破布。....
B.德国诗人歌德作《浮士德》延续六十年之久,曹雪芹写《红楼梦》“批阅十载,增删五次”,一切优秀的作品,都不是侥幸偶得之物,而是不辞艰辛惨淡经营的成果。....
C.我狙击部队经过三天三夜的浴血奋战,伤亡十分惨重,而敌人的攻势却更加猛烈,眼看阵地就要失陷,就在这间不容发的时刻,增援部队终于赶到了。....
D.现在社会上真有一部分人,缺少理性认识。头脑简单,听风就是雨,极易盲从,抓住.....
一点矛头就开始大做文章,也不去调查核实,闭门造车,严重脱离实际;更有甚的是捕风捉影,大造舆论,惟恐天下不乱。难道他们就不考虑后果吗?
4.下列各句中,没有语病的一项是()
A.通过手机改号软件,想让对方看到谁的号码,都可以轻松实现,这让一些犯罪分子有机可乘。近日山东嘉祥县警方成功阻止了一起利用更换“来电显示”诈骗的行为。
B.2007年,山东省累计完成资源税收入28.9854亿元,同期同比增长10.95%,增收28.485亿元。
C.工作人员经过收集处理来自全国各地的几亿条投标信息,为赴台大熊猫选定的响亮的名字终于浮出水面。
D.富春江水污染能否得到整治,将影响富阳旅游业的发展。
1.C(A“渲”读xuàn,其他读xuān;B“惮”读dàn,其他读dān;C都读liáo;D“骠”
读piào,“剽”读piāo,“镖”和“膘”读biāo)
2.C(A“颂”应为“诵”;B“止”应为“制”;D“嘎”应为“戛”
3.A(一文不名——一个钱都没有。
惨淡经营——形容极端艰苦地从事诗文创作也形容苦心规划和开拓某项事业
间不容发——形容极为精确或精密,也比喻时间紧迫,情况紧急。
听风就是雨——刚听到一点风声就信以为真,指盲目符合,跟随,没有自己的思考)
4.D(A应在“诈骗”前加上“实施”;B去掉“同期”;C把“工作人员”放到“经过”之
后。)
第三篇:电工基础试题
《电工基础》试题
一、单项选择题
1.若3 min 通过导体横截面的电荷量是1.8 C,则导体中的电流是()。
A.0.01AB.0.05AC.2.01AD.0.5A
2.将一根导线均匀拉长为原长度的3倍,则阻值为原来的()倍。
A.3B.1/3C.9D.1/9
3.(2012年河南高考题)一条均匀电阻丝对折后,接到原来的电路中,在相同的时间里,电阻比所产生的热量是原来的()。
A.1/2B.4C.2D.1/4
4.额定电压为220V的灯泡接在110V电源上,灯泡的功率是原来()。
A.2B.4C.1/2D.1/4
5.阻值随外加电压或电流的大小而改变的电阻叫()。
A.固定电阻B.可变电阻C.线性电阻D.非线性电阻
6.220V的照明用输电线,每根导线电阻为1Ω,通过电流为10A,则10min内可产生热量()J。
4433A.1×10 B.6×10 C.6×10D.1×10
7.额定值为100Ω/1W的电阻,两端允许加的最大直流电压时()V。
A.10B.12C .15D.8
8.电力系统中以“kWh”作为()的计量单位
A.电压B.电能C.电功率D.电位
9.有一电阻,两端加上50mV电压时,电流为10 mA;当两端加上10V电压时,电流值是多少()。
A.2AB.0.2AC.2mAD.0.02mA
10.某电烤箱电阻是5Ω,工作电压时220V,问通电15min能放出()J能量。
4343 A.86121×10B.8612×10C.8712×10D.87121×10
二、判断题
1.负载电功率为正值表示负载吸收电能,此时电流与电压降的实际方向一致。()
2.人们常用“负载大小”来指负载电功率大小,在电压一定的情况下,负载大小是指通过负载的电流的大小。()
3.通过电阻上的电流增大到原来的2倍时,它所消耗的电功率也增大到原来的2倍。()
4.有一灯泡接在220V的直流电源上,此时电灯的电阻为484Ω,求通过灯泡的电流为0.4A。()
5.没有电压就没有电流,没有电流就没有电压。()
6.把25W/220V的灯泡接在1000W/220V的发电机上时,灯泡会烧坏。()
7.电阻两端电压为10V时,电阻值为10Ω;当电压升至20V,电阻值将变为20Ω。()
8.负载在额定功率下的工作状态叫满载。()
[参考答案]
一、1.A2.C3.B4.C5.D6.B7.B8.B9.A10.D
二、1.√ 2.√ 3.× 4.× 5.× 6.×7.× 8.√
第四篇:c语言程序设计基础
《c语言程序设计基础》重修试卷
一、选择题(2’*20=40’)
1、c程序由构成。
A.函数B.命令C.程序D.表达式
2、以下选项中合法的变量名是
A.#y2B.a A.floatB.charC.intD.double4、在我们使用的turboC中,一个int型数据在内存中占个字节 A.0B.1C.2D.45、若有定义:int a=8,b=5,c;执行语句c=ab+0.4后c= A.1.4B.1C.2.0D.26、在c语言中,char型数据在内存中的存储形式是 A.补码B.ASSCIIC.原码D.反码 7、若运行时给变量x输入 常见错误 1.使用未初始化和未赋值的变量 描述:非全局变量和静态变量在定义时不自动进行初始化,初值为一个与该程序运行环境有关的随机数。不赋值或没有显示初值就直接使用这样的变量是错误的。 解决:所有变量都显示地进行初始化,建议数值变量初始化为0,指针变量初始化为NULL 2.不考虑数值溢出的可能 描述:当赋值超过此范围数值,就会产生数值溢出,得到不正确的值。 解决:预先估算运行结果的可能范围,采用可能范围更大的,不处理负数,就用无符号类型。运算还没开始前,判断运算数是否在合理取值的范围内,超出则停止运算。采用第三方无取值范围的运算库。 3.不用sizeof()获得类型或变量的字长 描述:相同类型在不同平台上占得字节数不同。Int在16位,32位,64位系统分别占2,4,8个字节。结构体所占字节也不是所有成员字长的简单相加,而是和平台与编译器,编译项都有关系。 解决:用且只用sizeof获得字长 Intwriteint(intfh ,inti) { Returnwrite(fh ,&i,sizeof(i)); } 4.假定类型的取值范围 描述:类型的取值范围与程序编译息息相关。 解决:使用limits.h和float.h定义的宏(INT--MAX,INT----MINULONG--MAXFLT---MAX 5.期望两个整数的运算自动获得浮点数的结果 描述:两个数运算的结果还是整数,不是浮点数 方案:强制转换为浮点数,再运算 例:voidfunc(void)voidfunc(void) {{ Floatf=0.0;floatf=0.0; Inta =3,b=2;int a=3,b=2; f=a/b;f=a/(float)b; printf(“%f,f);printf } 6.不预先判除除数是否为0 编译器反应:直接写入inti=100/0,编译器会报错,编译器对此问题沉默 解决方案:先判断除数是否为0,若是0则不运算。 7.混淆“&,|”与“&&,||” 说明:他们是两种不同的运算符,有人总是弄错 8使用依赖编译器求值顺序的语句 描述:printf(“%d,%d,%d,i++,i++,i++);i=0可能输出 0.1.20.0.0.2.1.0方案:按期望的顺序分别求职,再综合运算 Voidfunc(void) { Int a,b,c ,i=0; a=i++; b=i++ C=i++ Printf(“%d,%d,%d”,a,b,c) 9.使用依靠算符优先级的表达式 描述;没有记住优先级,容易出错。 解决:用括号明确优先计算的部分 10.表达式过于复杂 描述:(a>b||b>c)&&(o>P||q>p)?(a-b)*c+(o-p)*q:(a*b*c)-(o*p*q) 11.用“==”时误用“=” 12.用“==”比较两个浮点数 描述;两个数值表面相等或者非常接近的浮点时用“==”比较,结果可能不同 解决;不用float用double在精度运算中两个浮点数的差的绝对值只要小于一个 精度范围,就可以相等 13.使用幻数 描述:直接使用的常数 解决;把幻数定义为宏或枚举,建议使用枚举。编译提示会更清晰,准确 #definearray-srze10 Enum(array-size=10)printf()和scanf()中格式控制字符串与参数类型不匹配 15.循环或判断语句以“;”结尾 描述:分别表示循环和判断语句的终结,后面的代码不算循环体或分支,而是循环和判断 平行的代码 解决:禁止在循环判断语句末尾出现分号,循环体为空的情况下,While(.........) { } 16.在循环体内改变循环结束条件 例如:voidfunc(void) { Int a,end: ------- While(a { 在这里修改end的值 } } 17.case分支不用break结束 规定每个case分支必须用break结束,两个分支用同样的代码,就把代码定义为函数 基本概念 函数是c的基本单位,必须有且仅有一个main函数。一个c可以包含一个到多个函数,在函数中可以调用系统提供的库函数 函数首部:函数返回值类型,函数名,形参类型,形参名的说明 函数 函数体:大括号中的内容,包括变量声明(对象)语句和执行(动作)语句c程序书写规则;以分号结束,并且书写注释;“/**/,注释之间不能留有空格常见关键字:asmautobreakcasecdeclchar Constcontinuedefaultdodoubleelse Enumexternfarfloatforgoto Hugeifinterruptintlongnear Pascalregisterreturnshortsigned Sizeofstaticstructswitchtypedef Unionunsignedvoidvolatilewhile 标识符:系统自定义标识符,用户自定义标识符 运算符:算数运算符:+—*/%关系运算符: >>==<<=!= 逻辑运算符:!&&|| 赋值运算符:= 复合的赋值运算符:+=-=*=/=%=&=!=^=<=>= 增一减一的运算符:++-- 条件运算符:?: 强制类型转换运算符: 指针和地址运算符:*& 计算字节数运算符:sizeof 下标运算符:[] 结构体成员运算符:-> 位运算符:<<>>|^&~ 逗号运算符:,分隔符:相邻保留字,标识符之间由空格或回车换行做分隔符:相邻同类项之间用逗号分隔 声明相同类型的变量之间可用逗号分离,向屏幕输出的变量中各变量表达式之间用 逗号分离。 常见的转义字符:n 换行r回车(不换行) 字符串结束t 水平制表 v 垂直制表b退格f走纸换页a响铃报警 ” 双引号’单引号 一个反斜线?问号 常见错误 数组;数组的下标都是从0开始的,访问时发生下标多1或者少1都会越界访问内存错误 用变量来定义数组长度会导致语法错误,应该用整型常量或整型常量表达式定义 用a[x,y]而不是a[x][y]的形式来访问二维数组中的元素,将导致语法错误 (数组的第1个元素的下标是0,数组元素1是指数组元素的下标为1,是数组的第二个元素) 忘记对需要进行初始化的元素初始化,导致运行结果错误 对数组初始化的过程中,提供的初值个数多于数组所能容纳的元素个数定义字符数组长度时,必须要多留一个字节的存储单元,存放结束标志 打印一个不包括字符串结束标志的 ,导致运行结果错误 直接使用赋值运算符对字符串赋值是错误的,必须用strcpy()赋值 直接使用关系运算符比较字符串大小是错误的,必须使用strcpy()比较 字符串必须使用双引号括起来,单引号括起来是错误的。 一对双引号将一个字符常量括起来,产生一个指向包含两个字符的字符串指针(把字符当做实参去调用形参是字符串的函数;把字符串当做实参去调用形参是字符的函数,都会导致语法的错误!) 误以为在函数中定义的静态局部数组元素中的元素,在每次函数调用时都初始化0(函数原型,函数定义的头部和函数调用语句三者,在形参和实参的数量,类型和顺序,以及返回值的类型上没有严格保持一致,将导致语法错误。) 指针:误以为用来声明指针变量的星号(*)会对同一个声明语句中的所有指针变量都起作用,而省略了其他指针变量名前的星号。实质是每一个每一个变量名前的星号都不能省略。 没有对指针变量进行初始化,或没有将指针变量指向内存中某一个确定存储单元的情况下,就利用这个指针变量去访问它所指向的存储单元,将导致严重的运行错误。没有意识到某些函数形参是属于“传地址掉调用”而数值不是指针当做实参赋值给这形参。 对没有指向数组中的某个元素的指针变量进行算数运算,是无意义的。 对并非指向同一数组中元素的两个指针进行相减或比较运算。是无意义的。每个数组都有上,下边界,指针超出了边界就会造成越界访问内存错误。 除非两个指针类型都是void,否则将一种类型的指针赋值给其他类型的指针,造成语法错误。 试图用一个void的指针变量去访问内存,是一个语法错误。 试图以指针运算的方式来改写一个数组名所代表的地址,是一个语法错误 内存分配不成功的话会导致非法内存访问错误,只要运行前检查指针是否为空指针,可以避免错误发生。 如果内存分配成功,但是没有初始化,将会导致非法内存访问错误。 向系统申请了一块内存,结束后忘了释放内存,造成内存泄露。 释放了内存,但却仍然使用,会产生“野指针” 结构体,共用体:定义一个结构体时,忘记最后加上一个分号,导致语法错误 将一种类型的结构体赋值给另一种类型的结构体,导致语法错误 对两个结构体或者共用体进行比较,导致语法错误 在结构体指向运算符的两个组成符号“-” 和“>”之间插了空格,或者写成“→”导致语法错误 只使用成员变量名访问结构体的一个成员,导致语法错误 直接使用结构体的每个成员类型所占内存字节数的“和”作为一个结构体实际所占的字节数。是错误的。 没有标明结构体数组下标 就访问其中一个结构体数组元素,导致语法错误。 函数 递归函数是需要返回值的,在递归函数中忘记返回数值,是错误的忘记了编写递归终止条件的分支语句,写错了递归步骤,都会导致递归函数不能收敛到递归的终止条件,引起无穷递归 定义函数指针时,忘记将函数指针变量名及前面的星号用圆括号括起来,使得本应声明函数指针变量的变量声明变成了一个函数声明语句。 将函数指针作为函数参数时,不在函数指针变量名后的一对圆括号中列出各函数参数的类型,导致编译错误。 实施细则 1.函数 1.函数指针:通式:数据类型(*指针名)()int(*p)() 错误:忘记前一个()意义是声明一个函数,函数名为P,返回值是一个指向整型变量的指针 忘记了后一个(),意义是定义了一个指向整型变量指针。使用:1.定义过程 2.函数指针赋值过程3.调用过程 2.递归:一个对象部分地由它和自己组成或它自己定义,称它是递归的。 3.返回指针值的函数:通式:数据类型*函数名(参数名){} 区别;不带*的函数值,函数值只能是一个数据,不能是一组带*的函数值,不仅是一个数据,还能是一组数据。 2.结构体,共用体 位段:指定了存储位数的结构体或共用体的成员叫位段 优点:用最少的位数存储数据注意:必须声明为int或unsigned型使用:用struct作为关键字,定义了unsigned 的三个位段 “:”代表位段宽度的整数常量,访问位段成员的方法与访问结构体成员的方法基本一致,用“圆点运算符”或“箭头运算符” 共用体:将不同的数据类型组合在一起,共占有同一段内存的用户自定义数据类型注意:必须有足够大的内存空间将占据最大内存空间的成员存储在内,内存空间的大小由占据内存空间成员所占的空间数决定。 动态数据结构:在结构体类型中,如果包含了本结构体类型的成员,由于本结构所占的内存字节数无法确定,系统无法正常分配内存。 声明结构体类型是不能包含自我,但可以包含指向本结构体类型的指针域。操作: Structtemp { Intdata; Structtemp*temp; }; 利用函数malloc()申请一个结构体的内存 Structtemp { Intdata; Charname[10]; }; Structtemp *p; P=(struct temp*)malloc(10*sizeof(structtemp));利用函数calloc()申请一个结构体内存 Structtemp *p P=(struttemp*)calloc(10*sizeof(struct 利用函数free()释放申请的内存空间,链表的定义 temp));第五篇:c语言基础总结