百年教育职业培训中心 百年教育学习服务平台
题库试卷

【百年教育职业培训中心】C语言程序设计-章节资料考试资料-东北大学

来源: 更新时间:

报名本机构合作学校,赠送复习资料,复习课程,确保录取。并且可以申请学校奖学金500元~1500元不等!答案:微信搜索【渝粤教育】公众号测验测试1、【单选题】测试题目A、1B、2C、3D、4主题2测验1

报名本机构合作学校,赠送复习资料,复习课程,确保录取。并且可以申请学校奖学金500元~1500元不等!

答案:微信搜索【渝粤教育】公众号



测验测试

1、【单选题】测试题目

A、1

B、2

C、3

D、4


主题2测验

1、【单选题】(2007.04全国二级C题)按照C语言规定的用户标识符命名规则,不能出现在标识符中的是( )。

A、大写字母

B、连接符

C、数字字符

D、下划线


2、【单选题】( )是c语言提供的合法的数据类型关键字。

A、Int

B、long

C、Char

D、integer


3、【单选题】(2011.09全国二级C题)以下选项中关于C语言常量的叙述错误的是( )。

A、所谓常量,是指在程序运行过程中,其值不能被改变的量

B、常量分为整型常量、实型常量、字符常量和字符串常量

C、常量可分为数值型常量和非数值型常量

D、经常被使用的变量可以定义成常量


4、【单选题】数据类型描述中错误的是( )。

A、计算机的字长限制了数据的表示范围

B、不同数据类型的数据表示形式、占用内存空间大小、合法的取值范围以及参与的运算种类都不相同

C、同一个数据类型具有同样的操作和同样的编码方式

D、可以改变程序中声明的数据类型


5、【单选题】用C语言编写的代码程序( )。

A、可立即执行

B、是一个源程序

C、经过编译即可执行

D、经过编译解释才能执行


主题3测验

1、【单选题】下面哪组是正确的运算符( )。

A、<< || +++

B、=> == ++

C、= ?: %

D、sizeOF ++ &


2、【单选题】下面错误的表达式是( )。

A、x&&y||z

B、4/x+y % 10

C、x=a?0.5:'A'

D、y=x+a=b+2


3、【单选题】下面说法错误的是( )。

A、一个常量或一个变量或一个函数都可以看成是一个表达式

B、运算符的结合性分为左结合性和右结合性

C、双目运算符的结合性都是自左向右

D、调用exp()函数时要使用

E、include <math.h>


4、【单选题】下面说法正确的是( )。

A、负数参与“/”和“%”运算时,其结果与C89或C99的标准有关

B、C语言的“/”和“%”运算可以写成5/0或5%0的形式

C、赋值运算要求他的左操作数可以是变量、常量或另一个表达式

D、表达式(x=a>b)&&(y=c>d)是错误的写法


5、【单选题】表达式<img src="http://edu-image.nosdn.127.net/_PhotoUploadUtils_cc914897-0459-4de8-8739-eb086b784993.png" />的正确写法是( )。

A、3*x*x*x+2*x*x-7*x+10

B、3*exp(x,3)+2*exp(x,2)-7*exp(x,1)+10

C、3*pow(3,x)+2*pow(2,x)-7*pow(1,x)+10

D、3*exp(x,3)+2*exp(x,2)-7*x+10


6、【单选题】假设有下面程序段:int a;float b; b=a=4.5;下面错误的描述是( )。

A、变量a的值是4

B、变量b的是4.0

C、赋值表达式a=4.5的结果值是4

D、变量b的值是4.5


7、【单选题】下面说法错误的是( )。

A、参与处理的数据由一种数据类型转换为另一种数据类型叫做类型转换

B、隐式转换由编译系统自动完成,可能造成数据丢失或溢出

C、隐式转换可能发生在算术计算、赋值、输出以及函数调用时

D、(int )(x+y) 与(int ) x+y都是表示显示转换,其含义相同


8、【单选题】假设a,b,c,x,y均为int型,下面说法正确的是( )。

A、表达式“a+=2”等价于表达式“a=a+2”

B、表达式“a*=b+c”等价于表达式“a=a*b+c”

C、表达式“y=x++”等价于表达式“x++,y=x”

D、表达式“y=x++”等价于表达式“y=x,x++”


9、【单选题】下面能正确定义整型变量x、y和z并为其赋初值5的语句是( )。

A、int x=y=z=5;

B、int x,y,z=5;

