C语言程序设计-实验程英粲C语言上机报告.doc

上传人:jian****018 文档编号:8856488 上传时间:2020-04-01 格式:DOC 页数:125 大小:1.10MB
返回 下载 相关 举报
C语言程序设计-实验程英粲C语言上机报告.doc_第1页
第1页 / 共125页
C语言程序设计-实验程英粲C语言上机报告.doc_第2页
第2页 / 共125页
C语言程序设计-实验程英粲C语言上机报告.doc_第3页
第3页 / 共125页
点击查看更多>>
资源描述
课 程 设 计 报 告题目: C语言程序设计实验报告 课程名称: C语言程序设计 专业班级: 信安1302 学 号: 姓 名: 指导教师: 报告日期: 2014.6.16 计算机科学与技术学院总序本次的上机实验,除了最后一题与课设差不多,感觉工作量太大没做外,其它的题目全部都已写完。报告的基本形式为:标题(实验次数)+目的+任务+程序(结果)构成(注:部分题目共用同一个结果)。在做题的过程中,参考的资料有:C语言程序设计(曹计昌 卢萍 李开 编) C语言实验与课程设计(曹计昌 卢萍 李开 编)以及百度文库的部分内容。语言表述能力不是特别好,体会啥的都自己理解了,也没写好,多的空话我也就不多说了,120多页的报告,写得真是头都大了。(注:C语言实验与课程设计上的题真坑,好几个程序都百行了,还有一个写了200多行啊,有木有,有木有!不过确实想通了不少东西,也算是挺有用吧。)唉,没忍住又开始吐槽了,算了,就说这么多吧,最近快要开始考试了,复习去了,争取拿个好看点儿的分儿吧。程英粲2014.6.14目录第一次上机实验1一、实验目的1二、实验任务1三、实验步骤及结果11.3.1题目一:在字符模式下,拼出“王”。11.3.2 题目二:华氏温度转摄氏温度。2分析:写一个简单的程序。21.3.3题目三:设计三种算法,交换两个整型变量。31.3.4题目4:三位数的反向输出。41.3.5题目5: 2种计算MAXx,y,z的程序。51.3.6题目6:三个数的居中数。61.3.7题目7:二次方程的根71.3.8题目8:海伦公式计算面积。8四、实验体会9第二次上机实验10一、实验目的10二、实验任务10三、实验步骤及结果102.3.1题目一:计算个人所得税。102.3.2题目二:最大公约数和最小公倍数。112.3.3题目三:判定n是否为素数。122.3.4题目四: 2100内的所有素数13四、实验体会14第三次上机实验15一、实验目的15二、实验任务15三、实验步骤及结果153.3.1题目一:求N个数的最大值,最小值和平均值。153.3.2题目二:计算pi 要求最后一项小于10-6.163.3.3题目三:求出11000内的所有完全数173.3.4题目四:水仙花数,三位数,立方和为本身。173.3.5题目五:求一个数的七进制和九进制都是三位数且这三个数刚好相反183.3.6题目六:求解1313的最后三位。193.3.7题目七:求解100!尾数有多少个0.19四、实验体会20第四次上机实验21一、实验目的21二、实验任务21三、实验步骤及结果214.3.1题目一:斐波那契数列,求Fn。214.3.2题目二:计算多项式的值224.3.3题目三:利用最大值函数max(x,y)求n个数的最大值。234.3.4题目四:素数的函数prime(x),输出2100内的所有素数。24四、实验体会25第五次上机实验26一、实验目的26二、实验任务26三、实验步骤及结果265.3.1题目一:设计一个演示系统。265.3.2题目二:26.递归程序计算组合数C(n,m)=A(n,m)/m!。285.3.3题目三:mccathy函数,编写递归程序计算x的m(x)。295.3.4题目四:海伦公式,使用宏计算计算任意三角形的面积。30四、实验体会30第六次上机实验31一、实验目的31二、实验任务31三、实验步骤及结果316.3.1题目一:设计函数reverse(a, n)将一维数组a的值逆置。316.3.2题目二:设计一个函数采用冒泡排序算法排序。336.3.3题目三:设计函数find(a, n, x),进行查找功能。346.3.4题目四:有序数组找两个数,使和正好等于输入数字。356.3.5题目五:检验并打印魔方矩阵36四、实验体会。39第七次上机实验40一、实验目的40二、实验任务40三、实验步骤及结果407.3.1题目一:3种swap(x,y)交换值。407.3.2题目二:max(a,b),要求用命令行。427.3.3题目三:先进后出链表(栈)437.3.4题目四:链表插入。447.3.5题目五:删除结点467.3.6题目六:约瑟夫487.3.7题目七:文件输入输出。50四、实验体会。50C语言实践与课程设计第二章512.1熟悉C语言程序的开发环境512.2表达式和标准输入输出实51一、实验目的51二、程序设计51三、实验步骤及结果51 2.3.1题目一:大写换小写51 2.3.2题目二:取位52 2.3.3题目三:IP地址532.3 流程控制54一、实验目的54二、程序设计55三、实验步骤及结果55 3.3.1题目一:计算税收55 3.3.2题目二:压缩行56 3.3.3题目三:杨辉三角57 3.3.4题目四:正数逆转58 3.3选做:牛顿迭代法求近似根:592.4 函数与程序结构实验60一、实验目的60二、程序设计60三、实验步骤及结果604.3.1题目一:公约数604.3.2题目二:歌德巴赫猜想614.3.3题目三:在两数之间的数满足歌德巴赫猜想624.3.选做题:多文件编译632.5 编译预处理64一、实验目的64二、程序设计64三实验步骤及结果645.3.1题目一:宏定义求三角形面积645.3.2题目二:条件编译652.6 标准库及用户自定义库实验662.7 数组实验66一、实验目的66二、程序设计66三、实验步骤及结果:667.3.1题目一:转置矩阵667.3.2题目二:二进制677.3.3题目三:学生成绩687.3.选(1)字符串插入697.3.选(2):八皇后问题712.8 指针实验73一、实验目的73二、程序设计73三、实验步骤及结果738.3.1题目一:取高低位738.3.2题目二:压缩行748.3.3题目三:命名行-d排序758.3.4题目四:N个学生M门课程778.3.选(1):高精度798.3选(2)复杂声明。812.9 结构与联合实验82一、实验目的82二、程序设计83三、实验步骤及结果839.3.1题目一:字段结构839.3.2题目二:链表成绩859.3.选(1):按成绩排序919.3.选(2):用交换结点的方法排序999.3.选(3):双向链表1072.10 文件实验118一、实验目的118二、程序设计118三、实验步骤及结果11810.3.1题目一:输出到文件118第一次上机实验一、实验目的 (1)熟悉VC6.0. (2)进行简单编程。 (3)掌握输入输出。二、实验任务1. 设计一个程序,在字符模式下,以某个字符拼出“王”汉字图形,显示输出。2. 输入一个华氏温度,要求输出摄氏温度。公式为c=5/9*(f-32)。3. 设计3种算法,完成交换整型两个变量值的程序。4. 设计一个程序,完成如下功能:输出一个三位数,将它反向输出。如输入127,输出721。5. 设计2种完成计算MAXx,y,z的程序。6. 设计一个程序,完成计算3个数的居中数。7. 设计计算一元二次方程的根的程序。8. 根据任意三角形的面积公式(海伦公式):S = p (p-a)( p-b)( p-c ), 其中,p=(a+b+c)/2, a.b.c为三角形三边,设计一个程序计算任意三角形的面积。三、实验步骤及结果(要求给出源程序和程序运行结果。另外,根据实验内容,记录编辑、编译、链接、调试程序的操作过程和实验现象)1.3.1题目一:在字符模式下,拼出“王”。 (1)题目分析:本题重点要熟悉printf函数的运用。 (2)程序:#includevoid main() printf( *n); printf( *n); printf( * n); printf( * n); printf( * n); printf( * n); printf( * n); printf( * n); printf( * n); printf( * n); printf( * n); printf( * n); printf( * n); printf( * n); printf( * n); printf( * n); printf( *n); printf( *n); (3)运行结果: 1.3.2 题目二:华氏温度转摄氏温度。分析:写一个简单的程序。(1) 总结:/两边至少要有一个浮点型,否则会计算5/90,另外,输入时double型要用lf,不然会出现错误。(2) 程序:#includevoid main()double c,f;scanf(%lf,&f);/读入要用lf不然会出错。c=5.0/9*(f-32); printf(%lfn,c);/经试验,输出不用lf可以正确。(3) 结果:1.3.3题目三:设计三种算法,交换两个整型变量。(1) 分析:坑人的程序,好难想。最简单的是用第三个变量来换。其次两者想加减a=a+b-a。最后一个居然用异或运算!abb=a !(2) 程序: /1#includevoid main()int a,b,c;printf(请输入a,bn); scanf(%d %d,&a,&b);c=a;a=b;b=c;printf(a=%d b=%dn,a,b);/2#includeint main()int a,b;printf(请输入a,bn);scanf(%d %d,&a,&b);a=a+b;b=a-b;a=a-b;printf(a=%d b=%dn,a,b); return 0;/3#includeint main()int a,b;printf(请输入a,bn);scanf(%d %d,&a,&b);a=ab;b=ab;a=ab;printf(a=%d b=%dn,a,b); return 0;(3) 结果:1.3.4题目4:三位数的反向输出。(1) 分析:目前没学多少东西,简单的运用了一个/各来进行输出。(2) 程序:#includeint main()int a;printf(请输入一个三位数n);scanf(%d,&a);printf(%d,a%10);a=a/10;printf(%d%dn,a%10,a/10); return 0;(3) 结果:1.3.5题目5: 2种计算MAXx,y,z的程序。(1) 分析:一个if的判断 一个三元操作符。(2) 程序:/1#includeint main()int a,b,c;printf(请输入a,b,cn);scanf(%d%d%d,&a,&b,&c);if(a=b)if(a=c) printf(%dn,a);else printf(%dn,c);elseif(b=c) printf(%dn,b);else printf(%dn,c); return 0;/2#includeint main()int a,b,c;printf(请输入a,b,cn);scanf(%d%d%d,&a,&b,&c);printf(%dn,a=b&a=c?a:(b=a&b=c?b:c);return 0; (3)结果:1.3.6题目6:三个数的居中数。(1) 分析:一个类似于三个数的最大数的程序,改一下判断的过程就行了(2) 程序:#includeint main()int a,b,c,t;printf(请输入a,b,cn);scanf(%d%d%d,&a,&b,&c);if(a=b)if(b=c) printf(%dn,b);else printf(%dn,a=c?c:a);else if(a=c) printf(%dn,a);else printf(%dn,b=c?c:b);return 0;(3) 结果:1.3.7题目7:二次方程的根(1) 分析:简单的计算,不过要考虑细节,比如a=0,d0,d=0的情况。(2) 程序:#include#includeint main()double a,b,c,d,x1,x2;printf(请输入a,b,cn);scanf(%lf%lf%lf,&a,&b,&c);d=b*b-4*a*c;if(a=0) printf(a=0,请重新输入n); else if(d0) printf(无实根n);else if(d=0) printf(x1=x2=%lfn,-b/(2*a);elsex1=(-b+sqrt(d)/(2*a);x2=(-b-sqrt(d)/(2*a);printf(x1=%lf x2=%lfn,x1,x2);return 0;(3) 结果:1.3.8题目8:海伦公式计算面积。(1) 分析:计算比较简单,但考虑bug要判断能否构成三角形。(2) 程序:#include#includeint main()double a,b,c,p,s;printf(请输入三条边的长度n);scanf(%lf%lf%lf,&a,&b,&c);if(a+b=c|a+c=b|b+c=a) printf(无法构成三角形n);else p=(a+b+c)/2; s=sqrt(p*(p-a)*(p-b)*(p-c); printf(%lfn,s);return 0;(3) 结果:四、实验体会 本次的实验内容都是些较简单的题目,重在熟悉编程环境。第二次上机实验 一、实验目的熟练掌握编译器,学会用循环语句。二、实验任务9. 设计一个计算个人所得税的程序。10. 计算两个自然数的最大公约数和最小公倍数。11. 输入一个数n(2),判定n是否为素数。12. 输出2100范围内的所有素数。要求:不使用子函数。13. 输出九九乘法口诀表三、实验步骤及结果(要求给出源程序和程序运行结果。另外,根据实验内容,记录编辑、编译、链接、调试程序的操作过程和实验现象)2.3.1题目一:计算个人所得税。 分析:简单的计算,计算方法要上网查,要使用判断语句。 程序:#include/个人所得税 int main()double x,sum;printf(请输入扣除三险一金后的工资n);scanf(%lf,&x);x=x-3500;if(x=0&x1500&x4500&x=9000&x=35000&x80000) sum=x*0.45-10505;else sum=x*0.35-5505; printf(应缴纳的个人所得税为:%.2lf,sum);getchar();getchar();return 0; 运行结果: 2.3.2题目二:最大公约数和最小公倍数。 分析:一个考算法的程序,辗转想除法,更想减损术求公约数,最小公倍数两数的积除以最大公约数。此外,还要考虑输入是否为负。 程序:#include/最大公约数和最小公倍数int yue(int x,int y)int a,b,r;if(x=y) a=x; b=y; else a=y; b=x; r=b;while(r!=0) r=a%b; a=b; b=r; return a; int main()int x,y,p;printf(请输入两个正整数n);scanf(%d%d,&x,&y);if(x0|y0) printf(输入中有负数,请重新输入);else p=yue(x,y); printf(两数的最大公约数为:%dn,p); printf(两数的最小公倍数为:%dn,x*y/p); getchar(); getchar(); return 0; 运行结果: 2.3.3题目三:判定n是否为素数。分析:循环的运用,程序优化到运行sqrt(n) 。此外看是否为大于2的数程序:#include#includeint main()int x,i=2;printf(请输入一个正数n);scanf(%d,&x);if(x=1) printf(请重新输入n);else for(;i=sqrt(x);i+) if(x%i=0) break; if(i=sqrt(x) printf(%d不是素数n,x);else printf(%d是素数n,x); getchar(); getchar();return 0;运行结果:2.3.4题目四: 2100内的所有素数分析:循环的嵌套。在上一题的基础上略改即可。程序:#include#includeint main()int i,k;printf(2-100内的所有素数为:n);for(i=2;i=97;i+) for(k=2;ksqrt(i) printf(%d ,i); getchar(); return 0;运行结果:2.3.5题目五:输出九九乘法表分析:完全是考循环和输出。重点要看在多少是转行。程序:#includeint main()int i,k,r=1;for(i=1;i=9;i+) for(k=1;k=9;k+) printf(%d*%d=%2d ,k,i,i*k); if(k=r) r+; printf(n); break; getchar(); return 0;运行结果:四、实验体会本节重在对循环的运用,难度不大,同时也有些简单的算法题目。第三次上机实验 一、实验目的设计算法,解决简单问题。二、实验任务12. 求n个数的最大值、最小值和平均值。要求:不使用数组。13. 依据下列格里高利公式,计算圆周率。要求最后一项10-6。14. 完全数是一些特殊的自然数。它所有的真因子(即除了自身以外的约数)的和恰好等于它本身。试求出11000范围内的所有完全数。15. 水仙花数是指一个 3 位数,它的每个位上的数字的 3 次幂之和等于它本身。例如:13 + 53 + 33 = 153。试求出所有的水仙花数。16. 一个的数,其七进制和九进制均为3位数,且3位数的数字正好相反。试求出这个数。17. 求解1313的尾数三位是多少。18. 求解100!尾数有多少个0。三、实验步骤及结果(要求给出源程序和程序运行结果。另外,根据实验内容,记录编辑、编译、链接、调试程序的操作过程和实验现象)3.3.1题目一:求N个数的最大值,最小值和平均值。 分析:循环。 程序:#includeint main() int max,min,n,i,k; float average,sum; printf(请输入数据个数Nn); scanf(%d,&n); printf(请输入数据n); scanf(%d,&k); max=min=k; sum=k; for(i=2;imax) max=k; if(kmin) min=k; average=sum/n; printf(最大值为:%dn,max); printf(最小值为:%dn,min); printf(均值为:%fn, average); getchar(); getchar(); return 0;运行结果:3.3.2题目二:计算pi 要求最后一项小于10-6. 分析:循环,以级结束的判断,可用do while 进行。 程序:#includeint main()int i=1;float pi=0;do if(i%2=1) pi+=1.0/(2*i-1); else pi-=1.0/(2*i-1); i+; while(1.0/(2*i-1)0.000001); printf(%f,4*pi); getchar(); return 0; 运行结果:3.3.3题目三:求出11000内的所有完全数分析:在判断是否为素数的程序上改一下就可以解决,两个循环嵌套。程序:#includeint main()int i=2,k,sum; for(;i=1000;i+) sum=0; for(k=1;k=i-1;k+) if(i%k=0) sum+=k; if(sum=i) printf(%d ,i); getchar(); return 0; 运行结果:3.3.4题目四:水仙花数,三位数,立方和为本身。分析:/ %取出各位数,然后一个循环进行判断。程序:#includeint main() int q,w,r,i; for(i=100;i=999;i+) q=i/100; w=i%100/10; r=i%10; if(q*q*q+w*w*w+r*r*r=i) printf(%d ,i); getchar(); return 0;运行结果:3.3.5题目五:求一个数的七进制和九进制都是三位数且这三个数刚好相反 分析:进制转换和运用,以及循环。程序: #includeint main() int i,q1,w1,r1,q2,w2,r2; for(i=81;i=342;i+) q1=i%9; q2=i%7; w1=i/9%9; w2=i/7%7; r1=i/9/9; r2=i/7/7; if(q1=r2&w1=w2&r1=q2) printf(%d ,i); getchar(); return 0;运行结果:3.3.6题目六:求解1313的最后三位。分析:一个循环,每次只留最后三位即可(1000)。程序:#includeint main()int i,sum=1;for(i=1;i=13;i+) sum=sum*13%1000;printf(%d,sum);getchar();return 0;运行结果:3.3.7题目七:求解100!尾数有多少个0.分析:主要看有多少个5的倍数,重点要小心25的倍数。程序:#includeint main()int i,sum=0;for(i=5;i=2,nN*),求Fn。22. 计算多项式的值anxn+ an-1xn-1+ an-2xn-2+a3x3+ a2x2+ a1x1+ a023. 设计一个计算两个x和y的最大值函数max(x,y),并利用该函数实现求n个数的最大值。24. 设计一个判断x是否是素数的函数prime(x),并利用该函数实现输出2100范围内的所有素数。三、实验步骤及结果(要求给出源程序和程序运行结果。另外,根据实验内容,记录编辑、编译、链接、调试程序的操作过程和实验现象)4.3.1题目一:斐波那契数列,求Fn。 分析:利用递推的算法来进行计算,子函数可用可不用。 源程序: #includeint f(int n) int a=0,b=1,c,i; if(n=1) return 0; else if(n=2) return 1; else for(i=3;i=n;i+) c=a+b; a=b; b=c; return c;int main() int n; scanf(%d,&n); printf(%d,f(n); getchar(); getchar(); return 0;运行结果:4.3.2题目二:计算多项式的值 分析:一个多项式的求法,(an*x+an-1)*x; 源程序: #includeint main() int n,x,i; float a; double sum; printf(x=); scanf(%d,&x); printf(n=); if(na0n); scanf(%d,&a); sum=a; for(i=1;i=n;i+) scanf(%d,&a); sum=sum*x+a; printf(%ld,sum); getchar(); getchar(); return 0;运行结果:4.3.3题目三:利用最大值函数max(x,y)求n个数的最大值。 分析:此题要求学会用子函数。程序比较简单。 源程序: #includeint max(int a,int b) if(ab) return a; else return b;int main() int n,x,i,m; printf(请输入数据个数n); scanf(%d,&n); printf(请输入数据n); scanf(%d,&m); for(i=2;i=n;i+) scanf(%d,&x); m=max(m,x); printf(最大值为:%d,m); getchar(); getchar(); return 0; 运行结果:4.3.4题目四:素数的函数prime(x),输出2100内的所有素数。分析:还是要求学会用子函数,一个简单的调用即可。源程序: #include#includevoid prime(int x) int k; for(k=2;ksqrt(x) printf(%d ,x); int main()int i,k;printf(2-100内的所有素数为:n);for(i=2;i=97;i+) prime(i); getchar(); return 0;运行结果:四、实验体会 学会写子函数。第五次上机实验一、实验目的 掌握#include的使用和#define的使用二、实验任务25. 设计一个实现多个功能(如,N个数求最大数和一元二次方程求根等等)的演示系统。26. 设计一个递归程序计算组合数C(n,m)=A(n,m)/m!。27. mccathy函数m(x)定义如下,编写一个递归程序计算给定x的m(x)的值。 28. 根据任意三角形的面积公式(海伦公式):S = p (p a )( p-b)( p-c), 其中,p=(a+b+c)/2, a.b.c为三角形三边,使用宏计算计算任意三角形的面积。三、实验步骤及结果(要求给出源程序和程序运行结果。另外,根据实验内容,记录编辑、编译、链接、调试程序的操作过程和实验现象)5.3.1题目一:设计一个演示系统。 分析:掌握#include的使用 源程序: #include #include#includeshushu.h/如果是.c文件的话直接声明即可,如:void shushu();#includemaxminaverage.hint main() int i; printf(100shushu请输入1,最大最小值平均值请输入2n); scanf(%d,&i); if(i=1) shushu(); else if(i=2) maxminaverage(); return 0;void maxminaverage0() int max,min,n,i,k; float average,sum; printf(请输入数据个数Nn); scanf(%d,&n); printf(请输入数据n); scanf(%d,&k); max=min=k; sum=k; for(i=2;imax) max=k; if(kmin) min=k; average=sum/n; printf(最大值为:%dn,max); printf(最小值为:%dn,min); printf(平均值为:%fn, average); printf(n);void shushu()int i,k;printf(2-100内的所有素数为:n);for(i=2;i=97;i+) for(k=2;ksqrt(i) printf(%d ,i); getchar();运行结果:5.3.2题目二:26.递归程序计算组合数C(n,m)=A(n,m)/m!。 分析:要学会递归的使用,程序不难。 源程序:#includeint c(int n,int k)if(n=k|k=0) return 1;else return c(n-1,k-1)+c(n-1,k); int main()int n,k;printf(cin n,kn);scanf(%d%d,&n,&k);printf(%d,c(n,k);getchar();getchar();return 0;运行结果: 5.3.3题目三:mccathy函数,编写递归程序计算x的m(x)。 分析:还是递归的应用。(此题挺有意思,101以下的数好像都是输出91)源程序: #includeint m(int x)if(x100) return x-10;else return m(m(x+11);int main() int n; scanf(%d,&n); printf(%d,m(n); getchar(); getchar(); return 0;运行结果:5.3.4题目四:海伦公式,使用宏计算计算任意三角形的面积。分析:此题要求学会使用宏替换来写程序,用处比较大。源程序:#include#include#define p (a+b+c)/2)#define s(a,b,c) sqrt(p*(p-a)*(p-b)*(p-c)int main()int a,b,c,t;scanf(%d%d%d,&a,&b,&c);t=s(a,b,c);printf(%d,t);getchar();getchar();return 0;运行结果:四、实验体会#include的使用对于.h和.c是不同的,一个是当头文件来使用,一个是当子函数来使用。第六次上机实验一、实验目的学会指针的运用,掌握简单的算法。二、实验任务29. 设计一个函数reverse(a, n),将一维数组a的值逆置。如,逆置前,A:20、10、90、59、60、80、70,逆置后,A:70、80、60、59、90、10、20。30. 设计一个函数BubbleSort(a, n),采用冒泡排序算法,实现一维数组的整数进行排序的功能。31. 设计一个一个函数find(a, n, x),实现对在一个数组的整数进行查找功能。如果给定值x在数组a中,返回其所在的位置(即下标值),否则返回-1。32. 输入一个已经按升序排序过的数组和一个数字,在数组中查找两个数,使得它们的和正好是输入的那个数字。如果有多对数字的和等于输入的数字,输出任意一对即可。例如,输入数组1、2、4、7、11、15和数字15。由于4+11=15,因此,输出4和11。33. 检验并打印魔方矩阵在下面的55阶魔方矩阵中,每一行、每一列、每一对角线上的元素之和都是相等的,试编写程序将任意55阶矩阵中的元素存储到一个二维整型数组中,然后检验其是否为魔方矩阵,并将其按如下格式显示到屏幕上。17241815235714164613202210121921311182529三、实验步骤及结果(要求给出源程序和程序运行结果。另外,根据实验内容,记录编辑、编译、链接、调试程序的操作过程和实验现象)6.3.1题目一:设计函数reverse(a, n)将一维数组a的值逆置。如,逆置前,A:20、10、90、59、60、80、70,逆置后,A:70、80、60、59、90、10、20。 分析:拿来练练指针传值,用指针来改变数据。 源程序: #includevoid reserve(int *x,int n)int t,i;for(i=0;in/2;i+) t=xi; xi=xn-i-1; xn-i-1=t; int main()int k,n,a100;printf(请输入数据个数n);scanf(%d,&n);printf(请输入%d个数据n,n);for(k=0;kn;k+) scanf(%d,&ak);printf(变换前的数据为n);for(k=0;kn;k+) printf(%d ,ak); printf(n);printf(变换后的数据为n); reserve(a,n);for(k=0;kn;k+) printf(%d ,ak); printf(n);getchar();getchar();return 0;运行结果:6.3.2题目二:设计一个函数采用冒泡排序算法排序。 分析:学习的的排序算法。 源程序: #includevoid BubbleSort(int *a,int n)int i,k,t;for(k=0;kn;k+)for(i=0;in-k-1;i+) if(ai+1ai) t=ai+1; ai+1=ai; ai=t; int main()int k,n,a100;printf(请输入数据个数n);scanf(%d,&n);printf(请输入%d个数据n,n);for(k=0;kn;k+) scanf(%d,&ak);BubbleSort(a,n);for(k=0;kn;k+) printf(%d ,ak); printf(n); getchar(); getchar(); return 0;运行结果:6.3.3题目三:设计函数find(a, n, x),进行查找功能。分析:就是一个循环而已,比较简单 源程序:#includeint find(int a,int n,int x)int i;
展开阅读全文
相关资源
相关搜索

当前位置:首页 > 管理文书 > 工作总结


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!