c语言综合作业怎么提交,西南大学C语言综合作业数组的各项基本操作

《西南大学C语言综合作业数组的各项基本操作》由会员分享,可在线阅读,更多相关《西南大学C语言综合作业数组的各项基本操作(15页珍藏版)》请在人人文库网上搜索。

1、一、综合设计题目:数组的各项基本操作。二、综合设计分工说明本实验由我一个人完成。 三、问题概述本实验要求编写出一个程序,它能反复实现数组里的几个基本操作(输入、输出、排序、查找、插入、删除);而且要尽可能的使用模块化的程序设计方法,尽可能的体现c语言的风格。四、问题分析:本实验可先分功能模块完成各个基本操作,再利用函数的调用实现程序的全部功能;各功能模块的编写可在自己编写过的数组的基本操作的程序的基础之上做些修改来实现。五、功能模块描述及功能模块图:数组输入输出排序查找插入删除每个功能模块的功能:输入:输入数组里的各个元素输出:输出数组里的各个元素排序:将数组里的数从小到大或从大到小进行排序查。

2、找:判断一个数是否是该数组中的一个数插入:向数组中插入一个数删除:将数组中的一个数删除掉六、每个功能模块的算法描述及其实现 :1. 输入:函数的作用:输入数组中的每一个元素;参数:int a int n;返回值:无;函数名,功能及实现方法:input; 运用for语句实现输入具体函数如下:void input(int a,int n)int i;for(i=0;iai+1)t=ai;ai=ai+1;ai+1=t; printf(数组中各数从小到大的顺序为: );output(a,n);4. 查找:函数的作用:判断一个数x是否是该数组中的一个数参数:int a int n;返回值:无;函数名,功。

3、能及实现方法:f2; 折半查找发具体函数如下:void f2(int a,int n)int i,j,k,x,l;f1(a,n);printf(请输入要查找的一个整数: );scanf(%d,&x);l=0;i=0;j=n-1;while(iak)i=k+1;if(xan-1)k=n;for(i=0;ik;i-)ai=ai-1;ak=y;printf(插入了你输入的整数之后,数组中各数为: );output(a,n);(2)函数的作用:向数组中插入一个数y(要求插入后数组中的所有数是按从大到小的顺序排列的)参数:int a int n;返回值:无;函数名:f4; 功能及实现方法:查找y在数组中。

4、的位置,并标记为k将数组中ak到an-1中的数整体后移一位将y 插入,使得ak=y具体函数如下:void f4(int a,int n)int i,k,y;f(a,n);printf(请输入要插入的一个整数: );scanf(%d,&y);if(yai)k=i;break;n+;for(i=n;ik;i-)ai=ai-1;ak=y;printf(插入了你输入的整数之后,数组中各数为: );output(a,n);6. 删除:函数的作用:将数组中的一个数z删除掉参数:int a int n;返回值:无;函数名:f5; 功能及实现方法:查找要删除的数z的位置k将数组中ak+1到an-1中的数整体前。

5、移一位具体函数如下:void f5(int a,int n)int i,k,z;printf(数组中现有的数是:);for(i=0;i0)system(cls);printf(n);printf( );printf(n);printf( );printf(n);printf( );printf(n);printf( );printf(n);printf( 1 排序 );printf(n);printf( );printf(n);printf( 2 查找 );printf(n);printf( );printf(n);printf( 3 插入 );printf(n);printf( );prin。

6、tf(n);printf( 4 删除 );printf(n);printf( );printf(n);printf( 0 退出 );printf(n);printf( );printf(n);printf( );printf(n);printf( );printf(n);printf( );printf(n);printf(n);printf( 您数组里数有:);if(r=1)f1(a,n);output(a,n);if(r=2)f(a,n);output(a,n);printf(n);printf( 请选择你要执行的操作:);scanf(%d,&m);printf(n);if(r=1&m=1。

7、)f1(a,n);printf(数组中各数从小到大的顺序为: );output(a,n);system(pause);system(cls);if(r=1&m=2)f1(a,n);f2(a,n);system(pause);system(cls);if(r=1&m=3)f1(a,n);f3(a,n);n+;system(pause);system(cls);if(r=1&m=4)f1(a,n);f5(a,n);n-;system(pause);system(cls);if(r=2&m=1)f(a,n);printf(数组中各数从大到小的顺序为: );output(a,n);system(pau。

8、se);system(cls);if(r=2&m=2)f(a,n);f2(a,n);system(pause);system(cls);if(r=2&m=3)f(a,n);f4(a,n);n+;system(pause);system(cls);if(r=2&m=4)f(a,n);f5(a,n);n-;system(pause);system(cls);七、源程序清单:本实验由我一个人完成,程序附最后。八、测试数据及结果:本程序经我反复测试,均能反复实现任意多个数的排序、均能实现反复查找、反复插入、反复删除(包括从大到小和从小到大)。由于测试数据太多,下面只附部分测试数据:执行程序后提示:请输。