C、int x=5,y=5,z=5;

D、x=5,y=5,z=5;


10、【单选题】假设a=6,表达式a+=a-=a*a的结果正确的是( )。

A、0

B、6

C、36

D、-60


11、【单选题】假设有int 型变量i=1,j=2,k=3,下面正确的是( )。

A、i&gt;=j的值为1

B、i==j的值为1

C、(j&lt;k)==(i&lt;k)为0

D、(i==j)+(j==k)的值为0


12、【单选题】假设有int型变量a=1,b=0,下面正确的是( )。

A、(a==1)&amp;&amp;(b==0)的值为1

B、!a+!b的值为0

C、(a==0)||(b=1)的值为0

D、!a&amp;&amp;!b的值为1


13、【单选题】若希望当num的值为奇数时,表达式的值为“真”,num的值为偶数时,表达式的值为“假”。则以下不能满足要求的表达式是( )。

A、num%2==1

B、!(num%2==0)

C、!(num%2)

D、num%2


14、【单选题】逻辑运算符两侧运算对象的数据( )。

A、只能是0或1

B、只能是0或非0正数

C、只能是整型或字符型数据

D、可以是任何类型的数据


15、【单选题】期末成绩由平时成绩times和期末上机考试grade两部分组成,要求times和grade只要有一项超过90分即为优秀。正确的写法是( )。

A、(times&gt;=90)||(grade&gt;=90)

B、(times&gt;=90)&amp;&amp;(grade&gt;=90)

C、(times&gt;=90||times&lt;=100)&amp;&amp;(grade&gt;=90||grade&lt;=100)

D、(times&gt;=90&amp;&amp;times&lt;=100)||(grade&gt;=90&amp;&amp;grade&lt;=100)


16、【单选题】正确描述数学式10≤x≤10的表达式是( )。

A、-10&lt;=x&lt;=10

B、-10&lt;=x&amp;&amp;x&lt;=10

C、x&gt;=-10&amp;x&lt;=10

D、-10&lt;=x||x&lt;=10


17、【单选题】有下面程序段: int a,b,c; a=1,b=2; c=ab?a:b; c=(a=0?a:0)+c; 执行上述程序段后a,b,c的结果是( )。

A、a=1,b=2,c=2

B、a=1,b=2,c=3

C、a=0,b=2,c=3

D、a=1,b=2,c=2


18、【单选题】假设x为int型,下面说法正确的是( )

A、逗号表达式x=2*5,x*5的值和x的值分别是50,10

B、逗号表达式x=2*5,x*5的值和x的值分别是10,50

C、逗号表达式(x=2*5,x*2),x+10的值和x的值10,30

D、逗号表达式(x=2*5,x*2),x+10的值和x的值20,20


19、【单选题】sizeof(float)是( )。

A、一个双精度型表达式

B、一个整型表达式

C、一个函数调用

D、一个不合法的表达式


主题4测验

1、【单选题】结构化程序的实现由( )组成程序逻辑。

A、顺序结构

B、分支结构

C、循环结构

D、顺序结构、分支结构和循环结构


2、【单选题】以下4个选项中,不能看作一条语句的是( )。

A、{;}

B、a=0,b=0,c=0;

C、if(a&gt;0);

D、if(b==0) m=1;n=2;


3、【单选题】下列语句中,合法的的赋值语句( )。

A、A=2+B++=A+2;

B、A=2+B,B++,A+2

C、A=2+B,C=A+2;

D、A=2+B+C=A+2


4、【单选题】假设变量a为整型量,语句if (a!=0);和语句if(a);相比较,正确答案( )

A、两者作用不同

B、两者作用等价

C、两者作用相反

D、if(a)语法错


5、【单选题】下面说法错误的是()。

A、语句if(a==0);逻辑结构出现错误

B、语句if(99)printf(“true!”);可以得到输出结果

C、语句 if (a=0) printf(“a is 0”);不能得到输出结果

D、语句if (a=1) printf(“a is 1”);的判断条件不起作用


6、【单选题】假设有int型变量a=0,b=1,c=10,计算表达式a(b=c)后a,b,c的值是()。

A、a=0,b=1,c=10,

B、a=0,b=10,c=10,

C、a=0,b=1,c=1,

D、都不正确


7、【单选题】假设有int型变量a=0,b=1,c=10,计算表达式(b=c)||(a=b)后a,b,c的值是()。

A、a=0,b=1,c=10,

