C语言程序设计编程题[二](山西大学876)


2016年【876】c程序设计

提示:仅完成了c语言部分的代码大题


提示:以下是本篇文章正文内容,下面案例可供参考;

一、输入 5 名学生 3 科成绩,并比较输出成绩最高学生学号和成绩

#define _CRT_SECURE_NO_WARNINGS  //用于屏蔽新版 VisualStudio 编码检测,无用可直接注释或删除
#include <stdio.h>
#include <string.h>
#include <malloc.h>

//输入 5 名学生 3 科成绩,并比较输出成绩最高学生学号和成绩
typedef struct ST {
	char sn[5];  //学号4位
	int a;   // 成绩a,b,c
	int b;
	int c;
}students, * st;
int main() {
	students lins[5];
	st t;
	int a1, b1, c1;  //最大成绩
	int ai, bi, ci;  // 对应索引
	for (int i = 0;i < 5;i++) {
		t = (st)malloc(sizeof(students));
		printf("输入学号\n");
		scanf("%s", t->sn);
		//printf("%s", t->sn);
		printf("输入三科成绩,空格分隔\n");
		scanf("%d %d %d", &(t->a), &(t->b), &(t->c));
		lins[i] = *t;
	}
	a1 = lins[0].a;
	b1 = lins[0].b;
	c1 = lins[0].c;
	ai = bi = ci = 0;
	for (int i = 0;i < 5;i++) {
		if (lins[i].a > a1) {
			a1 = lins[i].a;
			ai = i;
		}
		if (lins[i].b > b1) {
			b1 = lins[i].b;
			bi = i;
		}
		if (lins[i].c > c1) {
			c1 = lins[i].c;
			ci = i;
		}
	}
	printf("第一科最高成绩%d,学号:%s\n", a1,lins[ai].sn );
	printf("第二科最高成绩%d,学号:%s\n", b1,lins[bi].sn );
	printf("第三科最高成绩%d,学号:%s\n", c1,lins[ci].sn );
	return 0;
}

提示:c语言基本的结构体的相关操作,无论是大题还是选择考操作概念有很有可能。

总结

如有好的意见 ,欢迎下面留言

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值