【发布时间】:2018-08-07 18:23:09
【问题描述】:
我想将预定义(硬编码)值存储在 person 对象中,并按日期排序显示在屏幕上。我该如何实现?
这是问题和我的代码。
一个社团保存一个成员列表,并使用程序存储该列表。对于每个成员,记录以下信息
会员编号 姓 名字 该人加入社会的日期 他们是否仍然是会员 该程序需要提供三个选项 1) 输入会员的详细信息(当前或过去的会员)。可以按任何顺序输入会员。您可以假设会员编号可从某些现有列表中获得,因此只需将其与其他数据一起输入程序即可。
2) 提示当前日期并生成已成为会员至少 10 年(目前仍是会员)的人员列表作为输出列表应按加入日期的顺序排列,并根据时长进行拆分他们已经是会员(50+年,40+年等)如果有超过一个人在同一天加入,他们应该按姓氏的字母顺序给出,如果他们有相同的姓氏,名字。列表应该通过将成员集按所需顺序排序来生成。
3) 提示输入会员编号并将此人的会员资格标记为非当前会员。
输出应该是这样的
Long-standing members at 20/02/2012
50+years
mem no date joined name
432 21/07/1963 Xerxes Smith
3103 20/02/1968 Aloysius Baker
40+years
mem no. date joined name
4934 21/02/1968 Hermione Turner
0123 08/06/1975 Bartholomew Wright
1498 08/06/1975 Ermintrude Wright
30+year
—————————————————————————————————
【问题讨论】:
-
以计算机可以理解的格式存储您的日期。显示时将其转换为字符串。您应该使用比较方法对 int 或某种结构或类进行排序。
-
或交替/和使用
qsort或std::qsort。此时您需要做的就是编写一个函数来比较您存储的两个日期。 -
@zzxyz 它是
C++,而不是C。首选std::sort -
@Fureeish 无法使用 std::sort 进行排序。我必须实现自己的排序方法。我已经做到了,但无法对代码中硬编码的现有列表进行排序。它在 existspersons() 函数中跨度>
-
@zzxyz 我不能使用qsort或std sort。我必须实现自己的排序函数。请告诉我如何对existpersons()函数中提到的代码中的现有列表进行排序
标签: c++ arrays sorting object quicksort