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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

C练习题3.docx

1、C练习题3一、填充题(每个空格2分)1、 c语言是一种_高级程序设计语言。2、 c语言中规定对所用到的变量要先_后_。3、 设c语言中,int类型占2个字节,则long类型数据占_个字节;unsigned int类型数据占_个字节;short类型数据占_个字节;double类型数据占_个字节;char类型数据占_个字节。二、选择题(每个选择3分)1、 组成c语言程序的是A)子程序 B) 过程 C) 函数 D) 主程序和子程序 2、 若有以下定义: char s=092; 则该语句A) 使s的值包含1个字符 B) 定义不合法,s的值不确定C) 使s的值包含4个字符 D) 使s的值包含3个字符 3

2、、 已知各变量的类型定义如下: int i=8,k,a,b;unsigned long w=5;double x=1.42,y=5.2; 则以下两组中不符合c语言语法的表达式分别是 (1) A) k=i+ B) (int)x+0.4 C) y+=x+ D) a=2*a=3 (2) A) x%(3) B) w+=2 C) k=(a=2,b=3,a+b) D) a+=a=(b=4)*(a=3) 4、 以下两组中不符合c语言语法的赋值语句分别是(1) A) a=1,b=2 B) +i; C) a=b=5; D) y=(a=3,6*5);(2) A) i+; B) i=i=5; C) k=2*4,k*

3、4; D) y=float(i); 5、 若a为整型变量,则以下语句a=-2L;printf(“%dn”,a);A) 赋值不合法 B) 输出为-2 C) 输出为不确定 D) 输出为2 6、 找出下列符号中合法的标识符A. “abc” B. s06 C. file.c D. a&b E. 10d F. c*7 三、计算题(每题5分)1、 设 int a=12,试写出计算表达式 a+=a/=a-=a*a 后a的值。 2、 设double x=12.34567, 写出计算x=(int)(x*100+0.5)/100.0 后x的值。 3、 设x=3.5,a=8,y=4.3 ,求 y+a%3*(int)

4、(x+y)/4+0.05)/3 的值。四、读程序1、 写出下列程序的输出结果(6分)main() int a=9; a+=a-=a+a; printf(“%dn”,a); 2、 写出下列程序的输出结果(8分)main() int a=4,b=7; printf(“%dn”,(a+,b+a,b+1);printf(“%dn”,+a,a+b,b+1); 3、 写出下列程序的输出结果(8分)main() char c1=a, c2=b, c3=c c4=101, c5=102; printf(“a%cb%ctc%ctabcn”,c1,c2,c3); printf(“t%c %c”,c4,c5); 4

5、、若a=1,那么printf(“%d”,a,+a,a-);写出输出的结果 (4分) 5、 写出下列程序的功能 (8分)int m(int x,int y) int z; if (xy) z=y; else z=x; return z;main() int a,b,c,d,x; scanf(“%d,%d,%d,%d”,&a,&b,&c,&d); x=m(m(a,b),m(c,d); printf(m=%d”,x); 五、填空题 (12分)以下程序输入三个整数值给a,b,c, 程序把b中的值给a,把c中的值给b,把a中的值给c,交换后输出a,b,c的值。请填空。main() int a,b,c,_

6、(1)_; printf(“enter a,b,c”); scanf(“%d%d%d”,_(2)_); _(3)_;a=b;b=c;_(4)_; print(“a=%d b=%d c=%dn”,a,b,c);练习一答案: 一、结构化 定义 使用 4 2 2 8 1 二、C) A) D) A) C) D) B) 三、答:a=2 12.35 4.3四、(1) 0 (2)8 5 (3)aabb cc abc AB (4)1,1,1 (5)求a,b,c,d中最大者 五、(1) t (2)&a,&b,&c (3) t=a (4) c=t 返回C语言练习二 学号_ 姓名_ 分数_1、 写出下列程序段的输出

7、结果。(12%)k=8567;printf(“/%-6d/ n”,k);printf(“/%6d/ n”,k);x=213.82631;printf(“%-10.2fn”,x);printf(“%10.2fd/ n”,x);printf(“%en”,x);c=A;printf(“%d%cn”,c,c); 2、 若a=3,b=4,x=1.2,y=2.4,z=-3.6,c1=a,c2=b,要得到以下输出格式,请编写程序。(10%)a= 3 b= 4a+b= 7 2a= 6x=1.200000,y= 2.4c1=a or 97(ASCII)c2=b or 97(ASCII)3、 编写程序计算 1/2

