ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:74.04KB ,
资源ID:12399708      下载积分:6 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-12399708.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言基础知识练习题.docx)为本站会员(b****6)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

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

1、C语言基础知识练习题C语言基础知识练习题习题一选择题2.1 以下选项中不正确的整型常量是A12. B.-20 C.1,000 D.4 5 62.2 以下选项中正确的实型常量是A0 B.3. 1415 C.0.329102 D. .8712.3以下选项中不正确的实型常量是A2.607E-1 B.0.8103e 2 C.-77.77 D.456e-22.4 以下选项中不合法的用户标识符是Aabc.c B.file C.Main D.PRINTF2.5以下选项中不合法的用户标识符是A_123 B.printf C.A$ D.Dim2.6 C语言中运算对象必需是整型的运算符是A B./ C.! D.*

2、2.7可以在C程序中用作用户标识符的一组标识是Avoid B.as_b3 C.For D.2cdefine _123 -abc DOWORD If case SIG2.8 若变量已正确定义并赋值,符合C语言语法2.12 不合法的十六进制数是Aoxff B.0Xabc C.0x11 D.0x19二、填空题2.14 若k为int整型变量且赋值11。请写出运算k+后表达式的值_和变量k的值_.2.15 若x为double型变量,请写出运算x=3.2,+x后表达式的值_和变量k的值_。2.16 函数体由符号_开始,用符号_结束。函数体的前面是_部分,其后是_部分。2.17 C语言中的标识符可以分为_、

3、_和预定义标识符三类。2.18 在C语言程序中,用关键字_定义基本整型变量,用关键字_定义单精度型变量,用关键字_定义双精度型变量。2.19 把a1、a2定义成单精度实型变量,并赋初值1的定义语句是_。2.20 C程序中定义的变量,代表内存中的一个_。2.21 表达式3.5+1/2的计算结果是_。2.22 对以下数学式,写出三个等价的C语言表达式_、_、_. 2.23 表达式s=10应当读作“_”。2.24 计算机中内存储器的最小存储单位称_,其中能容纳的数是_。2.25 通常一个字节包含_个二进制位。在一个字节中能存放的最大(十进制)整数是_,它的二进制数的形式是_;最小(十进制)整数是_,

4、它的二进制数的形式是_。2.26 当计算机用两个字节存放一个整数时,其中能存放的最大(十进制)整数是_、最小(十进制)整数是_,它的二进制数的形式是_。2.27 在C语言中整数可用_进制数、_进制数和_进制数三种数制表示。三、上机改错题(读者最好在TURBO C环境下上机试一试,以便熟悉出错信息)。2.28 请指出以下C程序的错误所在#include “stdio.h”;main(); /*main function*/ float r,s; /*/*r is radius*/,/*s is area of circular*/*/ r=5.0 ; s=3.14159*r*r ; pritf(

5、“%fn”,s)2.29请指出以下C程序的错误所在#include “stdio.h”main /*main function*/ float a,b,c,v ; /*a,b,c are sides, v is volume of cube*/ a=2.0 ; b=3.0 ; c=4.0v=a*b*c;printf(“%fn”,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、int i; i+; printf(“%dn”,i

