免费论文网 首页

上海海事大学c语言题库

时间:2016-08-30 16:02:46 来源:免费论文网

篇一:上海海事大学c语言试题1

试卷编号:9682 所属语言:C语言 试卷方案:期中 试卷总分:100分 共有题型:5种

一、填空共15题 (共计15分) 第1题 (1.0分) 题号:75

已知 i=5,写出语句 a=i++; 执行后整型变量a的值是【1】. 答案:

=======(答案1)======= 5

第2题 (1.0分) 题号:510

若a是int型变量,则计算表达式 a=25/3%3 后a的值为【1】. 答案:

=======(答案1)======= 2

第3题 (1.0分) 题号:88 表达式 a+=b 相当于表达式【1】. 答案:

=======(答案1)======= a=a+b

=========或========= a=b+a

第4题 (1.0分) 题号:436 下列程序的输出是【1】,

main(){int a=011;printf("%d\n",++a);}

答案:

=======(答案1)======= 10

第5题 (1.0分) 题号:432 执行下列语句的结果是

【1】,a=3;printf("%d,",++a);printf("%d",a++); 答案:

=======(答案1)======= 4,4

第6题 (1.0分) 题号:293 getchar()函数只能接收一个【1】. 答案:

=======(答案1)======= 字符

第7题 (1.0分) 题号:445

c语言表达式!(4>=6)&&(3<=7)的值是【1】. 答案:

=======(答案1)======= 1

第8题 (1.0分) 题号:95

已知a=13,b=6, a&&b的十进制数值为【1】. 答案:

=======(答案1)======= 1

第9题 (1.0分) 题号:457

设a,b,c,t为整型变量,初值为a=3,b=4,c=5, 执行完语句t=!(a+b)+c-1&&b+c/2

后,t的值是【1】. 答案:

=======(答案1)======= 1

第10题 (1.0分) 题号:311

若所用变量均已正确定义,则执行下面程序段后的 值是【1】.

for(i=0 ; i<2 ; i++ ) printf("YES"); printf("\n"); 答案:

=======(答案1)======= YESYES

第11题 (1.0分) 题号:438 以下程序的输出结果为【1】,

#include "stdio.h" main(){int a;for(a=0;a<10;a++);printf("%d",a);} 答案:

=======(答案1)======= 10

第12题 (1.0分) 题号:312

以下程序段要求从键盘输入字符,当输入字母为'Y' 时,执行循环体,则括号内应填写【1】.

ch=getchar();

while(ch ____ 'Y')/*在括号中填写*/

ch=getchar(); 答案:

=======(答案1)======= ==

第13题 (1.0分) 题号:333

若有以下数组a,数组元素:a[0]~a[9],其值为

9 4 12 8 2 10 7 5 1 3

该数组可用的最大下标值是【1】. 答案:

=======(答案1)======= 9

第14题 (1.0分) 题号:329

C语言中,数组名是一个不可变的【1】量,不能对它进行加减和赋值运算. 答案:

=======(答案1)======= 地址

第15题 (1.0分) 题号:341

定义int a[2][3];表示数组a中的元素个数

是【1】个. 答案:

=======(答案1)======= 6

二、判断共15题 (共计15分) 第1题 (1.0分) 题号:928 C程序中的关键字必须小写. 答案:Y

第2题 (1.0分) 题号:940 int a[9]; 则a数组的下标范围是1-9 答案:N

第3题 (1.0分) 题号:718

a=(b=4)+(c=6) 是一个合法的赋值表达式. 答案:Y

第4题 (1.0分) 题号:947

printf函数中,%c和%s都可以输出字符串. 答案:N

第5题 (1.0分) 题号:943

使用putchar函数时,必须在之前包含头文件stdio.h 答案:Y

第6题 (1.0分) 题号:721 语句scanf("%7.2f",&a);是一个合法的scanf函数. 答案:N

第7题 (1.0分) 题号:951

在执行switch语句时,default和各个case的出现次序不影响执行结果.

答案:Y

第8题 (1.0分) 题号:722 关系运算符<= 与 == 的优先级相同. 答案:N

第9题 (1.0分) 题号:930

关于if语句中,条件表达式只能是关系表达式或逻辑表达式 答案:N

第10题 (1.0分) 题号:953

C语言中的for语句可以用于循环次数已经确定的情况,但是不能用于循环次数不确定而只给出循环结束条件的情况. 答案:N

第11题 (1.0分) 题号:952

do-while循环是先判断循环条件表达式,后执行循环体;while循环是先执行循环体,后判断循环条件表达式. 答案:N