8、(ax+x3/4a) ,其中a为常数,x为实型变量(运行时输入)。(10%) 4、 编写程序完成从键盘输入一个小写字母转化为大写字母输出。(10%) 5、 写出下列程序的输出结果。(10%)main()int i,j,k,a=3,b=2; i= (-a=b+)?-a:+b; j=a+;k=b;printf(“i=%d,j=%d,k=%dn”,i,j,k); 6、 计算以下表达式的值。设int a=1,b=2,c=3; (10%)(1) !(a0 | b=0) & !(a+b!=c)(2) !ab & ba(5) !(x=a) & (y=b) & 1+a=b 7、 把以下语句改写成switch语

9、句。(10%)if (s60) m=1;else if (s70) m=2;else if (s80) m=3;else if (s90) m=4;else if (s0 & s=3 & s1 | s8) x=3else x=1; else x=0;9、 编写程序,将键盘输入的任意三个整数a,b,c,按小到大的次序存放在a,b,c中。(16%) 练习二答案:(1) /8567 / / 8567/ 213.83 213.83 2.138263e+002 65A (2) 答案见书上习题解答 (3) #define a 10 main( ) float x,y; scanf(“%f”,&x); y=

10、1.0/2*(a*x+(a+x)/(4*a); printf(“%f”,y); (4) 答案见书上习题解答 (5) I=1,j=1,k=3 (6) 1 1 0 0 0 (7) 答案略 (8) 答案略(9) 答案见书上习题解答 返回C语言程序设计练习三 学号 姓名 成绩 _ 一、读程写结果 1 main() (5分) int a,b,d=241; a=d/100%9; b=(-1)&(-1); printf(“%d,%dn”,a,b); 写出其输出结果:_ 2 main() (5分) int x=2,y=5,z; z=3%4/(float)x+x/y*y; printf(“%dn”,z); 写出

11、其输出结果:_ 3main() (5分) int a=4,b=3,c=1,d=2,x=0; if (ab) if (cd) x=1; else x=2; printf(“%dn”,x); 写出其输出结果:_ 4int test(int x,int y) (6分) x=x+5; y=y+2; return x; main() int x,y, z; x=1;y=2; z=test(x,y); printf(“%d,%d,%d”,x,y,z); 写出其输出结果:_ 5void func(int a ,int n) (8分) int j,temp; for (j=0;j=n/2;j+) temp=a

12、j; aj=an-1-j; an-1-j=temp; main() int x5=2,5,1,7,8,len=5,k; func(x,len); for (k=0; klen;k+) printf(“%2d”,xk); 写出其输出结果:_ 6int search(int s ,int n,int key) (12分) int low,hig,mid; low=0;hig=n-1; while (low=hig) mid=(low+hig)/2; if (smid=key) break; else if (smidkey) low=mid+1; else hig=mid-1; if (low=h

13、ig) return mid; else return 1; main() int key,result; int a8=10,13,15,17,19,21,25,28; scanf(“%d”,&key); result=search(a,8,key); printf(“%dn”,result); 当输入数据为25时, 程序的输出结果为_. 当输入数据为11时, 程序的输出结果为_. 7main() (6分) int a33=1,2,3,4,5,6,7,8,9; int j,s=0; for (j=0;j3;j+) s=s+ajj; printf(“s=%d”,s); 写出其输出结果:_ 8i

14、nt count(char c ) (6分) int I=0; while (cI+!=0); return I-1; main() char str =”Language Programming”; printf(“length=%d”,count(str); 写出其输出结果:_ 9 #include (10分) int f(int n) static int s=1; while(n) s*=n-; return s; main() int i,j; i=f(3); j=f(4); printf(nThe output is:nn); printf(i=%d j=%d n,i,j); 写出

15、其输出结果:_ 10、main() (10分) int I,j,k,temp; int a6=7,5,9,3,6,2,n=6; for(I=0;In-1;I+) k=I; for (j=I+1;jn;j+) if ( ajak ) k=j; if (I!=k)temp=ak;ak=aI;aI=temp; for(j=0;jn;j+) printf(“%2d”,aj); 写出其输出结果:_ 二、完成下列冒泡排序程序(每个空格3分) void bubblesort(int r ,int n) int I,j,temp; for(I=0;I=I+1;j-) if ( (2) ) temp=rj;rj

16、=rj-1; (3) ; main() int a6=3,5,2,4,1; int j,n=6; bubblesort( (4) );/*函数调用*/ for(j=0;jn;j+) printf(“%2d”,aj); 三、编写程序从键盘输入20个学生的成绩,求最高分,最低分和平均分。(15分)练习三答案:一、(1) 2,1 (2) 1 (3) 0 (4) 1,2,6 (5) 8 7 1 5 2 (6) 6 -1 (7) s=15 (8) length=20 (9) The output is: _i=6 j=144(10) 2 3 5 6 7 9二、 (1) n-1 (2) rjjj-1 (3

17、) jj-1=temp (4) a,n三、答案略 返回 C语言程序设计练习四 学号_ 姓名_ 分数_一单项选择题(在下列每小题四个备选答案中选出一个正确答案,并将其字母号填入题目后面的括号内。每小题2分) 1已知a=2,b=3,执行下面条件语句后,b的值是( )。 if (a0) if (b0) b+; else b-; A3 B2 C4 D02下面( )是C语言的有效实数。 A+3.14 B47 C1,234.003a和b是实数变量,c和d是整数变量,下面( )赋值语句是正确的。 Aa=a%c/b; Bc+1=b+d; Ca=c/d; Dc=”a”;4以下运算符中优先级最高的是( )。A?:

18、 B= C% D+5阅读以下程序:main()int count; float sum=0.0; for (count=1;count8;count+) switch (count ) case 1:case 4:case 5: sum+=count;break; case 2:case 3:case 7:sum=1.0; printf(“%4.1f”,sum); 程序的执行结果为( ) A23.0 B10.0 C11.0 D1.06阅读以下程序:main()int x=3,p=1,I,sum=0; for(I=1;I=x;I+) p*=x;sum+=p;printf(“%d”,sum);程序

19、的执行结果为( ) A6 B27 C9 D287以下叙述正确的是( ) Awhile语句的循环体至少执行一次 Bdo-while语句的循环体至少执行一次 Cfor语句的循环体至少执行一次 Dwhile语句用于循环次数已知的循环8for(j=-1;j2;j+)循环体,则循环执行( )次。A2 B 3 C4 D5二改错题(指出所给程序中的错误,在错误位置处打上横线标记,并注明错误原因。每题6分) 1#define PI 3.14; 去掉; main() int s; float r; 应是float scanf(“%d”, r); %f, & s=PI*r*r; printf(“s=%6.2f”,

20、 s); 2#define “stdio.h” main() char c1=”a”; c; 单引号,逗号 c=getchar; 加函数括号 if (c1=c) printf(“c1=cn”); 双等号 else printf(“c1!=cn”); 3程序功能:求n以内的偶数之和。 main() int sum=0,n=100; for(j=2;j=n;j+); 去除 sum=0; 去除 sum=sum+j: j+; printf(sum=%d, &sum); 加双引号,去掉& 4输入x (|x|1),计算S,S=x+x2/2+x3/3+x4/4+,直到最后一项的绝对值小于10-6为止。 ma

21、in() float x, s, term; int n; scanf(“%f”,&x); term=x; s=0; n=1; 应为s= term do n+; term=term*x/n; 改为term=term*x s=s+term ; 改为s=s+(float)term/n; while fabs(term)eps; 改为(fabs(float)term/n)eps); printf(“s=%6.3f”,s); 三读程序(阅读给出的程序,将其运行结果写在横线上。每题6分) 1 main() int a=5,b=4,c=9; printf(“*%d”, a+=5 & b-=2 & c+);

