结构体做函数参数2
2015-10-10 20:09
232 查看
#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #include<string.h> typedef struct Teacher { char name[64]; int age; int id; }Teacher; void printTeacher(Teacher *array, int num) { int i = 0; //打印老师年龄 for (i = 0; i < num; i++) { //printf("age:%d\n", array[i].age); printf("age:%d\n", (*(array + i) ).age); //(array++)->age; } }//(*(array+i)).age void sortTeacher(Teacher *array,int num) { int i, j; Teacher tmp; for (i = 0; i < num;i++) { for (j = i; j < num;j++) { if (array[i].age<array[j].age) { tmp = array[i]; array[i] = array[j]; array[j] = tmp; } } } } Teacher * createTeacher(int num) { Teacher * tmp = NULL; tmp = (Teacher*)malloc(sizeof(Teacher)*num); // Teacher Array[3] if (tmp == NULL) { return NULL; } } void FreeTeacher(Teacher *p) { if (p!=NULL) { free(p); } } int main() { int i = 0; int num = 3; //Teacher Array[3]; //在stack分配内存 Teacher *pArray = NULL; pArray = createTeacher(num); for (i = 0; i < num; i++) { printf("\nplease enter age:"); scanf("%d", &pArray[i].age); } printTeacher(pArray, num); sortTeacher(pArray, num); printf("排序后:\n"); printTeacher(pArray, num); /* printTeacher(Array, num); sortTeacher(Array, num); printf("排序后:\n"); printTeacher(Array, num);*/ FreeTeacher(pArray); system("pause"); return 0; }
相关文章推荐
- iOS开发中一些常见的并行处理
- const vector iterator
- hdu4414Finding crosses 水题
- java md5加密字符
- scrapy安装
- Codevs P1116 四色问题
- ListView中的adapter的观察者模式
- 【第4节】Java代码实现栈--小例子--分隔符匹配
- C++基础语法注意细节
- 一次性能调优的经历之慎用表变量和从小结果集获取数据
- 查询练习
- UVA-11903 Just Finish it up
- iOS Masonry的使用需要注意的地方
- Codeforces Round #319 (Div. 2) D
- 5475 An easy problem
- PAT 1002 写出这个数
- 【第4节】Java代码实现栈--小例子--单词逆序
- 正则表达式
- 产品经理的职责
- 产品经理的职责