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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

计算机程序设计基础编程习题.docx

1、计算机程序设计基础编程习题计算机程序设计基础(C语言)编程练习题及参考答案1.输入2个整数,求两数的平方和并输出。 #include main() intt a ,b,s; printf(please input a,b:n); scanf(%d%d”,&a,&b); s=a*a+b*b; printf(the result is %dn,s); 2. 输入一个圆半径(r)当r0时,计算并输出圆的面积和周长,否则,输出提示信息。#include #define PI 3.14 main() float r ,s , l; printf(please input r:n); scanf(%f”,

2、&r); if (r=0) s=pi*r*r; l=2*i*r ; printf(the area is %fn,s); printf(the circumference is %fn,l);else printf(input error!n); 3、函数y=f(x)可表示为: 2x+1 (x0) 编程实现输入一个x值,输出y值。 main()int x,y;scanf(“%d”,&x);If(x0)y=2*x-1;If(x=0) y=0;printf(“%d”,y);4、编写一个程序,从4个整数中找出最小的数,并显示此数。main( )int a,b,c,d,t; scanf (“%d,%d

3、,%d,%d ”,&a,&b,&c,&d); if (ab) t=a; a=b; b=t; if (ac) t=a; a=c; c=t; if (ad) t=a; a=d; d=t; printf (“min = %d n”,a);5有一函数当x0时,y=3,当x=0时y=5,编程,从键盘输入一个x值,输出y值。main()int x,y;scanf(%d,&x);if (x0) y=1;else if(x=0) y=5;else y=3;printf(x=%d,y=%dn,x,y);6从键盘输入两个数,求出其最大值(要求使用函数完成求最大值,并在主函数中调用该函数)main()float m

4、ax(float x,float y); float a,b,m;scanf(%f,%f,&a,&b);m=max(a,b);printf(Max is %fn,m);float max(float x,float y)float temp;if (xy) temp=x; x=y; y=temp;return(x);7、从键盘输入你和你朋友的年龄,编成判断谁的年龄最大,并打印最大者的年龄。#include main() int yourAge, hisAge; printf(Please enter your age:); scanf(%d, &yourAge); /*输入你的年龄yourAg

5、e*/ printf(Please enter your friends age:); scanf(%d, &hisAge); /*输入你朋友的年龄hisAge*/ if (yourAge = hisAge) printf(You are older! Your age is = %dn, yourAge); if (hisAge yourAge) printf(Your friend is older! HisAge age is = %dn, hisAge); 8、键盘输入2个加数,再输入答案,如果正确,显示“right”,否则显示“error”#include “stdio.h”main

6、( )int a,b,c; printf(“please input a and bn”);scanf (%d,%d”,&a,&b); printf(“please input the answer for a+bn”);scanf (%d”,&c); if (c=a+b) printf(“rightn”); else printf(“errorn”);9. 编一程序每个月根据每个月上网时间计算上网费用,计算方法如下: 要求当输入每月上网小时数,显示该月总的上网费用(6分)main() int hour; float fee; printf(“please input hour:n”); sc

7、anf(“%d”,&hour); if(hour=10&hour=y) printf(“建议使用全球通”); else printf(“建议使用神州行); 11个人所得税计算,应纳税款的计算公式如下:收入税率收入收入1000元的部分53000元收入2000元的部分106000元收入3000元的部分15收入6000元的部分20输入某人的收入,计算出应纳税额及实际得到的报酬。(7分)(如需连续计算多个人的纳税情况,直到输入负数为止,程序应如何改进?试写出程序)#include “stdio.h”main() int grade; float income,tax,money; printf(“pl

8、ease input your incomen”);scanf (“%f”,&income); if (income0) printf(“the input is error”); else grade=(int)income/1000; switch(grade) case 0 : tax=0;break; case 1 : tax=(income-1000)*0.05;break; case 2 : tax=50+(income-2000)*0.1;break; case 3 :case 4 :case 5 : tax=150+(income-3000)*0.15;break;defaul