22、 程序的运行结果为 _。 2 main() int a=5; a+=a+=a-=a+a; printf(“%dn”,a); 程序的运行结果为 _。 3. main() int I,k,n,s=0; scanf(“%d”,&n); for(I=1;Ib) if (ac) printf(“%dn”,a); else printf(“%dn”,b); printf(“%d%o%x%un”,c,c,c,c); 程序的运行结果为 _ 。 四编程题(阅读给出的程序,在横线上填入适当的语句、表达式或其他成分,以完善程序。每个空格3分) 1 输入任意一整数,计算其各位数字之和与各位数字之积。 main() i

23、nt a,n,m,s,p; scanf(“%d”,&n); (1) ; (2) ; m=n; while ( (3) ) (4) ;m/=10;s+=a;p*=a;printf(“s=%d,p=%d”,s,p);2 从输入的整数中,统计大于零的整数个数和小于零的整数个数。用输入零来结束输入。main() (1) n,i,j;i=j=0; scanf (“%d”,&n); while ( (2) ) if (n0) i= (3) ;if (n0) j= (4) ; (5) ; printf(“i=%4d j=%4dn”,i ,j); 3 的近似值可用以下公式求得: ,当n取值10000时结束。

24、#include “math.h” main() long i; (1) pi; pi=0.0; for (i=1; i10000;i+) pi+= (2) ; pi=sqrt(6.0*pi); printf(“ (3) “,pi);练习四答案:一、(1) A (2) A (3) C (4) D (5) D (6) B (7) B (8) B二、见题目中红色处 三、(1)*0(2)-20(3)143(4)-1,177777,ffff,65535, 四、1、(1) s=0 (2) p=1 (3) m!=0 (4) a=m%10 2、(1) int (2) n (3) i+1 (4) j+1 (5) scanf (“%d”,&n); 3、(1) double (2) 1.0/(i*i) (3) %f

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1