#include <stdio.h>
#include <string.h>
struct Books
{
char title[50];
char author[50];
char subject[100];
int book_id;
};
/* 函数声明 */
void printBook( struct Books book );
int main( )
{
struct Books Book1; /* 声明 Book1,类型为 Books */
struct Books Book2; /* 声明 Book2,类型为 Books */
/* Book1 详述 */
strcpy( Book1.title, "C Programming");
strcpy( Book1.author, "Nuha Ali");
strcpy( Book1.subject, "C Programming Tutorial");
Book1.book_id = 6495407;
/* Book2 详述 */
strcpy( Book2.title, "Telecom Billing");
strcpy( Book2.author, "Zara Ali");
strcpy( Book2.subject, "Telecom Billing Tutorial");
Book2.book_id = 6495700;
/* 输出 Book1 信息 */
printBook( Book1 );
/* 输出 Book2 信息 */
printBook( Book2 );
return 0;
}
////问题???
void printBook( struct Books book )(此函数传什么参数呢???)
{
switch(XXXX){
case xxxx://(case 结构体成员判断)
printf( "Book title : %s\n", book.title);
break;
case xxxx:
printf( "Book author : %s\n", book.author);
break;
case xxxx:
printf( "Book title : %s\n", book.subject);
break;
default :
}
}
为啥要switch呢,所有的都printf啊
根据上面的调用代码,显然是要输出book的所有成员变量啊,所以不需要switch
void printBook( struct Books book )(此函数传什么参数呢???)
{
printf( "Book title : %s\n", book.title);
printf( "Book author : %s\n", book.author);
printf( "Book title : %s\n", book.subject);
printf("Book book_id: %d\n",book.book_id);
}