| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 524 人关注过本帖
标题:弄了段程序,不知怎么写,求大神帮忙!急急急!!!
只看楼主 加入收藏
佐封
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-12-11
结帖率:50%
收藏
已结贴  问题点数:20 回复次数:2 
弄了段程序,不知怎么写,求大神帮忙!急急急!!!
程序代码:
/*功能要求:
  (1)显示一个数组操作主菜单,要求有如下操作选项:
          1.能够通过菜单选项选择,输入1,建立一个班的学生计算机成绩一维数组,数组元素只含计算机成绩,
            数组长度最长30个元素,数组元素个数通过键盘输入。
          2.能够通过菜单选项选择,输入2,显示该班的全部学生计算机成绩。
          3.能够通过菜单选项选择,输入3,给定一个成绩,查找该数组中有否该成绩,有,则显示成绩存在,并显
            示该成绩的顺序号,没有则显示无此成绩。
          4.能够通过菜单选项选择,输入4,键盘给定顺序号,判断该顺序号是否小于等于最大顺序号,不是,显示
            显不存在;是,则显示该顺序号及该顺序号对应的成绩。
          5.能够通过菜单选项选择,输入5,对数组中实际有的成绩进行从高到低排序并输出(注意:不得改变原成
            绩数组中的成绩顺序,可把原数组复制到另一个数组中完成排序操作)。
          6.能够通过菜单选项选择,输入6,对数组中实际有的成绩进行从低到高的排序并输出(注意:不得改变原
            成绩数组中的成绩顺序,可把原数组复制到另一个数组中完成排序操作)。
          7.能够通过菜单选项选择,输入7,输入顺序号,判断该顺序号是否小于等于或大于最大顺序号+1,不是,
            显示顺序号超限不能插入,是,插入一个学生的计算机成绩,修改元素个数值,并按顺序号输
            出全部的成绩。
          8.能够通过菜单选项选择,输入8,输入顺序号,判断顺序号是否小于等于最大顺序号,不是,显示顺序号超
            限,不能删除,是,删除该顺序号的计算机成绩,修改元素个数值,并按顺序号输出全部的成绩。
          9.能够通过菜单选项选择,输入9,输入顺序号,判断顺序号是否小于等于·最大顺序号,不是,显示顺序号
            超限,不能修改,是,修改该顺序号的计算机成绩并按顺序号输出全部的成绩。
          10.能够通过菜单选项选择,输入10,退出该程序,返回操作系统。
  (2)要求:
          1.一个班的学生成绩个数,以30个为限,但实际个数需通过键盘输入(1-30人之间)。
          2.应当记住实际元素个数的最大值(用全局变量n存放),除插入、删除操作外,成绩数组中的成绩
            顺序不得更改。
          2.输入的计算机成绩可通过键盘或文件输入(通过文件输入的,本次实训成绩按2次计算)。
          3.菜单响应后用switch进行分支处理,每一种情形用一个case来处理。
            default:用来处理意外输入的处理。
          4.对功能菜单要求中的4、7、8、9项,应当在case子句中对输入的顺序号进行有效性判断,在范
            围内,才能进行要求的处理过程。
          5.无论进行什么操作,数组中的成绩原始顺序不得改变。
          6.所有涉及的功能均采用自定义函数实现,函数中需要有判断操作是否成功的处理过程并有相应的
            显示。
          5.所有操作过程完毕后应有“按任意键继续...”的暂停,以方便观察操作效果。
          6.要求菜单显示在正中。
          7.在调试过程中,应分步进行,一个函数一个函数的调试,在调试的过程中,可屏蔽其它无关项,
            全部功能项·完成后,再打开所有的功能。

*/

//程序大致结构如下,仅供参考,根据需要调整或修改。

#include <stdio.h>
#include <stdlib.h> 

#define  NUM  30
int    student[NUM];            //数组个数最大30
int    n=0;                    //记录元素的实际个数,也是最大的顺序号
int flag=0;                    //记录是否已建立过成绩数组,flag=0,为未建立过成绩数组;
                            //若已建立,则不能再次建立成绩数组,                


        //被调用函数集中声明;         如:int  create(); 




