您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > C语言课程设计报告一维数组升序排列及素数
C程序课程设计报告设计题目:1使用选择排序法对一维数组数据进行升序排列及2素数相关问题专业班级学号学生姓名指导教师设计时间教师评分1.概述········································································································31.1目的简单描述本课题要解决的问题及解决问题的主要思路;··································································································31.2课程设计的组成部分·······························································32设计的内容····························································································3题目一·······································错误!未定义书签。题目二···························································································43.总结·······································································53.1课程设计进行过程及步骤··································53.2所遇到的问题,你是怎样解决这些问题的·············53.3体会收获及建议··············································63.4参考资料(书、论文、网络资料)······················64.教师评语·································································61.概述1.1目的:编程实现选择排序法对一维数组数据进行升序排列,以及用随机函数产生100个500~700之间的整数,然后选出其中的素数,并按从小到大的顺序输出1.2课程设计的组成部分由函数,代码,运行结果,总结构成。2.选择排序法设计的内容题目一:算法思想:首先从数据中找出最小的元素,然后把这个元素和第一个元素互换,这样最小一个元素就排在第一个位置,然后,从剩下的元素中依次找出最小的元素放在无序数据的第一个位置,最终实现数据的排序。此程序能够对一维数组中的10个数据进行升序排列,用户首选输入要排序的10个数据,然后由程序进行排序,最后由屏幕输出。流程图如下:代码如下:#includestdio.h#defineN10voidmain(){inti,j,k,t;inta[N];//定义变量和数组printf(请输入十个数:);for(i=0;iN;i++){scanf(%d,&a[i]);//输入数组中每个元素的值}for(i=0;iN-1;i++)//进行N-1次搜索{j=i;for(k=i+1;kN;k++)//记录最小值下标{if(a[k]a[j])j=k;}if(j!=i){t=a[i];a[i]=a[j];a[j]=t;}}printf(排序后的数:);printf(\n);for(i=0;iN;i++){printf(%d,a[i]);}printf(\n);}程序截图如下:题目二:目的:用随机函数产生100个500~700之间的整数,然后选出其中的素数,并按从小到大的顺序输出流程图:代码:#includestdio.h#includetime.h#includemath.h#includestdlib.h#defineN100voidmain(){intarray[N];inti,j,k;intm,n;inttemp;srand(time(NULL));printf(产生100个500-700之间的整数:\n);for(i=0;iN;i++){array[i]=rand()%200+500;printf(%d\t,array[i]);}printf(\n素数有以下几个:\n);for(i=0;iN;i++){m=sqrt(array[i]+1);for(n=2;n=m;n++)if(array[i]%n==0)break;if(n=m+1)printf(%d\t,array[i]);}for(j=0;ji-1;j++){for(k=j+1;ki;k++)if(array[j]array[k]){temp=array[j];array[j]=array[k];array[k]=temp;}}printf(\n从小到大排序为:\n);for(i=0;iN;i++){printf(%d\t,array[i]);}}3.总结3.1课程设计进行过程及步骤1、仔细阅读课程设计题目,了解题目涉及的相关知识点;2、分析题目,得出程序骨干及大体思路;3、查阅相关资料,进一步细化程序,写出程序;4、完成程序的编写5、在MicrosoftVisualC++6.0中输入程序,通过运行找出程序中的错误,改正错误再次运行,反复进行直到程序无错误。6、调试程序。7、编写实验报告。3.2所遇到的问题,你是怎样解决这些问题的在设计时我也遇到了很多困难,通过看书或是向同学请教大部分得到了解决,对于难以理解的只能用简单的结构和语句编写,虽然重复很多,但仍然能够达到设计要求,将程序运行。或到网上搜索,以便顺利完成程序的编写。3.3体会收获及建议通过C语言课程设计,检查了我这一个学期来学习成果,也让我进一步掌握和熟练地运用它,能够让我认清自己在C语言学习方面的不足之处,进一步的巩固了用C语言编写程序的能力,并且利于以后更好的学习C语言!3.4参考资料(书、论文、网络资料)以上资料部分借鉴于网络,也有同学的建议,其代码由本人参考及理解后加以自己的修改,而且完全理解了其内容而得到,进而巩固的自己的C编程能力。4.教师评语
本文标题:C语言课程设计报告一维数组升序排列及素数
链接地址:https://www.777doc.com/doc-2908637 .html