定义结构体类型进行图书的基本信息操作 C语言

您所在的位置:网站首页 信息的基本类型包括什么 定义结构体类型进行图书的基本信息操作 C语言

定义结构体类型进行图书的基本信息操作 C语言

#定义结构体类型进行图书的基本信息操作 C语言| 来源: 网络整理| 查看: 265

定义一个结构体类型描述图书的基本信息,一本图书的基本信息包括:编号,书名,作者,价格。  

    编写程序,实现如下功能:

        (1)输入10本书的信息,保存在结构体数组中。

        (2)输出10本图书中价格最高的图书信息。

        (3)对结构体数组按照价格进行升序排列,排序之后,下标为0的数组成员存放价格最低的图书信息, …下标为9的数组成员存放价格最高的图书信息。

#define MAX_BOOK 10 struct book{ int id; char bookName[50]; char author[20]; double price; }; void InsertBook(struct book *books,int size); void PrintMaxPriceBook(struct book *books,int size); void SortBooks(struct book *books,int size); void SwapBook(struct book *a,struct book *b); int main(void){ struct book books[MAX_BOOK]; printf("==========插入图书==========\n"); InsertBook(books,MAX_BOOK); printf("==========输出图书==========\n"); PrintMaxPriceBook(books,MAX_BOOK); printf("==========图书排序==========\n"); SortBooks(books,MAX_BOOK); return 0; } // 对图书进行排序:价格低->价格高 void SortBooks(struct book *books,int size){ int i,j; for(i=0;i=0;j--){ if(books[j].priceid; strcpy(p->bookName,a->bookName); strcpy(p->author,a->author); p->price = a->price; a->id = b->id; strcpy(a->bookName,b->bookName); strcpy(a->author,b->author); a->price = b->price; b->id = p->id; strcpy(b->bookName,p->bookName); strcpy(b->author,p->author); b->price = p->price; } // 输出价格最大的图书信息 void PrintMaxPriceBook(struct book *books,int size){ int i,maxIndex=0; for(i=1;ibooks[maxIndex].price){ maxIndex = i; } } printf("价格最高图书信息:"); printf("%d %s %s %.2f\n",books[maxIndex].id,books[maxIndex].bookName,books[maxIndex].author,books[maxIndex].price); } // 插入图书信息 void InsertBook(struct book *books,int size){ struct book *p; int idIn; char bookNameIn[50]; char authorIn[20]; double priceIn; int i; printf("图书信息按照右边格式输入(编号 书名 作者 价格)\n"); for (i = 0; i < size; i++){ p = (struct book*)malloc(sizeof(struct book)); printf("请输入第%d个图书信息:",i+1); scanf("%d %s %s %lf", &idIn, &bookNameIn, &authorIn, &priceIn); p->id = idIn; strcpy(p->bookName,bookNameIn); strcpy(p->author,authorIn); p->price = priceIn; books[i] = *p; } }

 



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3