#include<stdio.h>
typedef struct
{
int id;
char name[20];
float price;
}book;
void func(book *p);
void paixv(book p[]);
void chakan(book *p);
int main(int argc, const char *argv[])
{
book bk[5];
int i,f;
printf("请输入书籍信息(编号、书名、价格):\n");
for(i=0;i<5;i++)
{
scanf("%d %s %f",&bk[i].id,bk[i].name,&bk[i].price);
}
while(1){
printf("请选择功能:(1.查看 2.筛选 3.排序 4.按任意键退出)");
scanf("%d",&f);
switch(f)
{
case 1: chakan(bk);break;
case 2: func(bk);break;
case 3: paixv(bk);break;
default: printf("感谢您的使用!\n");
return 0;
}
}
return 0;
}
void chakan(book *p)
{
int i;
for(i=0;i<5;i++)
{
printf("%d\t%s\t%.2f\n",(p+i)->id,(p+i)->name,(p+i)->price);
}
}
void func(book *p)
{
int i;
float a;
printf("请输入指定售价:\n");
scanf("%f",&a);
printf("当前指定售价为%.2f元,大于当前指定售价的书如下:\n",a);
for(i=0;i<5;i++)
{
if((p+i)->price > a)
{
printf("%d %s %.2f\n",(p+i)->id,(p+i)->name,(p+i)->price);
}
}
}
void paixv(book p[])
{
int i,j;
book tmp;
for(i=0;i<4;i++)
{
for(j=0;j<4-i;j++)
{
if(p[j].price < p[j+1].price)
{
tmp = p[j];
p[j] = p[j+1];
p[j+1] = tmp;
}
}
}
printf("按书籍价格从高到低为:\n");
for(i=0;i<5;i++)
{
printf("%d\t%s\t%.2f\n",p[i].id,p[i].name,p[i].price);
}
}
linux学习:图书管理系统
最新推荐文章于 2025-05-03 14:26:44 发布
本文介绍了一个简单的图书管理系统,使用C语言编写,实现了输入书籍信息、查看、筛选和排序等功能。用户可以输入书籍的编号、书名和价格,系统能够按用户选择进行查看、筛选出价格高于特定值的书籍以及对书籍按价格从高到低进行排序。

6151

被折叠的 条评论
为什么被折叠?