B、a=0,b=10,c=10,

C、a=10,b=10,c=10,

D、都不正确


8、【单选题】为了避免在嵌套的条件语句if-else中产生二义性,C语言规定:else子句总是与( )

A、缩排位置相同的if配对

B、其之前最近且不带else的if配对

C、其之前最近的if配对

D、第一个if配对


9、【单选题】阅读下面程序:该程序( )#include stdio.h main() { int x=-10, y=5, z=0; if (x=y+z) printf(***\n ); else printf($$$\n); }

A、有语法错不能通过编译

B、输出***

C、可以通过编译但不能通过连接

D、输出$$$


10、【单选题】若执行下面的程序时从键盘输入10,则输出是( )void main( ){ int a; scanf(%d,a);if(++a10) printf(%d\n,a++);else printf(%d\n,++a); }

A、12

B、11

C、10

D、9


11、【单选题】假定所有变量均已正确说明,下列程序段运行后x的值是( )。a=b=c=1;x=30; if(!a) x--; else if (!c) x=3; else x=4;

A、4

B、29

C、30

D、3


12、【单选题】阅读程序,该程序的输出结果是( )。void main( ) { int x=0,a=1,b=1; switch(x){ case 0: a++; case 1: b++;break; case 2: a++;b++; } printf(a=%d,b=%d\n,a,b); }

A、a=3,b=3

B、a=2,b=2

C、a=1,b=1

D、没有正确结果


13、【单选题】下列条件语句中,功能与其他语句不同的是( )。

A、if(a) printf(&quot;%d\n&quot;,x); else printf(&quot;%d\n&quot;,y);

B、if(a==0) printf(&quot;%d\n&quot;,y); else printf(&quot;%d\n&quot;,x);

C、if (a!=0) printf(&quot;%d\n&quot;,x); else printf(&quot;%d\n&quot;,y);

D、if(a==0) printf(&quot;%d\n&quot;,x); else printf(&quot;%d\n&quot;,y);


14、【单选题】下列关于swith语句和break语句结论中,正确的是( )

A、break语句是swith语句中的组成部分

B、在swith语句中可以根据需要使用或不需要使用break语句

C、在swith语句中必须使用break语句

D、break语句只能在swith语句中出现


15、【单选题】阅读程序,分析程序执行结果是( )#includestdio.hint main(){ int n=0,m=1,x=2; if(!n)x-=1; if(m) x-=2; if(x) x=x-3; printf(%d\n,x); return 0;}

A、2

B、-6

C、-1

D、-4


16、【单选题】以下正确的if语句是( )

A、if (n&gt;0) printf(&quot;%f&quot;,n)printf(&quot;%f&quot;,-n);

B、if (n&gt;0){ n=n+m; printf(&quot;%f&quot;,n); } else printf(&quot;%f&quot;,-n);

C、if (n&gt;0) { n=n+m; printf(&quot;%f&quot;,n); }; else printf(&quot;%f&quot;,-n);

D、if (n&gt;0) { n=n+m; printf(&quot;%f&quot;,n) }; else printf(&quot;%f&quot;,-n);


17、【单选题】若执行下述程序时从键盘输入3 4,则输出结果是( )。#include stdio.hmain( ){ int a,b,s;scanf(%d%d,a,b);s=a; if (ab) s=b; s*=s; printf(%d\n,s*s); }

A、186

B、256

C、324

D、400


18、【单选题】设x=10,y=5;z=15,执行下面一段程序后z的结果是( )。 if(xy) if(yz)x=y; else z=y;

A、7

B、6

C、5

D、4


主题5测验

1、【单选题】下面说法错误的是()

A、当条件满足时重复执行某一段程序(代码)就是循环

B、循环体只有一条语句时,可以不写成复合语句形式

C、while语句、for语句可以相互转换

D、do...while语句可以实现前判断结构


2、【单选题】下面说法错误的是( )

A、for语句通常用于循环次数已知或给定循环条件的循环处理

B、while语句可以实现直到型循环结构

C、while语句和for语句的循环体可能一次都不被执行

D、do...while语句的条件表达式在每一次执行循环体之后进行判断


3、【单选题】下面说法错误的是( )

A、循环结构分为前判断结构和后判断结构

B、while语句和do...while语句可以实现标记式循环

C、可以用for语句实现的循环一定可以用while语句实现

D、do…while语句与while语句的区别仅仅是关键字while的位置不同