9、入数组中整数的个数:输入:6(回车)出现提示:请输入数组中各数的值:输入:12 9 33 78 6 125 (回车)出现提示:请选择数组中各数显示的方式(1 为从小到大;2 为从大到小):输入:1 (回车)出现提示: 1 排序 2 查找 3 插入 4 删除 0 退出 你数组里数有:6 9 12 33 78 125 请选择你要执行的操作:输入:1(回车)出现提示: 1 排序 2 查找 3 插入 4 删除 0 退出 你数组里数有:6 9 12 33 78 125 请选择你要执行的操作:1数组中各数从小到大的顺序为:6 9 12 33 78 125请按任意键继续按任意键后出现提示: 1 排序 2 查。

10、找 3 插入 4 删除 0 退出 你数组里数有:6 9 12 33 78 125 请选择你要执行的操作:输入:2(回车)出现提示: 1 排序 2 查找 3 插入 4 删除 0 退出 你数组里数有:6 9 12 33 78 125 请选择你要执行的操作:2请输入要查找的一个整数:输入:125(回车)出现提示: 1 排序 2 查找 3 插入 4 删除 0 退出 你数组里数有:6 9 12 33 78 125 请选择你要执行的操作:2请输入要查找的一个整数: 125找到请按任意键继续其它的操作也和上面的类似执行完其它操作后,按任意键会出现如下界面: 1 排序 2 查找 3 插入 4 删除 0 退出 。

11、你数组里数有:6 9 12 33 78 125 请选择你要执行的操作:输入: 0(回车)出现提示: 1 排序 2 查找 3 插入 4 删除 0 退出 你数组里数有:6 9 12 33 78 125 请选择你要执行的操作:0Press any key to continue.此时按任意键退出!九、总结和体会:通过综合实验的设计,我能更好的运用所学知识进行编程了;在这个过程中,我的综合分析、解决问题的能力也得到了提高。在做综合实验的过程中也遇到了很多问题,起初总觉得很难解决,后来通过问同学和老师把很多问题都解决了。这让我明白了:什么问题都不是想象的那么难的,只要你愿意去解决它,你就一定能解决.还有。

12、一点值得一提的是:最初时,通过我的反复编写,我编写的程序已能反复的实现排序、查找、插入、删除;但我的程序还是不是很完美,而且我根本没有想到把输出的界面美化一下,后来是老师给了我指点,我很快就对我的程序进行了美化,美化后的输出界面比先得程序好看了很多! 做完简单的美化后,我又进一步的完善了我的程序(实现双向的各种操作)从这个问题中我深刻的明白了一个道理:只要我们愿意开动我们的脑筋,我们什么都可以实现!在那之后,我也有了很多新的想法来让我的程序变的更加完美. 但由于时间原因,我还没能去实现那些想法,我会利用假期的时间去实现,我相信那一定又会是我的思维的一次提高十、源程序 #includestdio。

13、.h#includestdlib.hvoid input(int a,int n)int i;for(i=0;iai+1)t=ai;ai=ai+1;ai+1=t; void f2(int a,int n)int i,j,k,x,l;f1(a,n);printf(请输入要查找的一个整数: );scanf(%d,&x);l=0;i=0;j=n-1;while(iak)i=k+1;if(x=an-1)k=n;for(i=0;ik;i-)ai=ai-1;ak=y;printf(插入了你输入的整数之后,数组中各数为: );output(a,n);void f4(int a,int n)int i,k,y。

14、;f(a,n);printf(请输入要插入的一个整数: );scanf(%d,&y);if(yai)k=i;break;n+;for(i=n;ik;i-)ai=ai-1;ak=y;printf(插入了你输入的整数之后,数组中各数为: );output(a,n);void f5(int a,int n)int i,k,z;printf(请输入要删除的数: );scanf(%d,&z);for(i=0;i0)system(cls);printf(n);printf( );printf(n);printf( );printf(n);printf( );printf(n);printf( );prin。

15、tf(n);printf( 1 排序 );printf(n);printf( );printf(n);printf( 2 查找 );printf(n);printf( );printf(n);printf( 3 插入 );printf(n);printf( );printf(n);printf( 4 删除 );printf(n);printf( );printf(n);printf( 0 退出 );printf(n);printf( );printf(n);printf( );printf(n);printf( );printf(n);printf( );printf(n);printf(n)。

16、;printf( 您数组里数有:);if(r=1)f1(a,n);output(a,n);if(r=2)f(a,n);output(a,n);printf(n);printf( 请选择你要执行的操作:);scanf(%d,&m);printf(n);if(r=1&m=1)f1(a,n);printf(数组中各数从小到大的顺序为: );output(a,n);system(pause);system(cls);if(r=1&m=2)f1(a,n);f2(a,n);system(pause);system(cls);if(r=1&m=3)f1(a,n);f3(a,n);n+;system(paus。

17、e);system(cls);if(r=1&m=4)f1(a,n);f5(a,n);n-;system(pause);system(cls);if(r=2&m=1)f(a,n);printf(数组中各数从大到小的顺序为: );output(a,n);system(pause);system(cls);if(r=2&m=2)f(a,n);f2(a,n);system(pause);system(cls);if(r=2&m=3)f(a,n);f4(a,n);n+;system(pause);system(cls);if(r=2&m=4)f(a,n);f5(a,n);n-;system(pause);system(cls。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值