C语言基础知识练习题.docx

上传人:b****6 文档编号:12399708 上传时间:2023-06-05 格式:DOCX 页数:15 大小:74.04KB
下载 相关 举报
C语言基础知识练习题.docx_第1页
第1页 / 共15页
C语言基础知识练习题.docx_第2页
第2页 / 共15页
C语言基础知识练习题.docx_第3页
第3页 / 共15页
C语言基础知识练习题.docx_第4页
第4页 / 共15页
C语言基础知识练习题.docx_第5页
第5页 / 共15页
C语言基础知识练习题.docx_第6页
第6页 / 共15页
C语言基础知识练习题.docx_第7页
第7页 / 共15页
C语言基础知识练习题.docx_第8页
第8页 / 共15页
C语言基础知识练习题.docx_第9页
第9页 / 共15页
C语言基础知识练习题.docx_第10页
第10页 / 共15页
C语言基础知识练习题.docx_第11页
第11页 / 共15页
C语言基础知识练习题.docx_第12页
第12页 / 共15页
C语言基础知识练习题.docx_第13页
第13页 / 共15页
C语言基础知识练习题.docx_第14页
第14页 / 共15页
C语言基础知识练习题.docx_第15页
第15页 / 共15页
亲,该文档总共15页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

C语言基础知识练习题.docx

《C语言基础知识练习题.docx》由会员分享,可在线阅读,更多相关《C语言基础知识练习题.docx(15页珍藏版)》请在冰点文库上搜索。

C语言基础知识练习题.docx

C语言基础知识练习题

C语言基础知识练习题

习题

一.选择题

2.1以下选项中不正确的整型常量是

A.12.B.-20C.1,000D.456

2.2以下选项中正确的实型常量是

A.0B.3.1415C.0.329×102D..871

2.3以下选项中不正确的实型常量是

A.2.607E-1B.0.8103e2C.-77.77D.456e-2

2.4以下选项中不合法的用户标识符是

A.abc.cB.fileC.MainD.PRINTF

2.5以下选项中不合法的用户标识符是

A._123B.printfC.A$D.Dim

2.6C语言中运算对象必需是整型的运算符是

A.%B./C.!

D.**

2.7可以在C程序中用作用户标识符的一组标识是

A.voidB.as_b3C.ForD.2c

define_123-abcDO

WORDIfcaseSIG

2.8若变量已正确定义并赋值,符合C语言语法

2.12不合法的十六进制数是

A.oxffB.0XabcC.0x11D.0x19

二、填空题

2.14若k为int整型变量且赋值11。

请写出运算k++后表达式的值____和变量k的值_____.

2.15若x为double型变量,请写出运算x=3.2,++x后表达式的值___和变量k的值_____。

2.16函数体由符号____开始,用符号____结束。

函数体的前面是____部分,其后是___部分。

2.17C语言中的标识符可以分为___、___和预定义标识符三类。

2.18在C语言程序中,用关键字____定义基本整型变量,用关键字___定义单精度型变量,用关键字___定义双精度型变量。

2.19把a1、a2定义成单精度实型变量,并赋初值1的定义语句是____。

2.20C程序中定义的变量,代表内存中的一个_____。

2.21表达式3.5+1/2的计算结果是____。

2.22对以下数学式,写出三个等价的C语言表达式___、___、____.

2.23表达式s=10应当读作“_____”。

2.24计算机中内存储器的最小存储单位称____,其中能容纳的数是____。

2.25通常一个字节包含___个二进制位。

在一个字节中能存放的最大(十进制)整数是____,它的二进制数的形式是____;最小(十进制)整数是____,它的二进制数的形式是_____。

2.26当计算机用两个字节存放一个整数时,其中能存放的最大(十进制)整数是____、最小(十进制)整数是____,它的二进制数的形式是____。

2.27在C语言中整数可用____进制数、____进制数和___进制数三种数制表示。

三、上机改错题(读者最好在TURBOC环境下上机试一试,以便熟悉出错信息)。

2.28请指出以下C程序的错误所在