4、【单选题】下面描述错误的是(  )

A、循环体中的break语句的功能是退出循环体

B、空语句是一个只有分号而无表达式的语句

C、循环体中的continue语句的功能是终止程序的执行

D、while循环与for循环可以相互嵌套


5、【单选题】下面说法错误的是( )

A、各循环语句所描述的循环结构必须完整,相互之间不允许交叉

B、for语句可以嵌套while语句

C、do...while语句不能嵌套while语句,容易引起二义性

D、do-while循环体中一定要有使条件表达式的值变为零的操作


6、【单选题】下面说法错误的是( )

A、break语句可退出循环体而执行该循环语句后面的语句

B、break语句可以出现在switch语句和循环语句中

C、continue语句只能出现在循环结构中

D、goto语句即可以从函数体跳出,也可以跳入函数体中


7、【单选题】2. 设有:int x=100,y; for(y=100;x!=y;++x,y++) printf(****\n); 则关于以下for循环的正确判断是( )

A、循环体只执行一次

B、是无限循环

C、循环体一次都不执行

D、for语句中存在语法错误


8、【单选题】与语句while(x)等价的语句是( )

A、while(x==0)

B、while(x!=0)

C、while(x!=1)

D、while(x==1)


9、【单选题】以下不是无限循环的是( )

A、for(y=6,x=1;x&lt;y;x+=2,y-=2) ;

B、for( ; ; ) ;

C、while(-5) x++;

D、for(i=20; ; i--) sum+=i;


10、【单选题】设i和k都是int类型,则for循环语句( )for(i=0,k=-1;k=1;i++,k++) printf(****\n);

A、循环结束的条件不合法

B、循环体一次也不执行

C、循环体只执行一次

D、是死循环


11、【单选题】设有程序段,正确的是( )int x=10;while (x=0)  x=x-1;

A、while循环执行10次

B、循环是无限循环

C、循环体语句一次也不执行

D、循环体语句只执行一次


12、【单选题】以下程序段中的do-while循环( )。m=-1;do{ m=m*m;}while(!m);

A、是死循环

B、执行二次

C、执行一次

D、有语法错误


13、【单选题】语句for (表达式1; ; 表达式3)等价于( )

A、for (表达式1; 0 ; 表达式3)

B、for (表达式1; 1 ; 表达式3)

C、for (表达式1; 表达式1; 表达式3)

D、for (表达式1; 表达式3; 表达式3)


14、【单选题】若k为整型变量,则以下for循环的执行次数是( )for (k=2; k==0; ) printf(%d,k--);

A、无限次

B、0次

C、1次

D、2次


15、【单选题】若有以下程序段:  for (m=1; m=100; m++)   { scanf(%d, y);   if (y0)   continue;   printf(%3d, m);   }正确的描述是( )

A、当y&lt;0时整个循环结束

B、y&gt;=0时什么也不输出

C、printf函数永远也不执行

D、最多允许输出100个非负整数


16、【单选题】下列关于swith语句和break语句结论中,正确的是( )

A、break语句是swith语句中的组成部分

B、在swith语句中可以根据需要使用或不需要使用break语句

C、在swith语句中必须使用break语句

D、break语句只能在swith语句中出现


主题6测验

1、【单选题】以下为一维整型数组a的正确说明是( )

A、int a(10);

B、int n=10,a[n];

C、int n;scanf(&quot;%d&quot;,&amp;n); int a[n];

D、

E、define SIZE 10;int a[SIZE];


2、【单选题】以下对二维数组a的正确说明是( )

A、int a[3][];

B、float a(3)(4);

C、double a[1][4];

D、float a[3,4];


3、【单选题】在C语言中,引用数组元素时,其数组下标的数据类型允许是( )。

A、整型常量

B、整型表达式

C、整型常量或整型表达式

D、任何类型的表达式


4、【单选题】若有说明:int a[10]; 则对数组元素的正确引用是( )

A、a[10]

B、a[3,5]

C、a(5)

D、a[10-10]


5、【单选题】以下能对一维数组a进行正确初始化的语句是( )。

A、int a[10]=(0,0,0,0,0);

B、int a[10]={ };

C、int a[]={0};

D、int a[10]={10*1};


6、【单选题】若有说明:int a[3][4];则对a数组元素的正确引用是( )

A、a[2][4]

B、a[1,3]

C、a[1+1][0]

D、a(2)(1)


