(完整版)《C语言程序设计毕业课程设计》题目 联系客服

发布时间 : 星期日 文章(完整版)《C语言程序设计毕业课程设计》题目更新完毕开始阅读9d84f71ddf80d4d8d15abe23482fb4daa58d1da2

功能。

13 joseph环

题目之一: 问题描述:

编号是1,2,??,n的n个人按照顺时针方向围坐一圈,一开始任选一个正整数作为报数上限(开始)值m(m<n),从第s(s<n)个人开始沿顺时针方向顺序报数,报到m时停止报数,报m的人出列,然后在从他在顺时针方向的下一个人开始重新从1报数,如此下去,直到所有人全部出列为止。设计一个程序来求出出列顺序。

实现要求:

⑴ 利用单向循环链表存储结构模拟此过程,按照出列的顺序输出各个人的编号。

输入数据:建立输入处理输入数据,输入m、n、s的初值和每个人的编号,建立单循环链表。

输出形式:建立一个输出函数,将正确的序列输出。

⑵ 利用顺序表存储结构模拟此过程,按照出列的顺序输出各个人的编号。

输入数据:建立输入处理输入数据,输入m、n、s的初值和每个人的编号,建立单循环链表。

输出形式:建立一个输出函数,将正确的序列输出。

测试数据:

m的初值为20,n=7 ,7个人的密码依次为3,1,7,2,4,7,4,首先m=6,则正确的输出是什么?

题目之二:

问题描述:

编号是1,2,??,n的n个人按照顺时针方向围坐一圈,一开始任选一个正整数作为报数上限(开始)值m(m<n),从第s(s<n)个人开始沿逆时针方向顺序报数,报到m时停止报数,报m的人出列,然后在从他在逆时针方向的下一个人开始重新从1报数,如此下去,直到所有人全部出列为止。设计一个程序来求出出列顺序。

实现要求:

⑴ 利用单向循环链表存储结构模拟此过程,按照出列的顺序输出各个人的编号。

输入数据:建立输入处理输入数据,输入m、n、s的初值和每个人的编号,建立单循环链表。

输出形式:建立一个输出函数,将正确的序列输出。

⑵ 利用顺序表存储结构模拟此过程,按照出列的顺序输出各个人的编号。

输入数据:建立输入处理输入数据,输入m、n、s的初值和每个人的编号,建立单循环链表。

输出形式:建立一个输出函数,将正确的序列输出。

测试数据:

m的初值为31,n=7 ,7个人的密码依次为3,1,7,2,4,7,4,首先m=6,则正确的输出是什么?

14 队列及其操作

问题描述:

队列(Queue):也是运算受限的线性表。是一种先进先出(First In First Out ,简称FIFO)的线性表。只允许在表的一端进行插入,而在另一端进行删除。队首(front) :允许进行删除的一端称为队首。队尾(rear) :允许进行插入的一端称为队尾。

队列中没有元素时称为空队列。在空队列中依次加入元素a1, a2, …, an之后,a1是队首元素,an是队尾元素。显然退出队列的次序也只能是a1, a2, …, an ,即队列的修改是依先进先出的原则进行的。

队列的链式存储结构简称为链队列,它是限制仅在表头进行删除操作和表尾进行插入操作的单链表。

需要两类不同的结点:数据元素结点,队列的队首指针和队尾指针的结点,链队的基本形式如下:

实现要求:

⑴ 链队列基本操作的实现:链队列的初始化,生成一个空链队列;链队列的撤消,即删除队列中的所有结点,仅留下指针结点;

⑵ 链队列的入队操作,即在已知队列的队尾插入一个元素e,即修改队尾指针;

⑶ 链队列的出队操作,即返回队首结点的元素值并删除队首结点; ⑷ 设计一个菜单,具有上述要求的所有功能、退出系统等最基本的功能。

15 背包问题的求解

题目之一: 问题描述:

假设有一个能装入总体积为T的背包和n件体积分别为w1 , w2 , … ,

wn 的物品,能否从n件物品中挑选若干件恰好装满背包,即使w1 +w2 + …

+ wn=T,要求找出所有满足上述条件的解。例如:当T=10,各件物品的体积{1,8,4,3,5,2}时,可找到下列4组解: (1,4,3,2) (1,4,5) (8,2) (3,5,2)。

问题提示:

可利用回溯法的设计思想来解决背包问题。首先将物品排成一列,然后顺序选取物品装入背包,假设已选取了前i 件物品之后背包还没有装满,则继续选取第i+1件物品,若该件物品\太大\不能装入,则弃之而继续选取下一件,直至背包装满为止。但如果在剩余的物品中找不到合适的物品以填满背包,则说明\刚刚\装入背包的那件物品\不合适\,应将它取出\弃之一边\,继续再从\它之后\的物品中选取,如此重复,直至求得满足条件的解,或者无解。

题目之二: 问题描述:

假设有n件物品,这些物品的重量分别是W1 , W2 , … , Wn,物品的价值分别是V1,V2, …,Vn。求从这n件物品中选取一部分物品的方案,使得所选中的物品的总重量不超过限定的重量W(W<∑Wi, i=1,2,┅,n),但所选中的物品价值之和为最大。

问题提示:

利用递归寻找物品的选择方案。假设前面已有了多种选择的方案,并保留了其中总价值最大的方案于数组option[]中,该方案的总价值保存于变量max_value中。当前正在考察新方案,其物品选择情况保存于数组eop[]中。假设当前方案已考虑了i-1件物品,现在要考虑第i件物品:当前方案