//程序主入口
void main(void)
{  
    int menuchoice;
    int cj,sxh;                    //输入成绩和顺序号变量;
   
    system("color f0");
                                        /*设置默认的控制台前景和背景颜色。
                                        COLOR [attr],attr指定控制台输出的颜色属性。
                                        颜色属性由两个十六进制数字指定。第一个为背景,第二个为前景。
                                        0=黑色 1=蓝色 2=绿色 3=湖蓝色 4=红色 5=紫色 6=黄色 7=白色
                                        8=灰色 9=淡蓝色 a=淡绿色 b=淡浅绿色 c=淡红色 d=淡紫色 e=淡黄色 f=亮白色
                                        */
    do{
        printf("\n\n\n\n");
        printf("\t\t\t\t数组基本功能菜单        \n");
        printf("\t\t\t\t  作者:* * *            \n");
        printf("\t\t\t\t  ============        \n");
        printf("\t\t\t\t 1.建立成绩数组        \n");
        printf("\t\t\t\t 2.显示成绩数组        \n");
        printf("\t\t\t\t 3.按给定成绩查找    \n");
        printf("\t\t\t\t 4.按顺序号查找        \n");
        printf("\t\t\t\t 5.从高到低排序输出    \n");
        printf("\t\t\t\t 6.从低到高排序输出    \n");
        printf("\t\t\t\t 7.给定顺序号插入成绩\n");
        printf("\t\t\t\t 8.给定顺序号删除成绩\n");
        printf("\t\t\t\t 9.给定顺序号修改成绩\n");
        printf("\t\t\t\t 10.结束程序            \n");
        printf("\t\t\t\t ============        \n");
   
   
        printf("\t\t\t\t请输入您的选择:        \n");  
   
   
        scanf("%d",&menuchoice);

        switch(menuchoice)    //根据用户的选择进行相应的操作
        {
              case 1:

                       //若已经执行过该功能,flag=1,则不能继续执行该功能;
                       //若flag=0,输入建立成绩数组元素个数,调用显示成绩函数;
                       
                    system("pause");
                    system("cls");
                    break;
   
        /*    case 2:
                    //若flag=0,显示数据库为空,否则,调用显示成绩函数;
                    system("pause");
                    system("cls");
                    break;
            case 3:
                    //若flag=0,显示数据库为空,否则,输入要查询的成成绩,调用按成绩查询对应成绩函数;
                    system("pause");
                    system("cls");
                    break;
   
            case 4:
                    //若flag=0,显示数据库为空,否则,判断顺序号是否有效,有效,则调用按顺序号查询对应成绩函数;
                    //顺序号无效,则显示顺序号超出范围,不能操作,
                    system("pause");
                    system("cls");
                    break;
           
            case 5:
                    //若flag=0,显示数据库为空,否则,调用从高到低排序函数;
                    system("pause");
                    system("cls");
                    break;

            case 6:
                    //若flag=0,显示数据库为空,否则,调用从低到高排序函数;
                    system("pause");
                    system("cls");
                    break;
                          
            case 7:
                    //若flag=0,显示数据库为空,否则,判断顺序号是否有效,有效,则调用插入顺序号对应成绩函数;
                    //顺序号无效,则显示顺序号超出范围,不能操作,
                    system("pause");
                    system("cls");
                    break;
                   
            case 8:
                    //若flag=0,显示数据库为空,否则,判断顺序号是否有效,有效,则调用删除顺序号对应成绩函数;
                    //顺序号无效,则显示顺序号超出范围,不能操作,
                    system("pause");
                    system("cls");
                    break;
            case 9:    
                    //若flag=0,显示数据库为空,否则,判断顺序号是否有效,有效,则调用成绩修改函数修改成绩;
                    //顺序号无效,则显示顺序号超出范围,不能操作,
                    system("pause");
                    system("cls");
                    break;
           
            case 10:    
                    printf("\n欢迎使用本成绩管理系统,再见!\n");
                    system("pause");
                    system("cls");
                    exit(0);
           
            default:
                    printf("\n对不起,您输入的功能编号有错!请重新输入!!!\n");
                    system("pause");
                    system("cls");
                    break;*/
        }
    }while(1);
   
}


//以下为各功能函数

int create()
{
            //建立成绩数组;
       

}

int traverse()
{
        //显示成绩数组;
}


int find1(int cj)
{
        //按给定成绩查找,无此成绩则显示数据库中无此成绩,有则把顺序号输出,并输出对应成绩;
}

int find1(int sxh)
{
       
        //按给定顺序号查找;

}


int  Sort_display()
{

        //按从高到低的顺序排序并输出;

}



Reverse_order_display()
{

        //按从低到高的顺序排序并输出;    

}



int insert(int sxh)
{
   
   
    //给定顺序号插入成绩;
       
}

int remove(int sxh)
{
   
   
    //给定顺序号删除成绩;
       
}



int replace(int sxh )
{
   
   
    //按给定顺序号修改成绩
       
}




搜索更多相关主题的帖子: 菜单 计算机 元素 
2012-12-11 20:11
佐封
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2012-12-11
收藏
得分:0 
急用,求大神帮忙!!!
2012-12-11 20:12
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:贵宾
威 望:423
帖 子:13688
专家分:53332
注 册:2012-10-18
收藏
得分:20 
先说说能给多少rmb吧

DO IT YOURSELF !
2012-12-11 20:16
快速回复:弄了段程序,不知怎么写,求大神帮忙!急急急!!!
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017280 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved