102.在学生结构体中寻找规定范围内的分数
2015-07-01 23:25
323 查看
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,函数fun的功能是:把指定分数范围内的学生数据放在b所指的数组中,分数范围内的学生人数由函数值返回。
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #define N 16 typedef struct { char num[10]; int s; }STREC; int fun(STREC *a, STREC *b, int l, int h) { int i, j = 0; for (i = 0;i < N;i++) if ((a[i].s >= l) && (a[i].s <= h)) { b[j] = a[i]; j++; } return j; } int main() { STREC a = { {"GA005",85},{"GA003",76}, {"GA002",69},{"GA004",85},{"GA001",96}, {"GA007",72},{"GA008",64},{"GA006",87}, {"GA015",85},{"GA013",94},{"GA012",64}, {"GA014",91},{"GA011",90},{"GA017",64}, {"GA018",64},{"GA016",72} }; STREC h , tt; int i, j, n, low, high, t; printf("The Enter 2 integer number low&high: "); scanf("%d%d",&low, &high); if (high < low) { t = high; high = low; low = t; } n = fun(a, h, low, high); printf("The student data between %d--%d:\n", low, high); for (i = 0;i < n;i++) printf("%s %4d\n", h[i].num, h[i].s); printf("\n\n"); n = fun(a, h, 80, 98); for (i = 0;i < n - 1;i++) for (j = i + 1;j < n;j++) if (h[i].s>h[j].s) { tt = h[i]; h[i] = h[j]; h[j] = tt; } for (i = 0;i < n;i++) printf("%4d\n", h[i].s); system("pause"); return 0; }
相关文章推荐
- PHP代码优化技巧大盘点
- vmstat命令大致判断硬盘性能
- Java基础总结之多线程(1)
- 求M的N次方的最后三位
- OleDb 读取 excel
- 制造业信息化的发展方向
- NuGet v3 feed带来的惊喜
- 安卓 布局 形状圆角
- Distinct Subsequences
- Python语言十分钟快速入门
- Java基础总结之多线程(2)
- Codeforces Round 311 div2
- “产品级敏捷” 的这条路; 逐步的形成一高效的产品开发生态系统
- java基础增强---Java 类加载器与动态代理
- mysql 操做
- start from ending
- 黑马程序员-OC语言-点语法介绍和使用(听课笔记)
- ASP.Net MVC学习(一)
- 计划和基本说明
- PHP基础温习之echo print printf sprintf print_r var_dump的用法与区别