c语言

更新时间:2024-03-14 19:32:02 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

试卷编号:9660 所属语言:C语言 试卷方案:练习1 试卷总分:100分 共有题型:5种

一、填空 共8题 (共计8分) 第1题 (1.0分) 题号:388

设x和y均为int型变量,且x=1,y=2,则表达式1.0+x/y的值为【1】. 答案:

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

=========或========= 1

第2题 (1.0分) 题号:516

若s是int型变量,且s=6,则下面表达式的值是【1】.

s%2+(s+1)%2 答案:

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

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

main(){int a=011;printf(\ 答案:

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

第4题 (1.0分) 题号:431

执行下面两个语句,输出的结果是【1】,char c1=97,c2=98;printf(\ 答案:

=======(答案1)======= 97 b

第5题 (1.0分) 题号:440

设a=3,b=4,c=5,则表达式!(a+b)+c-1&&b+c/2的值为【1】. 答案:

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

第6题 (1.0分) 题号:35

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

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

第7题 (1.0分) 题号:532

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

a=10;

b=0;

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

答案:

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

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

#include \a;for(a=0;a<10;a++);printf(\ 答案:

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

二、判断 共15题 (共计15分) 第1题 (1.0分) 题号:928

C程序中的关键字必须小写. 答案:Y

第2题 (1.0分) 题号:717 x*=y+8 等价于 x=x*(y+8). 答案:Y

第3题 (1.0分) 题号:937 在C程序中,每行中只能写一条语句 答案:N

第4题 (1.0分) 题号:715

整数 -32100可以赋值给int型和long int型变量. 答案:Y

第5题 (1.0分) 题号:720

语句 printf(\输出为 0.333333.

答案:N

第6题 (1.0分) 题号:944

C语言中,赋值表达式加上分号就构成了赋值语句. 答案:Y

第7题 (1.0分) 题号:719

C语言本身不提供输入输出语句,输入和输出操作是由函数来 实现的. 答案:Y

第8题 (1.0分) 题号:947

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

第9题 (1.0分) 题号:930

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

第10题 (1.0分) 题号:936

在C语言中,逻辑\真\等价于不等于0的数 答案:Y

第11题 (1.0分) 题号:956

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

第12题 (1.0分) 题号:950

逻辑运算符中的\和\低于关系运算符,\高于算术运算符. 答案:Y

第13题 (1.0分) 题号:953

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

第14题 (1.0分) 题号:952

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

第15题 (1.0分) 题号:954

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

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

下面四个选项中,均是不合法的用户标识符的选项是(). A:A P_0 do B:float la0 _A C:b-a goto int D:_123 temp int 答案:C

第2题 (2.0分) 题号:2022 下列数据中,为字符串常量的是(). A:A B:\C:How do you do. D:$abc 答案:B

第3题 (2.0分) 题号:2214

在C语言中,char型数据在内存中的存储形式是(). A:补码 B:反码 C:原码 D:ASCII码 答案:D

第4题 (2.0分) 题号:2013

以下运算符中,优先级最高的运算符是(). A:= B:!= C:*(乘号) D:() 答案:D

第5题 (2.0分) 题号:2024 下列语句的结果是(). main() { int j; j=3;

printf(\printf(\} A:3,3 B:3,4 C:4,3 D:4,4

答案:D

第6题 (2.0分) 题号:2042

若a是float型变量,b是unsigned型变量,以下输入语句中合法的是().

A:scanf(\B:scanf(\C:scanf(\D:scanf(\ 答案:C

第7题 (2.0分) 题号:2049 以下程序的输出结果为(). main()

{int i=010,j=10;

printf(\} A:11,10 B:9,10

C:010,9 D:10,9 答案:B

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

float k=0.8567;

printf(\A:0085.6%% B:85.7% C:0085.6% D:.857 答案:B

第9题 (2.0分) 题号:2189

从键盘上输入某字符串时,不可使用的函数是().

A:getchar() B:gets() C:scanf() D:fread() 答案:A

第10题 (2.0分) 题号:2040

若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97),

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

ch='a'; k=12; printf(\printf(\

A:因变量类型与格式描述符的类型不匹配,输出无定值 B:输出项与格式描述符个数不符,输出为零值或不定值 C:61,141,k= D:61,141,k=%d 答案:C

第11题 (2.0分) 题号:2046 以下程序的输出结果是(). main()

{int i,j,k,a=3,b=2; i=(--a==b++)?--a:++b; j=a++;k=b;

printf(\}

A:i=2,j=1,k=3 B:i=1,j=1,k=2 C:i=4,j=2,k=4 D:i=1,j=1,k=3 答案:D

第12题 (2.0分) 题号:2067

C语言的if语句嵌套时,if与else的配对关系是(). A:每个else总是与它上面的最近的if配对 B:每个else总是与最外层的if配对 C:每个else与if的配对是任意的 D:每个else总是与它上面的if配对

答案:A

第13题 (2.0分) 题号:2146 求平方根函数的函数名为(). A:cos B:abs C:pow D:sqrt 答案:D

第14题 (2.0分) 题号:2133

下列运算符中是C语言关系运算符的是(). A:~ B:! C:& D:!=

答案:D

第15题 (2.0分) 题号:2011 以下运算符中,优先级最高的运算符是(). A:*= B:>= C:(类型) D:+ 答案:C

第16题 (2.0分) 题号:2123

设j和k都是int类型,则for循环语句(). for(j=0,k=0;j<=9&&k!=876;j++) scanf(\A:最多执行10次 B:最多执行9次 C:是无限循环

D:循环体一次也不执行 答案:A

第17题 (2.0分) 题号:2249

若i为整型变量,则以下循环执行次数是(). for(i=2;i==0;) printf(\

A:无限次 B:0次 C:1次 D:2次 答案:B

第18题 (2.0分) 题号:2061

在以下给出的表达式中,与 do--while(E)语句中的(E)不等价的 表达式是(). A:(!E==0) B:(E>0||E<0) C:(E==0) D:(E!=0)

答案:C

第19题 (2.0分) 题号:2141 以下程序段的输出结果为().

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

for(j=1;j

putchar('#'); A:无 B:###### C:# D:### 答案:B

第20题 (2.0分) 题号:2069 设j和k都是int类型,则for循环语句

for(j=0,k=0;j<=9&&k!=876;j++) scanf(\A:最多执行10次

B:最多执行9次 C:是无限循环

D:循环体一次也不执行 答案:A

四、程序填空 共3题 (共计27分) 第1题 (9.0分) 题号:404

/*------------------------------------------------------- 【程序填空】

---------------------------------------------------------

题目:从键盘上输入两个复数的实部与虚部,求出并输出它们的 和、差、积、商。

-------------------------------------------------------*/ #include void main()

{float a,b,c,d,e,f;

printf(\输入第一个复数的实部与虚部:\ scanf(\

printf(\输入第二个复数的实部与虚部:\

scanf(\/***********SPACE***********/ 【?】; f=b+d;

printf(\相加后复数:实部:%f,虚部:%f\\n\ e=a*c-b*d;

/***********SPACE***********/ 【?】;

printf(\相乘后复数:实部:%f,虚部: e=(a*c+b*d)/(c*c+d*d); /***********SPACE***********/ 【?】;

printf(\相除后复数:实部:%f,虚部:} 答案:

=======(答案1)======= e=a+c

=========或========= e=c+a

%f\\n\%f\\n\=======(答案2)======= f=a*d+b*c

=========或========= f= a*d + b*c

=========或========= f= a * d + b * c

=======(答案3)======= f=(b*c-a*d)/(c*c+d*d) =========或========= f=(b*c-a*d) / (c*c+d*d) =========或=========

f=( b * c - a * d ) / ( c * c + d * d )

第2题 (9.0分) 题号:428

/*------------------------------------------------------- 【程序填空】

---------------------------------------------------------

题目:输入一个学生的生日(年:y0、月:m0、日:d0),并输 入当前日期(年:y1、月:m1、日:d1)。求出该学生的

年龄(实足年龄)。

-------------------------------------------------------*/ #include main()

{int age,y0,y1,m0,m1,d0,d1;

printf(\输入生日日期(年、月、日)\/***********SPACE***********/ 【?】(\ printf(\输入当前日期(年、月、日)\ scanf(\ age=y1-y0;

/***********SPACE***********/ if(m0【?】m1)age--;

/***********SPACE***********/ if((m0【?】m1)&&(d0>d1))age--; printf(\} 答案:

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

=======(答案2)======= >

=======(答案3)======= ==

第3题 (9.0分) 题号:459

/*------------------------------------------------------- 【程序填空】

---------------------------------------------------------

题目:在歌星大奖赛中,有10个评委为参赛的选手打分,分数为 1~100分。选手最后得分为:去掉一个最高分和一个最低分 后其余8个分数的平均值。请编写一个程序实现。 -------------------------------------------------------*/

#include void main() {

int score,i,max,min,sum;

max=-32768; min=32767; sum=0;

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

printf(\/***********SPACE***********/

scanf(\【?】); sum+=score;

/***********SPACE***********/

if(【?】)max=score; /***********SPACE***********/

if(【?】)min=score; }

printf(\score:%d\\n\

/***********SPACE***********/

printf(\【?】); }

答案:

=======(答案1)======= &score

=======(答案2)======= score>max

=========或========= max

=======(答案3)======= score

=========或========= min>score

=======(答案4)======= (sum-max-min)/8 =========或========= (sum -max - min )/8

五、程序设计 共1题 10分)(共计

第1题 (10.0分) 题号:406

/*------------------------------------------------ 【程序设计】

--------------------------------------------------

*题目:编写函数fun计算下列分段函数的值: x*x+x+6 x<0且x≠-3

f(x)= x*x-5x+6 0≤x<10且x≠2及x≠3 x*x-x-1 其它

-------------------------------------------------- 注意:部分源程序给出如下。请勿改动主函数 main和其它函数中的任何内容,仅在函 数fun的花括号中填入所编写的若干语句。 ------------------------------------------------*/ #include \float fun(float x) {

/**********Program**********/

/********** End **********/ } main() { float x,f;

printf(\ scanf(\ f=fun(x);

printf(\ getch(); yzj(); } yzj() {

FILE *IN,*OUT; int n; float i; float o;

IN=fopen(\if(IN==NULL)

{printf(\}

OUT=fopen(\if(OUT==NULL)

{printf(\}

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

fscanf(IN,\ o=fun(i);

fprintf(OUT,\}

fclose(IN); fclose(OUT); }

答案:---------------------- OUT.Dat 为空 float y;

if (x<0 && x!=-3.0) y=x*x+x+6;

else if(x>=0 && x<10.0 && x!=2.0 && x!=3.0) y=x*x-5*x+6; else y=x*x-x-1; return y;

----------------------

本文来源:https://www.bwwdw.com/article/oue8.html

Top