7、【单选题】若有说明:int a[3][4]={0};则下面正确的叙述是( )。

A、只有数组元素a[0][0]可得到初值0

B、此说明语句不正确

C、数组a中各元素都可得到初值,但其值不一定为0

D、数组a中每个元素均可得到初值0


8、【单选题】对以下说明语句的正确理解是( )。int a[10]={6,7,8,9,10};

A、将5个初值依次赋给a[1]至a[5]

B、将5个初值依次赋给a[0]至a[4]

C、将5个初值依次赋给a[6]至a[10]

D、因为数组与初值的个数不相同,所以此语句不正确


9、【单选题】定义如下变量和数组:int k; int a[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是( )。for(k=0;k3;k++)printf(%d,a[k][2-k]);

A、3 5 7

B、3 6 9

C、1 5 9

D、1 4 7


10、【单选题】已知 int a[][4]={1,2,3,4,5,6,7};需要()个存储单元存储数组a。

A、7

B、8

C、9

D、无法确定


11、【单选题】定义了一维int型数组a[10]后,下面错误的引用是( )。

A、a[0]=1;

B、a[10]=2;

C、a[0]=5*2;

D、a[1]=a[2]*a[0];


12、【单选题】阅读程序,指出输出结果( )。 main() { int aa[4][4]={{1,2,3,4},{5,6,7,8},{3,9,10,2}{4,2,9,6}}; int i,s=0; for(I=0;i4;i++) s+=aa[i][1]; printf(%d\n,s);}

A、11

B、19

C、13

D、20


13、【单选题】若有说明:int a[3][4];则对a数组元素的不正确引用是( )。

A、a[0][3]

B、a[1][4]

C、a[1+1][0]

D、a[2][1]


14、【单选题】若有说明:int a[3][4];则对a数组元素的非法引用是( )。

A、a[0][2*1]

B、a[1][3]

C、a[4-2][0]

D、a[0][4]


15、【单选题】若有说明:int a[][4]={0,0};则下面不正确的叙述是( )。

A、数组a中的每个元素都可得到初值0

B、二维数组a的第1维大小为1

C、因为二维数组a中第二维大小的值除以初值个数的商为1,故数组a的行数为1

D、只有数组元素a[0][0]和a[0][1]可得到初值0,其余元素均得不到初值0


16、【单选题】下面程序( )。(每行程序前的数字为行号)1 main{}2 {3 float a[10]={0.0};4 int i;5 for(i=0;i3;i++) scanf(%d,a[i]);6 for(i=1;i10;i++) a[0]=a[0]+a[i];7 printf(%f\n,a[0]);8 }

A、没有错误

B、第3行有错误

C、第5行有错误

D、第7行有错误


17、【单选题】以下不正确的定义语句是( )。

A、double x[5]={2.0,4,0,6,0,8,0,10.0};

B、B.int y[5]={0,1,3,5,7,9};

C、char c1[]={'1','2','3','4','5'};

D、char c2[]={'\x10','\xa','\x8'};


18、【单选题】若有说明:int a[][3]={1,2,3,4,5,6,7};则数组a第一维的大小是( )。

A、2

B、3

C、4

D、无确定值


19、【单选题】定义如下变量和数组:int k, a[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是( )。for(k=0;k3;k++) printf(%d,a[k][k]);

A、3 5 7

B、3 6 9

C、1 5 9

D、1 4 7


20、【单选题】若有以下程序段:int a[]={4,0,2,3,1},i,j,t;for(i=1;i5;i++){ t=a[i]; j=i-1; while(j=0 ta[j]) { a[j+1]=a[j]; j--; } a[j+1]=t; }则该程序段的功能是( )。

A、对数组a进行插入排序(升序)

B、对数组a进行插入排序(降序)

C、对数组a进行选择排序(升序)

D、对数组a进行选择排序(降序)


本周作业



广东理工学院成人高考招生简章

广州城建职业学院成人高等教育招生简章

广东科学技术职业学院招生简章

广东科学技术职业学院招生简章

广东生态工程职业学院成人高考招生专业

清远职业技术学院成人高等教育招生专业简介

电子科技大学中山学院成人高等教育招生简章

广州涉外经济职业技术学院

韶关学院成人高考招生简章

广东财经大学成人高等教育招生简介

广东理工学院成人高考招生简章

广东第二师范学院成人高考招生简章

广东南方职业学院成人高考招生简章

广东亚视演艺职业学院成人高考招生简章


电话咨询