9、t: tax=600+(income-6000)*0.2; money=income-tax; printf(“n tax=%f, money=%f”,tax, money); 12.从键盘上输入一个百分制成绩score,按下列原则输出其等级:score90,等级为A;80score90,等级为B;70score80,等级为C;60score70,等级为D;score60,等级为E。 #include main() int data; char grade; printf(Please enter the score:); scanf(%d”, &data); switch(data/10)

10、case 10: case 9 : grade=A; break; case 8: grade=B; break; case 7: grade=C; break; case 6: grade=D; break; default: grade=E; printf(the grade is %c”,grade);*13. 编程设计一个简单的计算器程序。从键盘输入2个操作数,1个运算符,当运算符为加(+)、减(-)、乘(*)、除(/)时,输出计算结果 #include main() int data1, data2; /*定义两个操作符*/ char op; /*定义运算符*/ printf(Ple

11、ase enter the expression:); scanf(%d%c%d, &data1, &op, &data2); /*输入运算表达式*/ switch(op) /*根据输入的运算符确定要执行的运算*/ case +: /*处理加法*/ printf(%d + %d = %d n, data1, data2, data1 + data2); break; case -: /*处理减法*/ printf(%d - %d = %d n, data1, data2, data1 - data2); break; case *: /*处理乘法*/ printf(%d * %d = %d n

12、, data1, data2, data1 * data2); break; case /: /*处理除法*/ if (0 = data2) /*为避免出现溢出错误,检验除数是否为0*/ printf(Division by zero!n); else printf(%d / %d = %d n, data1, data2, data1 / data2); break; default: printf(Unknown operator! n); 14. 从键盘输入10个整数,统计其中正数、负数和零的个数,并在屏幕上输出。main( ) int a10, i,p=0,n=0,z=0; print

13、f(“please input number”); for(i=0;i0) p+;else if (ai0) n+;else z+ printf(“正数:%5d, 负数:%5d,零:%5dn”,p,n,z);15、编程序实现求1-200之间的所有数的乘积并输出。#include main( ) int i, sum=1 for(i=1; i200 i=i+1) sum=sum*i; printf(“the sum of odd is :%d”,sum);16. 从键盘上输入10个数,求其平均值。 main() int a10,i,s=0; float ave; for(i=0;i10;i+)s

14、canf(“%d”,&ai); for(i=0;i10;i+) sum+=ai; ave=(float)sum/10; printf(ave = %fn, ave); 17、编程序实现求1-1000之间的所有奇数的和并输出。 #include main( ) int i, sum=0; for(i=1; i1000; i=i+2) sum=sum+i; printf(“the sum of odd is :%d”,sum);18.有一个分数序列:2/1,3/2,5/3,8/5,13/8,21/13编程求这个序列的前20项之和。main() int i,t,n=20; float a=2,b=1

15、,s=0;for(i=1;i=n;i+)s=s+a/b;t=a;a=a+b;b=t; printf(sum=%9.6f,s);19. 用数组实现以下功能:输入5个学生成绩,而后求出这些成绩的平均值并显示出来。 main()float a5,i;float s=0;for(i=0;i5;i+)scanf(“%f”,&ai);for(i=0;i5;I+)s=s+ai;printf(“result=%f”,s/5);*20、用循环的方法构造一个5行5列的二维数组,使主对角线上的变量为1,其它为0,并将数组中所有项按行按列显示出来。main()int a55,i,j, s=0;for(i=0;I5;i

16、+)for(j=0;j5;j+)if(i= =j) aij=1;else aij=0;for(i=0;i5;i+)for(j=0;j5;j+)if(j= =0) printf(“n”);printf(“%d ”, aij);21求一个33矩阵对角线元素之和。从键盘输入矩阵元素的值并输出和的值.main() int a33,sum=0; int i,j; printf(Enter data:n); for(i=0;i3;i+) for(j=0;j3;j+) scanf(%d,&aij); for(i=0;i3;i+) sum=sum+aii; printf(sum=%d,sum);22.输入n的

