zoukankan      html  css  js  c++  java
  • 结构体做函数参数2

     1 #define _CRT_SECURE_NO_WARNINGS
     2 #include<stdio.h>
     3 #include<stdlib.h>
     4 #include<string.h>
     5 
     6 typedef struct Teacher
     7 {
     8     char name[64];
     9     int age;
    10     int id;
    11 }Teacher;
    12 
    13 void printTeacher(Teacher *array, int num)
    14 {
    15     int i = 0;
    16     //打印老师年龄
    17     for (i = 0; i < num; i++)
    18     {
    19         //printf("age:%d
    ", array[i].age);
    20         printf("age:%d
    ", (*(array + i) ).age);
    21         //(array++)->age;
    22     }
    23 }//(*(array+i)).age
    24 
    25 void sortTeacher(Teacher *array,int num)
    26 {
    27     int i, j;
    28     Teacher tmp;
    29     for (i = 0; i < num;i++)
    30     {
    31         for (j = i; j < num;j++)
    32         {
    33             if (array[i].age<array[j].age)
    34             {
    35                 tmp = array[i];
    36                 array[i] = array[j];
    37                 array[j] = tmp;
    38             }
    39         }
    40     }
    41 }
    42 
    43 
    44 Teacher * createTeacher(int num)
    45 {
    46     Teacher * tmp = NULL;
    47     tmp = (Teacher*)malloc(sizeof(Teacher)*num);    //    Teacher Array[3]
    48     if (tmp == NULL)
    49     {
    50         return NULL;
    51     }
    52 }
    53 
    54 void FreeTeacher(Teacher *p)
    55 {
    56     if (p!=NULL)
    57     {
    58         free(p);
    59     }
    60 }
    61 
    62 int main()
    63 {
    64     int i = 0;
    65     int num = 3;
    66     //Teacher Array[3];    //在stack分配内存
    67 
    68     Teacher *pArray = NULL;
    69     pArray = createTeacher(num);
    70 
    71     for (i = 0; i < num; i++)
    72     {
    73         printf("
    please enter age:");
    74         scanf("%d", &pArray[i].age);
    75     }
    76     printTeacher(pArray, num);
    77     sortTeacher(pArray, num);
    78     printf("排序后:
    ");
    79     printTeacher(pArray, num);
    80     /*
    81         printTeacher(Array, num);
    82         sortTeacher(Array, num);
    83         printf("排序后:
    ");
    84         printTeacher(Array, num);*/
    85     FreeTeacher(pArray);
    86     system("pause");
    87     return 0;
    88 }
  • 相关阅读:
    POJ 2923 Relocation (状态压缩,01背包)
    HDU 2126 Buy the souvenirs (01背包,输出方案数)
    hdu 2639 Bone Collector II (01背包,求第k优解)
    UVA 562 Dividing coins (01背包)
    POJ 3437 Tree Grafting
    Light OJ 1095 Arrange the Numbers(容斥)
    BZOJ 1560 火星藏宝图(DP)
    POJ 3675 Telescope
    POJ 2986 A Triangle and a Circle
    BZOJ 1040 骑士
  • 原文地址:https://www.cnblogs.com/linst/p/4868176.html
Copyright © 2011-2022 走看看