c++ 求大神指导不知道如何下手

muzianzhongkai 2014-05-22 03:41:27
抽奖管理程序
我们看到电视上抽取幸运观众时,按一下开始按钮,抽取的幸运观众的手机号即会显示到屏幕上方。本系统模拟一个抽奖系统,该系统的奖项分1等奖、2等奖、3等奖,每个等级奖项的人数不同,每个观众最多能得一个奖。要求:
(1)输入功能:记录观众打电话的日期和时间、电话号码(输入过程中发生错误允许修改,电话号码唯一)
(2)抽奖:操作员首先选择要抽的等级,得奖人数,然后按“开始”键开始随机显示电话号码,按“停”键即得到抽奖结果。该结果需要显示到屏幕同时保存下来。
(3)观众查询获奖情况:观众打入电话可查到是否得奖,如果得奖,告知奖项等级。
设计思路:
(1)建立一个菜单,包含要求的功能。
(2)定义五个类:日期时间类、观众基本信息类(电话号码、打入电话的时间和日期)、奖项类(奖项等级、人数)、奖项和观众的关系类(奖项等级、手机
号)、集合类(元素数组、集合长度)。
(3)建立2个数据文件:
 观众信息文件:文件头保存观众数,每条记录的长度,文件体为所有观众的基本信息。例如:
2 40
13926900588 2014.6.10 12:00pm
15866651706 2014.6.10 10:00am
 获奖观众文件:记录手机号、身份证号、姓名、获得的奖项。
...全文
376 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2014-06-05
  • 打赏
  • 举报
回复
别用随机,要用洗牌!洗牌算法参考下面:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int d[6];
int i,n,a,b,t;
int c,j;
void main() {
    srand(time(NULL));
    printf("shuffle 0..n-1 demo\n");
    for (n=1;n<=5;n++) {/* 测试1~5个元素 */
        printf("_____n=%d_____\n",n);
        j=1;
        for (c=1;c<=n;c++) j=j*c;/* j为n! */
        j*=n*2;
        for (c=1;c<=j;c++) {/* 测试n*2*n!次 */
            for (i=0;i<n;i++) d[i]=i;/* 填写0~n-1 */
            for (i=n;i>0;i--) {/* 打乱0~n-1 */
                a=i-1;b=rand()%i;
                if (a!=b) {t=d[a];d[a]=d[b];d[b]=t;}
            }
            printf("%04d:",c);
            for (i=0;i<n;i++) printf("%d",d[i]);
            printf("\n");
        }
    }
    printf("shuffle 1..n demo\n");
    for (n=1;n<=5;n++) {/* 测试1~5个元素 */
        printf("_____n=%d_____\n",n);
        j=1;
        for (c=1;c<=n;c++) j=j*c;/* j为n! */
        j*=n*2;
        for (c=1;c<=j;c++) {/* 测试n*2*n!次 */
            for (i=1;i<=n;i++) d[i]=i;/* 填写1~n */
            for (i=n;i>1;i--) {/* 打乱1~n */
                a=i;b=rand()%i+1;
                if (a!=b) {t=d[a];d[a]=d[b];d[b]=t;}
            }
            printf("%04d:",c);
            for (i=1;i<=n;i++) printf("%d",d[i]);
            printf("\n");
        }
    }
}
不要做咸鱼 2014-06-05
  • 打赏
  • 举报
回复
类都给你了,然后就把功能整合到一块就行了呗
buyong 2014-06-05
  • 打赏
  • 举报
回复
一定要注意随机数要真正随机
muzianzhongkai 2014-06-05
  • 打赏
  • 举报
回复
搞定了 多谢~
_Cogito_ 2014-05-24
  • 打赏
  • 举报
回复
先简单地实现几个功能,然后逐步添加题目要求的一些类
Falleyes 2014-05-22
  • 打赏
  • 举报
回复
课程设计吧,五个类已经给你了,剩下的就是你自己设计接口、设计界面了。 自己先UML建模,看看需要什么接口,然后代码实现。
merlinfang 2014-05-22
  • 打赏
  • 举报
回复
先做界面咯,界面最容易想

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