C语言课程设计.doc
《C语言课程设计.doc》由会员分享,可在线阅读,更多相关《C语言课程设计.doc(24页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-作者xxxx-日期xxxxC语言课程设计【精品文档】分屏处理数据系统一、设计内容随机产生1000个数,并分屏显示(每行显示10个数字,每页显示10行),而且在每一屏的下方显示本屏中数据的最大值、最小值和平均值。提示:循环显示,在分屏点上输出press any key to continue,通过getchar()函数让用户以按回车键的方式进入下一屏。二、方案设计与论证生成一个随机数,放入二维数组,输出。每输出十个一个回车。调用自定义函数求这个数组的最大最小值,平局值。摁下回车清屏。循环十次。三、程序运行结果(截图)四、心得体会运行时数字挤在一起,最后一行输出十个,每输出一行一个回车;五、参考
2、资料与致谢查找书本清屏,随机函数的写法。六、源程序#include#include#include#define MAX 99#define MIN 0int main()int ma(int a120);int mi(int a120);float v(int a120);int i,j,k,max,min,a120;float avg;int x;srand(unsigned)time(NULL);for(i=1;i=10;i+)/显示十页for(j=1,x=1;j=10;j+)/显示十行 for(k=1;k=10;k+,x+)/显示十个ax=rand()%(MAX-MIN+1)+MIN;
3、printf(%d,ax);printf(n);max=ma(a);min=mi(a);avg=v(a);printf(最大:%d 最小:%d 平均:%.2fn,max,min,avg);printf(请按回车键进入下一屏。);getchar();/下一页system(cls);/清屏return 0;int ma(int a120)/最大int i,z;for(i=1,z=0;i=z)z=ai;else if(aiz)z=z;return z;int mi(int a120)/最小int i,z;for(i=1,z=999999999;i=z)z=z;else if(aiz)z=ai;ret
4、urn z;float v(int a120)/平均int sum=0,i;float z;for(i=1;i=100;i+)sum=sum+ai;z=sum*1.0/100;return z;求积分一、 设计内容小明最近在学高等数学,被数学里面的微积分难倒了。但小明编程能力很强,于是他就突发奇想,看能不能用编程的方法来帮助理解数学的学习。以下是他想求解的问题:请编程求解的值,并分析的值与的关系。(提示:如下图,按照积分的原理,将函数区间切分为非常小的长方形,其中长方形的宽度为切分的间距,长方形的高度为方格所在横坐标对应的函数值 ,则图中第个小长方形(阴影部分)面积为二、二、方案设计与论证将不
5、规则图形分割成小矩形,最后求和。三、 程序运行结果(截图)四、 心得体会将不规则图形分的越多,面积越准确。五、 参考资料与致谢查找积分的几何意义。六、源程序#include#define N 100000int main()float x,sum;int i;for(i=1,sum=0,x=1;i=N;i+)sum=sum+(1.0/(x*x+4*x)*(1.0/N);x=x+1.0/N;printf(%f,sum);return 0;求离群点一、 设计内容随机生成一组位于二维坐标系中的点集(集合大小小于50),点集中每个点的位置由x轴分量和y轴分量组成,且1x80, 1y80。 求这组点集中
6、的离群点。(离群点定义:远离点集一般水平的极端大值和极端小值)。要求:若有离群点,请输出离群点的坐标;若无离群点,则输出“No outliers!”,将离群点在终端用#输出表示,非离群点用*输出表示,显示方式如下图所示。提示:离群点判断的方法不止一种,例如,可借助点集所有的数据的平均值为圆心,以所有点集到圆心的平均距离为半径,所构成的圆。在圆中的为正常点,否则为离群点。二、方案设计与论证开一个90*90的数组,并随机生成50个点。再开一个90*90的数组,计算50个点到80*80个点的平均距离,找到最小的(离群点)。计算所有点到离群点的距离,小于等于就为正常点,否则为离群点。三、程序运行结果(
7、截图)四、心得体会由于行间距不对,所以看起来很怪,本来是正方形的。没有离群点的概率太小了.五、参考资料与致谢参考题目的提示来写的。参考随机数生成法。六、源程序#include#include#include#define MAX 80#define MIN 1int main()int a9090,b170;float r9090,min;int i,j,k,m,n,q=0,x,y,l;srand(unsigned)time(NULL);for(i=1;i=80;i+)/准备工作,全为0for(j=1;j=80;j+)aij=0;rij=0.0;for(1;1;1)for(i=1;i=160;
8、i+)/取随机数bi=rand()%(MAX-MIN+1)+MIN;for(j=2;j=160;j=j+2)m=bj;n=bj-1;if(amn=1)continue;else if(amn!=1)amn=1;q+;if(q=50)break;if(q50)continue;else if(q=50)break;for(i=1;i=80;i+)/计算平均圆心距for(j=1;j=80;j+)for(m=1;m=80;m+)for(n=1;n=80;n+)if(amn=1)x=m-i;x=abs(x);x=x*x;y=n-j;y=abs(y);y=y*y;rij=rij+sqrt(x+y);ri
9、j=rij*1.0/50;for(i=1,min=r11;i=80;i+)/找最小for(j=1;j=80;j+)if(rijmin)min=min;for(l=0,i=1,k=0;i=80;i+)/判断该点是什么类型for(j=1;j=80;j+)if(aij=1)x=m-i;x=abs(x);x=x*x;y=n-j;y=abs(y);y=y*y;if(sqrt(x+y)min)aij=2;l+;if(l=0)printf(No outliers!);elsefor(i=1;i=80;i+)/输出for(j=1;j=80;j+)if(aij=0)printf( );else if(aij=2
10、)printf(#);else if(aij=3)printf(*);printf(n);printf(n);n=80-n;printf(%d,%d)n,m,n);return 0;2阶曲线绘制一、 设计内容2阶曲线公式可描述为其中,为曲线的参数,由用户手动输入。请编程绘制出该曲线的图形,坐标原点,y轴正方向,x轴正方向,如下图所示提示:可利用二维数组预先计算并存储每个点(图中用“*”表示)的坐标,然后利用循环一次性输出图形。二、方案设计与论证开一个400*80的二维数组(以中心点做原点)。再开一个数组,计算-4040的x代入方程的所得值。如果这个值大于200或小于-200,就计算下一个。输出
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 课程设计
限制150内