2016年 成渝校招软件上机练习
来源:互联网 发布:php代码批量替换工具 编辑:程序博客网 时间:2024/06/07 05:31
第一题:
代码:
/* * 老师想知道从某某同学到某某同学当中,分数最高的是多少。 * 现在请你编程模拟老师的询问。当然,老师有时候需要更新某位同学的成绩。 */ #include<stdio.h>#include<string.h>#define N 30000#define M 5000 /* * 定义一个数组,这个数组成员包括学生的编号,以及成绩 */ struct student {int Num;int score;}; /* 千万要记得这个分号不可少 */ /* * 将每个分数与每次比较较大的值进行比较并返回其中最高分 */ int sort(struct student stu[], int min, int max) {int i, maxscore = stu[min].score;for ( i = min; i < max + 1; i++ ){if ( maxscore < stu[i].score ){ maxscore = stu[i].score;}}return maxscore;}/* * 成绩更新函数,根据相应的输入编号,并对其进行成绩更改 */ void UpdateScore( struct student stu[], int n, int score1){stu[n].score = score1;} int main(void){int n, m, score0; /* 学生人数 n,操作数 m, 学生分数 score0 */char e[20]; /* e 表示操作数 */int i , j = 0, k, Num1, Num2; /* 更改成绩的学生编号 Num,查询时候的数字编号Num1, Num2 */struct student a[N];int Output[128] = {0}; /* 将要输出的数据进行保存 *//* 输入学生人数 n, 以及操作数 m*/scanf("%d %d", &n, &m);for( i = 1; i < n + 1; i++){scanf("%d", &score0);a[i].Num = i;a[i].score = score0;}scanf("\n");/* 输入操作数 C * 当C为‘Q’的时候,表示这是一条询问操作,它询问ID从A到B(包括A,B)的学生当中,成绩最高的是多少。 * 当C为‘U’的时候,表示这是一条更新操作,要求把ID为A的学生的成绩更改为B。 */while (m--){scanf("%s%d%d", &e,&Num1, &Num2 ); if ('Q' == e[0]){ Output[j] = sort( a, Num1, Num2); j++;}else if ('U' == e[0]){UpdateScore( a, Num1, Num2);}}for ( k = 0; k < j; k++){printf("%d\n", Output[k]);}}
2 0
- 2016年 成渝校招软件上机练习
- 上机练习
- <上机练习>
- 上机练习
- 上机练习
- Java上机练习(1)
- 上机练习列表
- 作业 上机练习 5
- 十三章 上机练习
- 十三章 上机练习
- 十五章 上机练习
- 2.4.6上机练习
- 上机练习项目一
- 华为上机试题练习
- 上机考真题练习
- 小练习上机题
- C++上机练习
- 13章上机练习
- Google APAC 2016 University Graduates Test(google校招笔试)
- EATool-输电线路房屋分布图
- 背包之01背包、完全背包、多重背包详解(转)
- 图像处理
- Android 保存View到本地SD卡
- 2016年 成渝校招软件上机练习
- Palindrome Number
- 操作系统过小,无法启动数据库
- TFHpple使用方法
- Google笔试(2015年8月)
- UVa 340 Master-Mind Hints
- 1090. Highest Price in Supply Chain (25)
- Java基础 笔记(2)
- hibernate一对一,一对多,多对一,多对多配置