例如,现在我定义了:struct stMystruct
{
char a[20];
char b[20];
int c;
}然后我想把这个 STRUCT 做成是数组型的,可以吗 ? 
就是做 stMystruct[0].c = 100 这一种的操作,怎么样定义呢? HOW ?谢谢谢 ~~~~~~~~~~

解决方案 »

  1.   

    比如这样,你的也如此
    struct stu 

       int num; 
       char *name; 
       char sex; 
       float score; 
    }boy[5]={ 
      {101,"Li ping",'M',45}, 
      {102,"Zhang ping",'M',62.5}, 
      {103,"He fang",'F',92.5}, 
      {104,"Cheng ling",'F',87}, 
      {105,"Wang ming",'M',58}, 
    }; 
    main() 

       int i,c=0; 
       float ave,s=0; 
       for(i=0;i<5;i++) 
       { 
          s+=boy[i].score; 
          if(boy[i].score<60) c+=1; 
       } 
       printf("s=%f\n",s); 
       ave=s/5; 
       printf("average=%f\ncount=%d\n",ave,c); 

      

  2.   

    结构数组
    struct stMystruct
    {
    char a[20];
    char b[20];
    int c;
    } st[5];
      

  3.   

    定义
    struct stMystruct
    {
    char a[20];
    char b[20];
    int c;
    }stMy;
    使用
    stMy stTemp[10];
      

  4.   

    struct stMystruct
    {
    char a[20];
    char b[20];
    int c;
    };struct stMystruct temp[10];
    temp[0].c = 100;或者typedef struct stMystruct
    {
    char a[20];
    char b[20];
    int c;
    }_stMystruct;_stMystruct  temp[10];
    temp[0].c = 10;
      

  5.   

    (尽管已经不了了,但还是想说)
    结构体数组是很基本的用法,通常可以这样比较好:
    typedef struct
    {
    char a[20];
    char b[20];
    int c;
    }MYSTRUCT;
    MYSTRUCT myArray[5];
      

  6.   

    stMystruct[0].c = 100,这是什么意思?