第12题 (1.0分) 题号:954

continue语句只结束本次循环,而不是终止整个循环的执行.break语句则是结束整个循环过程,不再判断执行循环的条件是否成立. 答案:Y

第13题 (1.0分) 题号:724

C语言中只能逐个引用数组元素而不能一次引用整个数组. 答案:Y

第14题 (1.0分) 题号:710 函数strlen("ASDFG\n")的值是7.

答案:N

第15题 (1.0分) 题号:926 任何数组的下标都是从0开始; 答案:Y

三、单项选择共20题 (共计40分) 第1题 (2.0分) 题号:2215

设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的 数据类型为(). A:int B:float C:double D:不确定答案:C

第2题 (2.0分) 题号:2029 以下不符合C语言语法的赋值语句是(). A:a=1,b=2 B:++j; C:a=b=5; D:y=(a=3,6*5);答案:A

第3题 (2.0分) 题号:2216 sizeof(float)是(). A:一个双精度型表达式 B:一个整型表达式 C:一种函数调用 D:一个不合法的表达式答案:B

第4题 (2.0分) 题号:2135 下列程序段的输出结果为().

int x=3,y=2;

printf("%d",(x-=y,x*=y+8/5)); A:1 B:7 C:3 D:5答案:C

第5题 (2.0分) 题号:2253

C语言中用于结构化程序设计的三种基本结构是().

A:顺序结构、选择结构、循环结构 B:if、switch、break C:for、while、do-while D:if、for、continue答案:A

第6题 (2.0分) 题号:2128 下列程序段的输出结果为(). float x=213.82631;

printf("%3d",(int)x); A:213.82 B:213.83 C:213 D:3.8答案:C

第7题 (2.0分) 题号:2063 执行下列语句后的输出为(). int j=-1;

if(j<=1) printf("****\n"); else printf("%%%%\n"); A:**** B:%%%% C:%%%%c

D:有错,执行不正确

答案:A

第8题 (2.0分) 题号:2144 int a=1,b=2,c=3;

if(a>b)a=b;

if(a>c)a=c;

则a的值为(). A:1 B:2 C:3 D:不一定答案:A

第9题 (2.0分) 题号:2143 int a=1,b=2,c=3;

if(a>c)b=a;a=c;c=b;则c的值为(). A:1 B:2 C:3 D:不一定答案:B

第10题 (2.0分) 题号:2136 下列程序段的输出结果为().

int a=7,b=9,t;

t=a*=a>b?a:b;

printf("%d",t); A:7 B:9 C:63 D:49

答案:C

第11题 (2.0分) 题号:2210

若有条件表达式 (exp)?a++:b--,则以下表达式中能完全等价于 表达式(exp)的是(). A:(exp==0) B:(exp!=0) C:(exp==1) D:(exp!=1)答案:B

第12题 (2.0分) 题号:2059 以下程序的运行结果是(). main() { int n;

for(n=1;n<=10;n++){

if(n%3==0) continue; printf("%d",n); } }

A:12457810 B:369 C:12

D:1234567890答案:A

第13题 (2.0分) 题号:2066 下列程序的输出为(). main()

{ int y=10; while(y--);

printf("y=%d\n",y); } A:y=0

B:while构成无限循环 C:y=1 D:y=-1

篇二:上海海事大学(C语言期末)上机题库 (3)

试卷编号:9050所属语言:Turbo C

试卷方案:09(2) 模拟试卷总分:100分

共有题型:5种

一、填空共15题 (共计15分)

第1题 (1.0分)

若有定义:char c='\010'; 则变量C中包含的字符个数为【1】.

答案: 1). 1

第2题 (1.0分)

写出语句 b=(a=6,a*3); 执行后整型变量b的值是【1】.

答案:1). 18

第3题 (1.0分)

C语言的三种基本结构是【1】结构、选择结构、循环结构.

答案:1). 顺序

第4题 (1.0分)

执行下面两个语句,输出的结果是【1】,char c1=97,c2=98;printf("%d %c",c1,c2); 答案:1). 97 b

第5题 (1.0分)

已知a=13,b=6, a&&b的十进制数值为【1】.

答案:1). 1

第6题 (1.0分)

假设变量a,b均为整型,表达式

(a=5,b=2,a>b?a++:b++,a+b)

的值是【1】.

答案:1). 8

第7题 (1.0分)

C语言表达式!(3<6)||(4<9)的值是【1】.

答案:1). 1

第8题 (1.0分)

c语言表达式!(4>=6)&&(3<=7)的值是【1】.

答案:1). 1

第9题 (1.0分)

