1.结构的声明

可以使用无标记声明

  1. struct
  2.     char title[MAXTITLE]; 
  3.     char author[MAXAUTL]; 
  4.     float value; 
  5. }lebrary; 

2.结构的初始化

可以直接声明的时候初始化

  1. struct book library{ 
  2.        "The king!"
  3.        "Renee Vivotte"
  4.        1.95 
  5. }; 

 

  1. int main(void){ 
  2.     struct book Library[SIZE]; 
  3.     int index = 0;//保存存入数组的图书本数  
  4.     int count;//循环计数  
  5.      
  6.     printf("Enter the title\n"); 
  7.     //退出的因素1.数组满了2.读取失败3.主动退出  
  8.     while(index<SIZE && gets(Library[index].title) && Library[index].title[0] != '\0'){ 
  9.         printf("Enter the author\n"); 
  10.         gets(Library[index].author); 
  11.         printf("Enter the value\n"); 
  12.         scanf("%f",&Library[index++].value);//增加了index的值  
  13.         while(getchar() != '\n'){//清空垃圾值  
  14.             continue
  15.         } 
  16.         if(index<SIZE){ 
  17.             printf("Enter the title next\n"); 
  18.         } 
  19.     } 
  20.     for(count=0;count<index;count++){ 
  21.         printf("%s by %s:$%f\n",Library[count].title,Library[count].author,Library[count].value); 
  22.     } 
  23.     puts("Done\n"); 
  24.     getchar(); 
  25.     return 0;