17、值,n代表行数,输出如图所示的图形。(6分) * * * * * * * * * * * * * * * * (此图为n4时的输出结果)#include main()int i , j , k; for (i = 1; i = 4; i+) /*控制行数*/ for (k = 1; k = (2 * i - 1); k+) /*控制每行输出的*号个数*/ printf(*); printf(n); /*输出一行后换行*/23、从键盘输入30名学生的成绩数据,求其中的最高分、最低分和平均分。(提示:用数组存放成绩数据) #include #define M 30 main ( ) float s

18、coreM, max , min, aver; int i ; printf(“please input score: n”); for(i=0; iM ; i+) scanf(“%f”, &scorei); max=score0; min=score0; aver=score0; for(i=1; iM; i+) if (max scorei) min=scorei; aver+=scorei; printf(“max=%f, min=%f,aver=%f”, max, min, aver/M);24. 从键盘输入某班学生某门课的成绩及其学号(班级人数最多40人,具体人数由键盘输入),输出该

19、班最高分和最低分及其学生学号;并输出该班该课程的总分和平均分。请编写程序。#include #define ARR_SIZE 40main() float scoreARR_SIZE, maxScore,minScore,sum; int n, i; long maxNum, minNum,numARR_SIZE; printf(Please enter total number:); scanf(%d, &n); printf(Please enter the number and score:n); for (i=0; in; i+) scanf(%ld%f, &numi, &scorei

20、); maxScore = score0;minScore= score0; maxNum = num0; minNum= num0; sum=score0; for (i=1; i maxScore) maxScore = scorei; maxNum = numi; else if (scorei minScore) minScore = scorei; minNum = numi; sum=sum+scorei; printf(maxScore = %.0f, maxNum = %ldn, maxScore, maxNum); printf(minScore = %.0f, minNum

21、 = %ldn, minScore, minNum);printf(sum = %.1f, average = %.1fn, sum, sum/n);*25.将一个有5个元素的数组中的值(整数)按逆序重新存放。例: 原来顺序为:8、6、5、4、1,要求改为1、4、5、6、8 define N 5main() int aN,I,temp; printf(“enter array a:n”); for(I=0;IN;I+) scanf(“%d”,$ai); for(I=0;IN;I+) temp=ai; ai=aN-I-1; aN-I-1=temp; printf(“n Now, array a:

22、n”); for(I=0;IN;I+) printf(“%4d”,ai); printf(“n”); *26.从键盘上输入一个2*3的矩阵,将其转置后形成3*2的矩阵输出。 main() int a23, b32,i,j; for(i=0;i2;i+) for(j=0;j3;j+) scanf(“%d”,&aij); for(i=0;i3;i+) for(j=0;j2;j+) bij=aji; for(i=0;i3;i+) for(j=0;jy) t=x;x=y;y=t;while(zy) t=x;x=y;y=t;z=x;while(z1) if(x%z=0)&(y%z=0) break; z

23、-;return(z);main()int a,b,c;char ch;printf(nmingb(1)/maxgy(2)?);ch=getchar();printf(ninput:);scanf(%d,%d,&a,&b);if(ch=1) c=mingb(a,b);else if(ch=2) c=maxgy(a,b);printf(the result is %d,c);getch();*28. 输入一个3*3矩阵,求出其转置矩阵,并求出两个矩阵的和.main()int a33;int b33;int c33int i,j;printf(“please input 6 numbers!”)f

24、or (i=1;i3;i+)for(j=1;j3;j+)scanf(“%d”,&aij);bji=aij;for (i=1;i3;i+)for(j=1;j3;j+)cij=aij+bij;for (i=1;i3;i+)for(j=1;j3;j+) printf(“%d”,aij); 29、从键盘输入10名学生的成绩数据,按成绩从高到低的顺序排列并输出。(提示:用数组存放成绩数据)main() int a10; int i,j,temp; printf(input score:n); for(i=0;i10;i+) scanf(%d,&ai); printf(n);for(i=1;i10;i+) for(j=0;j9;j+) if(ajaj+1) temp=aj; aj=aj+1; aj+1=temp; for(i=0;i10;i+) printf(%d,ai);30. 定义一个5行3列的数组,从键盘输入各数组元素的值,计算各数组元素之和。#include main( ) int i, j ,a53; printf(“Enter data:n”); for(i=0;i5;i+) for(j=0;j3;j+

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

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