视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
C语言专周报告
2025-09-29 16:35:15 责编:小OO
文档


计算机程序设计C/C++

班级:10621                       姓名:银笛

学号:34                          日期:2011/5/29

目录

1、设计目的…………………………………………………………3

2、设计任务…………………………………………………………3

3、设计程序运行流程图………………………………………………4

4、详细设计…………………………………………………………5

5、设计源程序………………………………………………………5

6、运行结果…………………………………………………………8

7、总结与体会……………………………………………………..12

1、设计的目的

1)复习巩固C语言的基础知识,进一步加深对C语言编程的理解和掌握;

2)利用所学知识,理论和实际结合,利用资源,采用模块化的结构,使用模仿修改自主设计相结合的方法,锻炼学生综合分析解决实际问题的编程能力;

2、设计任务

1、专周设计题目:

学生成绩管理系统

2功能实现:

(1)可以输入100个以内的学生的成绩,要求成绩由用户从键盘输入

(2)输入成绩后,根据用户的选择,能够实现成绩的总和,成绩的排序,平均分,最高分,最低分。

3、运行结果说明

**********欢迎使用学生成绩管理系统****************

1、成绩录入               2、成绩排名(由高到低)

3、成绩排名(由低到高)   4、平均分

5、最高分                 6、最低分

*******************请输入您的操作********************

备注:如果在还没有选择1,而选择2~6中的其中一个的时候,要提示:目前还没有成绩,请您首先选择1进行成绩录入,然后继续回到刚开始的操作,由用户来选择。

选择1后,录入成绩,结束后,后面可进行1~6的选择,每次选择后,作出相应的结果,然后又返回主界面。

3、设计程序运行流程图

4、详细设计

1.主函数用if语句,运用“goto语句”实现循环。

2.学生成绩的存储使用一维数组,并且使用了一个结构体函数“typedef struct”。这样就方便了以后的程序各个步骤来调用此前输入的学生数据。

3.排序运用的是冒泡排序法。

4求平均分是用的将所有数组内的数据加起来,再除以数组内数据的个数。

5求最高分、最低分是用的选择排序法。

5、设计源程序

#include

void main()

{

    char p=0;

    int i,x,m;

    int j,k;

typedef struct{

    char name[10];  /*姓名*/

    int number;  /*学号*/

    int score;   /*成绩*/

    }LC;

    LC Nname[100],xy;

prt:    printf("**************欢迎使用学生成绩管理系统***************\\n");

    printf("\\n    1、成绩录入            ");

    printf("    2、成绩排名(由高到低)\\n");

    printf("\\n    3、成绩排名(由低到高)");

    printf("    4、平均分              \\n");

    printf("\\n    5、最高分              ");

    printf("    6、最低分              \\n");

    printf("******************请输入您的操作*********************\\n");

    printf("请选择(1-6):");

    scanf("%d",&i);

    if(i==1)

    {

        

        p=1;

        printf("请输入学生人数(≤100):");

        scanf("%d",&x);

     for(j=0;j<=x-1;j++)

        {

            printf("请输入学生的姓名 学号 成绩:\\n");

            scanf("%s %d %d",Nname[j].name,&Nname[j].number,&Nname[j].score);

        }

        goto prt;

    }

    if(p!=1)

    {

        printf("目前还没有成绩,请您首先选择1进行成绩录入!!!\\n");

        goto prt;

    }

if(i==2)

    {

        int a,b;

     for(a=0;a        {

         for(b=a+1;b<=x-1;b++)

            {

             if(Nname[a].score                {

                    xy=Nname[a];

                    Nname[a]=Nname[b];

                Nname[b]=xy;

                }

            }

        }

        printf("按高低排序为:\\n");

     for(m=0;m<=x-1;m++)

                {

            printf("%s %d %d\\n",Nname[m].name,Nname[m].number,Nname[m].score);

        }

        printf("\\n");

        goto prt;

    }

    if(i==3)

    {

        int a,b;

     for(a=0;a        {

         for(b=a+1;b<=x-1;b++)

            {

             if(Nname[a].score>Nname[b].score)

                {

                    xy=Nname[a];

                    Nname[a]=Nname[b];

                Nname[b]=xy;

                }

            }

        }

        printf("按高低排序为:\\n");

     for(m=0;m<=x-1;m++)

                {

            printf("%s %d %d\\n",Nname[m].name,Nname[m].number,Nname[m].score);

        }

        printf("\\n");

        goto prt;

    }

if(i==4)

    {

        int a;

        int total=0;

     for(a=0;a<=x-1;a++)

        total=total+Nname[a].score;

                total=total/(j+1);

                printf("平均分%d\\n",total);

        goto prt;

    }

    if(i==5)

    {

        int a;

        xy=Nname[0];

     for(a=x-1;a        {

         if(Nname[a].score>xy.score)

                        xy=Nname[a];

                printf("最高分%s %d %d\\n",xy.name,xy.number,xy.score);

            }

        goto prt;

    }

    if(i==6)

    {

        int a;

        xy=Nname[0];

     for(a=x-1;a        {

         if(Nname[a].score                        xy=Nname[a];

                printf("最低分%s %d %d\\n",xy.name,xy.number,xy.score);

            }

        goto prt;

    }

}

6、运行结果

7、总结与体会

本学期我们学习了C语言这门课程,总的感觉这门课程对于我们非常有用。通过一周的专周,我可以说又将C语言这门课程重新学习了一遍,也因为程序设计的需要,自学了以后的一些课程,如结构体函数等等。总的来说,这个专周让我们熟悉了C语言的许多基本设计知识。也通过一周的自主设计,让我们明白了一个简单的程序是怎样设计出来的。增强了我们对于一个课题的整体把握能力。为我们以后能够全面把握一个项目提供了一个很好的锻炼机会。这个专周,我们同学之间也是相互帮助,互相合作,来共同完成一项任务。同学们间的相互协作让大家彼此间加深了友谊,也体会到了团队所带来的效率。总之,这个专周下来,我受益匪浅。下载本文

显示全文
专题