问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

关于c语言编程,比如4个学生的三科成绩,int score[4][3],成绩随便打,名字char

发布网友 发布时间:2023-05-01 14:22

我来回答

2个回答

热心网友 时间:2023-10-12 05:53

#include <stdio.h>
struct student
{
    char szName[100];
    int score1;        // 课程1成绩
    int score2;       // 课程2成绩
    int score3;       // 课程3成绩
    int totalScore;    // 总成绩


    // 等号重载
    student operator=(student &st)
    {
        sprintf(szName, st.szName);

        score1 = st.score1; 
        score2 = st.score2; 
        score3 = st.score3;
        totalScore = st.totalScore; 

        return *this;
    }

    // 输出学生信息以及分数

    void printfStu()
    {
        printf("%s\t%d\t%d\t%d\t%d\n", szName, score1, score2, score3, totalScore);
    }


};

int main()
{
    const int stuCount = 3;
    student stuArray[stuCount];

    printf("姓名 课程1成绩 课程2成绩 课程3成绩\n");

    for (int i = 0; i < stuCount; i++)
    {

        scanf("%s %d %d %d", 
            stuArray[i].szName, 
            &stuArray[i].score1, 
            &stuArray[i].score2, 
            &stuArray[i].score3);

        stuArray[i].totalScore = (stuArray[i].score1 + stuArray[i].score2 +
            stuArray[i].score3 );

    }

    // 排序
    for (int i = 0; i < stuCount; i++)
    {
        for (int j = 0; j < stuCount - i -1; j++)
        {
            if (stuArray[j + 1].totalScore > stuArray[j].totalScore)
            {
                student stu = stuArray[j];
                stuArray[j] = stuArray[j + 1];
                stuArray[j + 1] = stu;
            }
        }
    }

    // 打印
    printf("姓名\t课程1\t课程2\t课程3\t总成绩\n");

    for (int i = 0 ; i < stuCount; i ++)
    {
        stuArray[i].printfStu();
    }

    return 0;
}

运行结果:

热心网友 时间:2023-10-12 05:53

#include<stdio.h>
#include<string.h>

int main()
{
int i, j, k, r;
char ts[20];
char name[4][20];
int score[4][3];
float t, zf[4];

//此处为输入数据的代码

/* 计算总分 */
for(i=0; i<4; i++)
{
/* 计算第i行的总分保存于zf[i] */
t=0;
for(j=0; j<3; j++)
t+=score[i][j];
zf[i]=t;
}
/* 排序 */
for(i=0; i<3; i++)
{
k=i;
for(j=i+1; j<4; j++)
if(zf[j]>zf[k])
k=j;
if(i!=k) /* 交换成绩表的第i行和第k行 */
{
strcpy(ts,name[i]); /* 交换姓名 */
strcpy(name[i],name[k]);
strcpy(name[k],ts);
t=zf[i]; /* 交换总成绩 */
zf[i]=zf[k];
zf[k]=t;
/* 交换scores的第i行和第k行 */
for(j=0; j<3; j++){
r=score[i][j];
score[i][j]=score[k][j];
score[k][j]=r;
}
}
}
/* 输出 */
printf("名次\t姓名\t课程1\t课程2\t课程3\t总分\n");
for(i=0; i<4; i++) /* sn个学生*/
{
printf("%d\t%s\t", i+1, name[i]); /* 名次 姓名*/
for(j=0; j<3; j++) /* 3门课成绩 */
printf("%d\t", score[i][j]);
printf("%.2f\n", zf[i]); /* 总分 */
}
return 0;
}
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
网上到底有没有钢《铁侠侠3》的高清完整版呀? 有木有下载[钢铁侠3BD1280真正高清收藏版][161电影网种子的网址_百度知 ... 苏州甪直怎样坐车去上海虹桥?要快的! 从吴江自驾去上海虹桥机场T2航站楼怎么走?大约要多久?有停车场不?第一... 从甪直开车到上海虹桥机场T1航站楼怎么走? 甪直到虹桥机场多长时间? 柴油暖风机多少钱一台_柴油暖风机什么牌子好 国务院关于加快发展现代保险服务业的若干意见 国发2019 29号_百度知 ... 八万的那个夏天是什么意思? 北京BW007有什么安全配置 c++中voidgetScore(int& score)是什么意思 硫磺皂洗脸的利弊是什么? oppo手机如何下载高危软件并安装 怎么安装高危软件oppo oppo怎么下载高危应用? 怎样健康的去黑头 怎么样预防感冒,发烧! oppo手机怎样打开wellaudio 医疗范围注册商标属于哪一类? 张一元130一斤的茉莉云毫怎么样 怎么把别人弄封代码 硬笔书法的心得5篇 360密盘忘记密码了并且密盘没有绑定360帐号该怎么办啊急急急 怎么从qq群里下载软件安装到电脑上急麻烦懂的人回答下 小米6x怎么设置微信美颜 qq空间打卡设置仅自己可见被同学知道 归心如飞的解释 归心的意思 奔凑的解释奔凑的解释是什么 天津市滨海新区吾悦华府小区附近有哪几家银行 C语言理解 C语言设计求教 c语言一个基本问题,关于数组初始化 用4s店销售汽车用uk怎么开增值税发票 嫩 在河南话里是 你 的意思吗? PD/progr是什么 爬嫩大那蛋是什么意思 什么是密码恢复串 benq投影仪出现密码恢复什么意思 中频变压器GR和PR型有什么区别 oobe重置密码是什么意思 pr什么gr什么mm什么的单词有哪些? 配电柜箱标牌BL代表什么 福田电工开关 al1 al2 bl1 bl2 cl1 cl2是什么意思al bl cl是封闭的 高压电路图三相BL代表什么意思 生肖相充害刑有哪些? 母亲与孩子属相相冲怎么化解,孩子和母亲的属相相冲会怎么样? 属相相合相冲相害相刑表,属相婚配相合相冲相克表 中国移动宽带59套餐违约金一般是多少 移动宽带由于各种*取消不了,以后也不会用移动了可以直接不交费了吗?
  • 焦点

最新推荐

猜你喜欢

热门推荐