小学生管理系统V1.0

#include <stdio.h>
#define N 30
#define M 5
void ReadScore(int score[],long num[],int n);
int SumC(int score[],int n);
void SortByScore(int score[],long num[],int n);
void SortByNum(int score[],long num[],int n);
int Search(long num[],long x,int n);
void Print(int score[],long num[],int n);
void StaAnly(int score[],int n);
int main()
{
    int score[N],n,sum,w,id; int pos=0;
    float aver;
    long num[N],x;
    printf("input n:");
    scanf("%d",&n);
    do{
        printf("=================================================\n");
        printf("1.Input record\n");
        printf("2.Caculate total and average score of course\n");
        printf("3.Sort in descending order by score\n");
        printf("4.Sort in ascending order by num\n");
        printf("5.Search by num\n");
        printf("6.Statistic analysis\n");
        printf("7.List record\n");
        printf("0.Exit\n");
        printf("Input the number you want to do :");
        scanf("%d",&w);
        switch(w){
            case 1:ReadScore(score,num,n);break;
            case 2:printf("total is %d,average is %.1f\n",SumC(score,n),(float)SumC(score,n)/n);break;
            case 3:SortByScore(score,num,n);
                Print(score,num,n);
                break;
            case 4:SortByNum(score,num,n);
                Print(score,num,n);
                break;
            case 5:printf("Input the id you want to search :\n");
                scanf("%ld",&x);
                id=Search(num,x,n);
                printf("%ld score %d\n",x,score[id]);
                break;
            case 6:StaAnly(score,n);

                break;
            case 7:Print(score,num,n);
                break;
            case 0:pos=1;
            default:printf("Over\n");
        }
    }while(pos==0);
    return 0;
}

void ReadScore(int score[],long num[],int n)
{
    printf("Input %d Id and scores\n",n);
    for (int i = 0; i < n; ++i)
    {
        scanf("%ld%d",&num[i],&score[i]);

        /* code */
    }
}
int SumC(int score[],int n)
{
    int temp=0;
    for (int i = 0; i < n; ++i)
    {
        temp+=score[i];
        /* code */
    }
    return temp;
}
void SortByScore(int score[],long num[],int n)
{
    int temp;
    long a;
    for (int i = 0; i < n-1 ; ++i)
    {
        for (int j = 1; i < n-i; ++i)
        {
            if (score[j]>score[j-1])
            {
                temp=score[j];
                score[j]=score[j-1];
                score[j-1]=temp;
                a=num[j];
                num[j]=num[j-1];
                num[j-1]=a;
                /* code */
            }
            /* code */
        }
        /* code */
    }
}
void SortByNum(int score[],long num[],int n)
{
    int a,k;
    long b;
    for (int i = 0; i < n-1; ++i)
    {
        k=i;
        for (int j = i+1; j < n; ++j)
        {
            if (num[k]>num[j])
            {
                k=j;
                /* code */
            }

            /* code */
        }
        if(k!=i)
        {
            b = num[i];
            num[i]=num[k];
            num[k]=b;
            a=score[i];
            score[i]=score[k];
            score[k]=a;

        }
        /* code */
    }
}

int Search(long num[],long x,int n)
{
    for (int i = 0; i < n; ++i)
    {
        if (num[i]==x)
        {
            return i;
            /* code */
        }
        /* code */
    }
    return -1;
}
void Print(int score[],long num[],int n)
{
    printf("number\tscore\t\n");
    for (int i = 0; i < n; ++i)
    {
        printf("%6ld\t%5d\n",num[i],score[i] );
        /* code */
    }
}
void StaAnly(int score[],int n)
{
    int count[M]={0};
    for (int i = 0; i < n; ++i)
    {

        if (score[i]>89)
            count[0]++;
        else if(score[i]>79&&score[i]<90)
            count[1]++;
        else if(score[i]>69&&score[i]<80)
            count[2]++;
        else if(score[i]>59&&score[i]<70)
            count[3]++;
        else count[4]++;

    }
    printf("优秀\t良好\t中等\t及格\t不及格\t\n");
    for (int i = 0; i < M; ++i)
    {
        printf("%d\t",count[i]);


        /* code */
    }
    printf("\n");
}

TMD劳资总算给写出来了!!!!!!!!!!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值