6、) B、;C、a=5,c=10 D、 ; 3.3以下合法的C语言赋值语句是A、a=b=28 B、k=int(a+b); C、a=58,b=58 D、-i;3.4 以下程序的输出结果是A、0 B、1 C、3 D、不确定的值main() int x=10,y=3; printf(“%dn”,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

7、类型,要通过赋值语句scanf(“%f%f%f”,&a,&b,&c)给a赋予10、b赋予22、赋予33,以下不正确的输入形式是A、10 B、10.0,22.0,33.0 C、10.0 D、10 22 22 22.0 33.0 33 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.168000 D、5.16900

8、0x=5.16894printf(“%fn”,(int)(x*1000+0.5)/(float)1000 );3.9 若有以下程序段,c3中的值是A、0 B、1/2 C、0.5 D、1int c=1, c2=2, c3;c3=c1/c2;3.10 若有以下程序段,其输出结果是A、0,0,-10 B、0,0,5 C、-10,3,-10 D、3,3,-10 int a=0,b=0,c=0; c=(a-=a-5),(a=b,b +3); printf(“%d,%d,%dn”,a,b,c);3.11 当运行以下程序时,在键盘上从第一列开始输入9876543210(在此处代表Enter),则程序的输出结

9、果是A、a=98,b=765,c=4321 B、a=10,b=432,c=8765 C、a=98,b=765.000000,c=4321.000000 D、a=98,b=765.0,c=4321.0main() int a; float b,c; scanf(“%2d%3f%4f”,&a,&b,&c); printf(“na=%d,b=%f,c=%fn”,a,b,c);3.12以下程序的输出结果是A、a=2,b=%5 B、a=2,b=5 C、a=%d,b=%d D、a=%d,b=%dmain() int a=2,b=5; printf(“a=%d,b=%dn”,a,b);3.13若int类型占

10、两个字节,则以下程序段的输出是A、-1,-1 B、-1,32767 C、-1,32768 D、-1,65535main() int a=-1; printf(“%d,%un”,a,a);3.14以下程序段的输出是A、*496 * B、* 496* C、*000496* D、输出格式符不合法int x=496;printf(“*%-6d*n”,x);3.15以下程序段的输出是A、3.1415 B、 3.0 C、 3 D、 3. float a=3.1415; printf(“|%6.0f|n”,a);3.16printf(“|%10.5f|n”,12345.678);语句的输出是A、|2345.

11、67800| B、|12345.6780| C、|12345.67800| D、|12345.678|3.17 以下程序段的输出是A、*0000057.66* B、* 57.66* C、*0000057.67* D、* 57.67*float a=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若变量

12、已正确说明,要求语句scanf(“a=%f,b=%f”,&a,&b);给a赋予3.12、给b赋予9.0,则正确的输入形式是(表示空格,表示Enter键)A、3.129.0 B、a=3.12b=9 C、a=3.12,b=9 D、a=3.12,b=93.20以下程序的输出结果是A、9 8 B、8 9 C、6 6 D、以上三个都不对#include “math.h”main() double a=-3.0,b=2; printf(“%3.0f%3.0fn”,pow(b,fabs(a),pow(fabs(a),b);二、填空题3.21若有以下定义,请写出以下程序段中输出语句执行后的输出结果_int i

13、= -200,j=2500;printf(“(1)%d%d”,i,j);printf(“(2)i=%d,j=%dn”,i,j);printf(“(3)i=%dn j=%dn”,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语句给变量赋值,然后输出变量的值。写出运行时给

14、k输入100,给a输入25.81,给x输入1.89234时的三种可能的输入形式_、_、_。int k; float a;scanf(“%d%f%lf”,&k,&a,&x);printf(“k=%d,a=%f,x=%fn”,k,a,x);3.26 以下程序段的输出结果是_。 int x=0177; printf(“x=%3d,x=%6d,x=%6o,x=%6x,x=%6un”,x,x,x,x,x);3.27以下程序段的输出结果是_。 int x=0177; printf(“x=%-3d,x=%-6d,x=$%6d,x=$%06d,x=%06dn”,x,x,x,x,x);3.28以下程序段的输出结

15、果是_。double a=513.789215;printf(“a=%8.6f,a=%14.8f,a=%14.8lfn”,a,a,a,a);三、编程题和改错题3.29以下程序多处有错。要按下面指定的形式输入数据和输出数据时,请对该程序做相应的修改。main() double a,b,c,s,v; printf(input a,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=%fn”,s,”v=%dn”,v);当程序执行时,屏幕的显示和要求输入形式如下:input a,b,c:2

16、.0 2.0 3.0 此处的2.0 2.0 3.0是用户输入的数据a=2.000000,b=2.000000,c=3.000000 此处是要求的输出形式s=4.000000,v=12.0000003.30 编写程序,把560分钟换算成小时和分钟表示,然后时行输出。3.31编写程序,输入两个整数:1500和350,求出它们的商数和余数进行输出。3.32编写程序,读入三个双精度数,求它们的平均值并保留此平均值小数点后一位数,对小数点后第二位数时行四舍五入,最后输出结果。3.33编写程序,读入三个整数给a、b、c,然后交换它们中的数,把a中原来的值给b,把b中原来的值给c,把c中原来的值给a。习题一

17、、选择题4.1 下列运算符中优先级最高的运算符是A、! B、 C、 D、&4.2 下列运算符中优先级最低的运算符是A、| B、!= C、=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&b B、a=b C、a|b+c&b-c D、!(ab)&!c|1)4.5 以下程序的输出结果是A、0 B、1 C、2 D、3main() int a=2,b=-1,c=2; if(ab) if(b0) c=0; else c+=1; printf(“%dn”,

18、c);4.6 以下程序的输出结果是A、1 B、2 C、3 D、4main() int w=4,x=3,y=2,z=1; printf(“%dn”,(wx?w:zy?z:x);4.7 若执行以下程序时从键盘上输入3和4,则输出结果是A、14 B、16 C、18 D、20main() int a,b,s; scanf(“%d%d”,&a,&b); s=a; if(a0) y=1;else y=0;4.9 运行以下程序后,输出A、* B、&C、#& D、有语法错不能通过编译main() int k=-3; if(k=0) printf(“*n”); else printf(“&n”);4.10 若a

19、和b均是正整型变量,以下正确的switch语句是A、switch (pow(a,2)+pow(b,2) (注:调用求幂的数学函数) case 1 : case 3 : y=a+b; break; case 0 : case 5 : y=a-b; B、switch (a*a+b*b); case 3 ; case 1 ; y=a+b; break; case 0 ; y=b-a; break; C、switch (a) default : x=a+b; case 10 : y=a-b; break ; case 11 : x=a*d; break ; D、switch(a+b) case10 :

20、 x=a+b ; break ; case11 : y=a-b ; break ; 二、填空题4.11 C语言中用_表示逻辑值“真”,用_表示逻辑值“假”。4.12 C语言中的关系运算符按优先级别是_、_、_、_。4.13 C语言中的逻辑运算符按优先级别是_、_、_。4.14 C语言中的关系运算符和逻辑运算符的优先级别是_、_、_、_、_、_、_。4.15 C语言中逻辑运算符_的优先级高于算术运算符。4.16 将下列数学式改写成C语言的关系表达式或逻辑表达式A、_B、_。A、a=b或a44.17 请写出以下程序的输出结果_。main() int a=100; if(a100) printf(“

21、%dn”,a100); else printf(“%d”,a0) B、!04.19 当a=1,b=2,c=3时,以下if语句执行后,a、b、c中的值分别为_、_、_。if (ac) b=a; a=c; c=b;4.20 若变量已正确定义,以下语句段的输出结果是_。x=0; y=2; z=3;switch(x) case 0 : switch( y= 2 ) case 1 : printf(“*”) ; break; case 2 : printf(“%”) ; break; case 1 : switch( z ) case 1 : printf(“$”) ; case 2 : printf(

22、“*”) ; break; default : printf(“#”)三、编程题4.21 当a为正数时,请将以下语句改写成switch语句。 if(a30) m=1; else if(a40) m=2; else if(a50) m=3;else if(a60) m=4; else m=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