以下程序的输出结果为【1】,

#include "stdio.h" main(){int a;for(a=0;a<10;a++);printf("%d",a);}

答案:1). 10

第10题 (1.0分)

设i,j,k均为int型变量,则执行完for循环

for(i=0,j=10;i<=j;i++,j--) k=i+j;

后,k的值为【1】.

答案: 1). 10

*第11题 (1.0分)

程序段int k=10; while(k=0) k=k-1循环体语句执行【1】次.答案:1). 0

第12题 (1.0分)

以下do-while语句中循环体的执行次数是【1】.

a=10;

b=0;

do { b+=2; a-=2+b; } while (a>=0);答案:1). 3

第13题 (1.0分)

若有以下数组a,数组元素:a[0]~a[9],其值为

9 4 12 8 2 10 7 5 1 3

该数组可用的最小下标值是【1】.

答案:1). 0

第14题 (1.0分)

如果函数不要求带回值,可用【1】来定义函数返回值为空.答案: 1). void

第15题 (1.0分)

函数调用语句func((e1,e2),(e3,e4,e5))中含有【1】个实参.答案:1). 2

二、判断共15题 (共计15分)

第1题 (1.0分)

在C程序中,每行中只能写一条语句答案:N

第2题 (1.0分)

x*=y+8 等价于 x=x*(y+8).答案:Y

第3题 (1.0分)

语句scanf("%7.2f",&a);是一个合法的scanf函数.答案:N

第4题 (1.0分)

若i =3,则printf("%d",-i++);输出的值为 -4.答案:N

第5题 (1.0分)

在switch-case语句中,必须使用default语句.答案:N

第6题 (1.0分)

关于if语句中,条件表达式只能是关系表达式或逻辑表达式答案:N

第7题 (1.0分)

continue语句只结束本次循环,而不是终止整个循环的执行.break语句则是结束整个循环过程,不再判断执行循环的条件是否成立.

答案:Y

第8题 (1.0分)

C语言中的for语句可以用于循环次数已经确定的情况,但是不能用于循环次数不确定而只给出循环结束条件的情况.

答案:N

第9题 (1.0分)

char c[]="Very Good"; 是一个合法的为字符串数组赋值的语句.

答案:Y

第10题 (1.0分)

若有定义和语句:

int a[3][3]={{3,5},{8,9},{12,35}},i,sum=0;

for(i=0;i<3;i++) sum+=a[i][2-i];则sum=21.

答案:Y

第11题 (1.0分)

数组赋初值时,初始值表中的数据项的数目可以大于或等于数组元素的个数.

答案:N

第12题 (1.0分)

C语言中只能逐个引用数组元素而不能一次引用整个数组. 答案:Y

第13题 (1.0分)

如果函数值的类型和return语句中表达式的值不一致,则以 函数类型为准.

答案:Y

第14题 (1.0分)

C程序中有调用关系的所有函数必须放在同一个源程序文件中. 答案:N

第15题 (1.0分)

通过return语句,函数可以带回一个或一个以上的返回值. 答案:N

三、单项选择共20题 (共计40分)

第1题 (2.0分)

若k,g均为int型变量,则下列语句的输出为().

k=017; g=111; printf("%d\t",++k); printf("%x\n",g++); A:15 6f

B:16 70

C:15 71

D:16 6f

答案:D

第2题 (2.0分)

下列语句的结果是().

main()

{ int j;

j=3;

printf("%d,",++j);

printf("%d",j++);

}

A:3,3

B:3,4

C:4,3

D:4,4

答案:D

第3题 (2.0分)

设以下变量均为int类型,则值不等于7的表达式是(). A:(x=y=6,x+y,x+1)

B:(x=y=6,x+y,y+1)

C:(x=6,x+1,y=6,x+y)

D:(y=6,y+1,x=y,x+1)

答案:C

第4题 (2.0分)

下列程序段的输出结果为().

float k=0.8567;

printf("%6.1f%%",k*100);

A:0085.6%%

B:85.7%

C:0085.6%

D:.857

答案:B

第5题 (2.0分)

以下程序段的执行结果是().

double x;x=218.82631; printf("%-6.2f\n",x);

A:输出格式描述符的域宽不够,不能输出

B:输出为21.38e+01

C:输出为218.83

D:输出为218.82631

答案:C

第6题 (2.0分)

以下程序的输出结果为().

main()

{int i=010,j=10;

printf("%d,%d\n",++i,j--);

}

A:11,10

B:9,10

C:010,9

D:10,9

答案:B

第7题 (2.0分)

为了避免在嵌套的条件语句 if-else 中产生二义性,C语言规定: else子句总是与()配对.

A:缩排位置相同的if

B:其之前最近的if

C:其之后最近的if

D:同一行上的if

答案:B

第8题 (2.0分)

下列运算符中优先级最高的是().

A:<

B:+

C:&&

D:!= 答案:B

第9题 (2.0分)

选择结构中的条件与循环结构中循环成立的条件,

在写法上可以是任一表达式,但其值只能被判断为"真"或"假".

哪个数作为逻辑"假"值().

A:-1

B:1

C:非零的数

D:0答案:D

第10题 (2.0分)

执行语句 for(i=1;i++<4;); 后变量 i 的值是(). A:3

B:4

C:5

D:不定

答案:C

第11题 (2.0分)

下列程序的输出为().

main()

{ int y=10;

while(y--);

printf("y=%d\n",y);

}

A:y=0

B:while构成无限循环

C:y=1

D:y=-1

答案:D

第12题 (2.0分)

while(fabs(t)<1e-5)if(!s/10)break;循环结束的条件是(). A:t>=1e-5&&t<=-1e-5&&s>-10&&s<10

B:fabs(t)<1e-5&&!s/10

C:fabs(t)<1e-5

D:s/10==0

答案:A

第13题 (2.0分)

对 for(表达式1; ;表达式3) 可理解为().

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

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

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

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

答案:B

第14题 (2.0分)

语句while(!E);中的表达式!E等价于().

A:E==0

B:E!=1

C:E!=0

D:E==1

篇三:上海海事大学c语言练习题

试卷编号:9049所属语言:Turbo C试卷方案:09(2) 模拟试卷总分:100分 共有题型:5种

一、填空共15题 (共计15分)

第1题 (1.0分)

C语言表达式!(3<6)||(4<9)的值是【1】.

答案:1). 1 逻辑“或”

第2题 (1.0分)

int a=1,b=2,c=3; 执行语句a=b=c;后a的值是【1】.

答案:1). 3

第3题 (1.0分)

以下程序的输出结果为【1】,

#include "stdio.h" main(){int a=010,j=10;printf("%d,%d\n",++a,j--);}

答案:1). 9,10

第4题 (1.0分)

执行下列语句的结果是【1】,a=3;printf("%d,",++a);printf("%d",a++);

答案:1). 4,4

第5题 (1.0分)

当a=1,b=2,c=3时,执行以下程序段后b=【1】.

if (a>c) b=a;

a=c;

c=b;

答案:1). 2

第6题 (1.0分)

假设有条件 int x=1,y=2,z=3;则表达式z+=x>y?++x:++y的值是【1】.

答案: 1). 6

第7题 (1.0分)

执行下列语句后,b 的十进制值是【1】.

int x=240,y=15,b;

char z='A';

b=(( x && y ) && ( z < 'a' ));

答案:1). 1

第8题 (1.0分)

当a=3,b=2,c=1;时,执行以下程序段后 a=【1】.

if(a>b) a=b;

if(b>c) b=c;

else c=b;

c=a;

答案:1). 2

第9题 (1.0分)

以下程序的输出结果为【1】,

#include "stdio.h" main(){int a;for(a=0;a<10;a++);printf("%d",a);}

答案:1). 10

第10题 (1.0分)

程序段int k=10; while(k=0) k=k-1循环体语句执行【1】次.

答案:1). 0

第11题 (1.0分)

以下程序段要求从键盘输入字符,当输入字母为'Y' 时,执行循环体,则括号内应填写【1】. ch=getchar();

while(ch ____ 'Y')/*在括号中填写*/

ch=getchar();

答案:1). ==

第12题 (1.0分)

以下do-while语句中循环体的执行次数是【1】.

a=10;

b=0;

do { b+=2; a-=2+b; } while (a>=0);

答案:1). 3

第13题 (1.0分)

C语言中,数组元素的下标下限为【1】.

答案:1). 0

第14题 (1.0分)

如果函数不要求带回值,可用【1】来定义函数返回值为空.

答案:1). void

第15题 (1.0分)

C语言源程序的基本单位是【1】.

答案:1). 函数

二、判断共15题 (共计15分)

第1题 (1.0分)

a=(b=4)+(c=6) 是一个合法的赋值表达式.答案:Y

第2题 (1.0分)

在C语言中,变量必需先定义后使用答案:Y

第3题 (1.0分)

语句 printf("%f%%",1.0/3);输出为 0.333333. 答案:N

第4题 (1.0分)

语句scanf("%7.2f",&a);是一个合法的scanf函数. 答案:N