#include“stdio.h”;

main();/*mainfunction*/

floatr,s;/*/*risradius*/,/*sisareaofcircular*/*/

r=5.0;

s=3.14159*r*r;

pritf(“%f\n”,s)

2.29请指出以下C程序的错误所在

#include“stdio.h”

main/*mainfunction*/

{floata,b,c,v;/*a,b,caresides,visvolumeofcube*/

a=2.0;b=3.0;c=4.0

v=a*b*c;

printf(“%f\n”,v)

}

习题

一、选择题

3.1若a、b、c、d都是int类型变量且初值为0,以下选项不正确的赋值语句是

A、a=b=c=100;B、d++;C、c+b;D、d=(c=22)-(b++);

3.2以下选项中不是C语句的是

A、{inti;i++;printf(“%d\n”,i)}B、;

C、a=5,c=10D、{;}

3.3以下合法的C语言赋值语句是

A、a=b=28B、k=int(a+b);C、a=58,b=58D、--i;

3.4以下程序的输出结果是

A、0B、1C、3D、不确定的值

main()

{intx=10,y=3;

printf(“%d\n”,y=x/y);

}

3.5若变量已正确定义为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,&c)

3.6若变量已正确定义为float类型,要通过赋值语句scanf(“%f%f%f”,&a,&b,&c)给a赋予10、b赋予22、赋予33,以下不正确的输入形式是

A、10B、10.0,22.0,33.0C、10.0D、1022

2222.033.033

33

3.7若变量已正确定义,要将a和b中的数进行交换,下面选项中不正确的是

A、a=a+b,b=a-b,a=a-b;B、t=a,a=b,b=t;

C、a=t;t=b;b=a;D、t=b;b=a;a=t;

3.8若变量已正确定义,以下程序段的输出结果是

A、输出格式说明与输出项不匹配,输出无定值B、5.170000

C、5.168000D、5.169000

x=5.16894

printf(“%f\n”,(int)(x*1000+0.5)/(float)1000);

3.9若有以下程序段,c3中的值是

A、0B、1/2C、0.5D、1

intc=1,c2=2,c3;

c3=c1/c2;

3.10若有以下程序段,其输出结果是

A、0,0,-10B、0,0,5C、-10,3,-10D、3,3,-10

inta=0,b=0,c=0;

c=(a-=a-5),(a=b,b+3);

printf(“%d,%d,%d\n”,a,b,c);

3.11当运行以下程序时,在键盘上从第一列开始输入9876543210(在此处代表Enter),则程序的输出结果是

A、a=98,b=765,c=4321B、a=10,b=432,c=8765

C、a=98,b=765.000000,c=4321.000000D、a=98,b=765.0,c=4321.0

main()

{inta;floatb,c;

scanf(“%2d%3f%4f”,&a,&b,&c);

printf(“\na=%d,b=%f,c=%f\n”,a,b,c);

}

3.12以下程序的输出结果是

A、a=%2,b=%5B、a=2,b=5

C、a=%%d,b=%%dD、a=%d,,b=%d

main()

{inta=2,b=5;

printf(“a=%%d,b=%%d\n”,a,b);

}

3.13若int类型占两个字节,则以下程序段的输出是

A、-1,-1B、-1,32767C、-1,32768D、-1,65535

main()

inta=-1;

printf(“%d,%u\n”,a,a);

3.14以下程序段的输出是

A、*496*B、*496*C、*000496*D、输出格式符不合法

intx=496;

printf(“*%-6d*\n”,x);

3.15以下程序段的输出是

A、|3.1415|B、|3.0|C、|3|D、|3.|

floata=3.1415;

printf(“|%6.0f|\n”,a);

3.16printf(“|%10.5f|\n”,12345.678);语句的输出是

A、|2345.67800|B、|12345.6780|C、|12345.67800|D、|12345.678|

3.17以下程序段的输出是

A、*0000057.66*B、*57.66*C、*0000057.67*D、*57.67*

floata=57.666;

printf(“%010.2f*\n”,a);

3.18若变量c定义为float类型,当从终端输入:

283.1900表示Enter键,能给变量c赋以283.19的输入语句是

A、scanf(“%f”,c);B、scanf(“%8.4f”,&c);

C、scanf(“%6.2f”,&c);D、scanf(“%8”,&c);

3.19若变量已正确说明,要求语句scanf(“a=%f,b=%f”,&a,&b);给a赋予3.12、给b赋予9.0,则正确的输入形式是(∪表示空格,表示Enter键)

A、3.12∪∪9.0B、a=∪∪3.12b=∪∪∪9

C、a=3.12,b=9D、a=3.12∪∪,b=9∪∪∪∪

3.20以下程序的输出结果是

A、98B、89C、66D、以上三个都不对

#include“math.h”

main()

{doublea=-3.0,b=2;

printf(“%3.0f%3.0f\n”,pow(b,fabs(a)),pow(fabs(a),b));

}

二、填空题

3.21若有以下定义,请写出以下程序段中输出语句执行后的输出结果_____

inti=-200,j=2500;

printf(“

(1)%d%d”,i,j);

printf(“

(2)i=%d,j=%d\n”,i,j);

printf(“(3)i=%d\nj=%d\n”,i,j);

3.22变量i、j、k已定义为int类型并有初值0,用以下语句进行输入时

scanf(“%d”,&i);scanf(“%d”,&j);scanf(“%d”,&k);

从键盘输入(表示Enter键):

12.3

则变量i、j、k的值分别是___、___、____。

3.23复合语句在语法上被认为是____。

空语句的形式是____。

3.24C语言的最后用____结束。

3.25以下程序段,要求通过scanf语句给变量赋值,然后输出变量的值。

写出运行时给k输入100,给a输入25.81,给x输入1.89234时的三种可能的输入形式___、___、____。

intk;floata;

scanf(“%d%f%lf”,&k,&a,&x);

printf(“k=%d,a=%f,x=%f\n”,k,a,x);

3.26以下程序段的输出结果是____。

intx=0177;

printf(“x=%3d,x=%6d,x=%6o,x=%6x,x=%6u\n”,x,x,x,x,x);

3.27以下程序段的输出结果是____。

intx=0177;

printf(“x=%-3d,x=%-6d,x=$%6d,x=$%06d,x=%%06d\n”,x,x,x,x,x);

3.28以下程序段的输出结果是____。

doublea=513.789215;

printf(“a=%8.6f,a=%14.8f,a=%14.8lf\n”,a,a,a,a);

三、编程题和改错题

3.29以下程序多处有错。

要按下面指定的形式输入数据和输出数据时,请对该程序做相应的修改。

main()

{doublea,b,c,s,v;

printf(inputa,b,c:

\n);

scanf(“%d%d%d”,a,b,c);

s=a*b;

v=a*b*c;

printf(“%d%d%d”,a,b,c);

printf(“s=%f\n”,s,”v=%d\n”,v);

}

当程序执行时,屏幕的显示和要求输入形式如下:

inputa,b,c:

2.02.03.0此处的2.02.03.0是用户输入的数据

a=2.000000,b=2.000000,c=3.000000此处是要求的输出形式

s=4.000000,v=12.000000

3.30编写程序,把560分钟换算成小时和分钟表示,然后时行输出。

3.31编写程序,输入两个整数:

1500和350,求出它们的商数和余数进行输出。

3.32编写程序,读入三个双精度数,求它们的平均值并保留此平均值小数点后一位数,对小数点后第二位数时行四舍五入,最后输出结果。

3.33编写程序,读入三个整数给a、b、c,然后交换它们中的数,把a中原来的值给b,把b中原来的值给c,把c中原来的值给a。

习题

一、选择题

4.1下列运算符中优先级最高的运算符是

A、!

B、%C、-=D、&&

4.2下列运算符中优先级最低的运算符是

A、||B、!

=C、<=D、+

4.3为表示关系x≥y≥z,应使用的C语言表达式是

A、(x>=y)&&(y>=z)B、(x>=y)AND(y>=z)

C、(x>=y>=z)D、(x>=y)&(y>=z)

4.4设a,b和c都是int型变量,且a=3,b=4,c=5;则以下的表达式中,值为0的表达式是

A、a&&bB、a<=bC、a||b+c&&b-cD、!

((a

c||1)

4.5以下程序的输出结果是

A、0B、1C、2D、3

main()

{inta=2,b=-1,c=2;

if(a

if(b<0)c=0;

elsec+=1;

printf(“%d\n”,c);

}

4.6以下程序的输出结果是

A、1B、2C、3D、4

main()

{intw=4,x=3,y=2,z=1;

printf(“%d\n”,(w

w:

z

z:

x));

}

4.7若执行以下程序时从键盘上输入3和4,则输出结果是

A、14B、16C、18D、20

main()

{inta,b,s;

scanf(“%d%d”,&a,&b);

s=a;

if(a

s*=s;

printf(“%d\n”,s);

}

4.8下面的程序片段所表示的数学函数关系是

A、y=B、y=

C、y=D、y=

y=-1;

if(x!

=0)y=1;

if(x>0)y=1;

elsey=0;

4.9运行以下程序后,输出

A、****B、&&&&

C、####&&&&D、有语法错不能通过编译

main()

{intk=-3;

if(k<=0)printf(“****\n”);

elseprintf(“&&&&\n”);

}

4.10若a和b均是正整型变量,以下正确的switch语句是

A、switch(pow(a,2)+pow(b,2))(注:

调用求幂的数学函数)

{case1:

case3:

y=a+b;break;

case0:

case5:

y=a-b;

}

B、switch(a*a+b*b);

{case3;

case1;y=a+b;break;

case0;y=b-a;break;

}

C、switch(a)

{default:

x=a+b;

case10:

y=a-b;break;

case11:

x=a*d;break;

}

D、switch(a+b)

{case10:

x=a+b;break;

case11:

y=a-b;break;

}

二、填空题

4.11C语言中用_____表示逻辑值“真”,用_____表示逻辑值“假”。

4.12C语言中的关系运算符按优先级别是____、____、____、____。

4.13C语言中的逻辑运算符按优先级别是____、____、____。

4.14C语言中的关系运算符和逻辑运算符的优先级别是____、____、____、____、____、____、____。

4.15C语言中逻辑运算符_____的优先级高于算术运算符。

4.16将下列数学式改写成C语言的关系表达式或逻辑表达式A、_____B、_____。

A、a=b或a4

4.17请写出以下程序的输出结果_______。

main()

{inta=100;

if(a>100)printf(“%d\n”,a>100);

elseprintf(“%d”,a<=100);

}

4.18请写出与以下表达式等价的表达式A、_______B、_______。

A、!

(x>0)B、!

0

4.19当a=1,b=2,c=3时,以下if语句执行后,a、b、c中的值分别为_____、_____、_____。

if(a>c)

b=a;a=c;c=b;

4.20若变量已正确定义,以下语句段的输出结果是_______。

x=0;y=2;z=3;

switch(x)

{case0:

switch(y==2)

{case1:

printf(“*”);break;

case2:

printf(“%”);break;

}

case1:

switch(z)

{case1:

printf(“$”);

case2:

printf(“*”);break;

default:

printf(“#”)

}

}

三、编程题

4.21当a为正数时,请将以下语句改写成switch语句。

if(a<30)m=1;

elseif(a<40)m=2;

elseif(a<50)m=3;

elseif(a<60)m=4;

elsem=5;

4.22编写程序,输入一位学生的生日(年:

y0、月:

m0、日:

d0);并输入当前的日期(年:

y1、月:

m1、日:

d1);输出该生的实足年龄。

4.23编写程序,输入一个整数,打印出它是奇数还是偶数。

4.24编写程序,输入a、b、c三个数,打印出最大者。

4.25有一函数:

y=

编写一程序,要求输入x的值,输出y的值,分别用:

(1)不嵌套的if语句

(2)嵌套的if语句

(3)if_else语句(4)switch语句

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2