第5题 (1.0分)

在switch-case语句中,必须使用default语句. 答案:N

第6题 (1.0分)

关系运算符(大于、小于)的优先级高于(低于加减乘除)算术运算符并且低于(高于)赋值运算符.答案:N

第7题 (1.0分)

C语言中的for语句可以用于循环次数已经确定的情况,但是不能用于循环次数不确定而只给出循环结束条件的情况.

答案:N

第8题 (1.0分)

do-while循环是先判断循环条件表达式,后执行循环体;while循环是先执行循环体,后判断循环条件表达式.答案:N

第9题 (1.0分)

在定义二维数组时,可以将该数组的两个维数全部省略答案:N

第10题 (1.0分)

任何数组的下标都是从0开始;答案:Y

第11题 (1.0分)

C语言中只能逐个引用数组元素而不能一次引用整个数组.答案:Y

第12题 (1.0分)

数组中的元素类型不能不同答案:Y

第13题 (1.0分)

通过return语句,函数可以带回一个或一个以上的返回值.答案:N

第14题 (1.0分)

如果函数值的类型和return语句中表达式的值不一致,则以

函数类型为准.答案:Y

第15题 (1.0分)

C程序中有调用关系的所有函数必须放在同一个源程序文件中.答案:N

三、单项选择共20题 (共计40分)

第1题 (2.0分)

下列程序的输出结果是().

main()

{

printf("%d\n",null);

}

A:0

B:变量无定义

C:-1

D:1

答案:B

第2题 (2.0分)

用下列语句定义a,b,c,然后执行b=a、c='b'+b,则b,c的值是().

long a=0xffffff;

int b; char c;

A:0ffffff 和0x61

B:-1和98

C:-1和97

D:指向同一地址

答案:C

第3题 (2.0分)

已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用 八进制表示的字符常量'\101'是().

A:字符A

B:字符a

C:字符e

D:非法的常量

答案:A

第4题 (2.0分)

若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97), 则以下程序段的执行结果是().

进制整数)

A:因变量类型与格式描述符的类型不匹配,输出无定值

B:输出项与格式描述符个数不符,输出为零值或不定值

C:61,141,k=%12

D:61,141,k=%d 答案:C

第5题 (2.0分)

若a是float型变量,b是unsigned型变量,以下输入语句中合法的是(). A:scanf("%6.2f%d",&a,&b);

B:scanf("%f%n",&a,&b);

C:scanf("%f%3o",&a,&b);

D:scanf("%f%f",&a,&b);

答案:C

第6题 (2.0分)

以下程序的输出结果为().

main()

{int i=010,j=10;

printf("%d,%d\n",++i,j--);

}

A:11,10

B:9,10

C:010,9

D:10,9

答案:B

第7题 (2.0分)

int a=1,b=2,c=3;

if(a>c)b=a;a=c;c=b;则c的值为().

A:1

B:2

C:3

D:不一定

答案:B

第8题 (2.0分)

下列各m的值中,能使m%3==2&&m%5==3&&m%7==2为真的是().

A:8

B:23

C:17

D:6

答案:B

第9题 (2.0分)

以下运算符中,优先级最高的运算符是().

A:?: ch='a'; k=12; printf("%x,%o,",ch,ch); printf("k=%%%d\n",k);(x十六进制整数,o八

B:++

C:&&

D:,

答案:B

第10题 (2.0分)

设j和k都是int类型,则for循环语句

for(j=0,k=0;j<=9&&k!=876;j++)( j<=9,k!=876) scanf("%d",&k)循环;(). A:最多执行10次

B:最多执行9次

C:是无限循环

D:循环体一次也不执行

答案:A

第11题 (2.0分)

下面有关 for 循环的正确描述是().

A:for 循环只能用于循环次数已经确定的情况

B:for 循环是先执行循环循环体语句,后判断表达式

C:在 for 循环中,不能用 break 语句跳出循环体

D:for 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来 答案:D

第12题 (2.0分)

以下程序的运行结果是().

main()

{ int n;

for(n=1;n<=10;n++)

{

if(n%3==0) continue;

printf("%d",n);

}

}

A:12457810

B:369

C:12

D:1234567890

答案:A

第13题 (2.0分)

以下程序段的输出结果为().

for(i=4;i>1;i--)

for(j=1;j<i;j++)

putchar('#');

A:无

B:######

C:#

D:###

答案:B


上海海事大学c语言题库
由:免费论文网互联网用户整理提供,链接地址:
http://m.csmayi.cn/show/32675.html
转载请保留,谢谢!
相关阅读
最近更新
推荐专题