c语言难题

3. 有10本图书,每本图书的信息包括书号、书名、作者、价格,编写函数完成以下功能:
(1) 从键盘输入数据,将其存放在结构体数组中;
(2) 输入书名,在数组中查找是否存在此书,有此书则输出此书的信息,无此书则输出提示信息;
(3) 输入一个价格,将高于此价格的图书信息输出。

思路
定义一个结构体BOOKINFO{xxx} 结构体里包含书的信息(书号、书名、作者、价格)
然后定义10个结构体BOOKINFO的变量 将书内容输入存到变量中(FOR循环)
用数组下表的方式来访问书名(FOR循环) 当有这种书名的时候就输出该书名结构体下的所有元素 不存在就输出ERROR
然后还是FOR循环 用数组下表访问价格 只要满足高于输入价格的时候
输入图书信息即可
希望这个思路能帮对你有帮助追问

能帮忙写下来吗,谢谢,有急用

追答

typedef struct _bookinfo{ int bookno,char[100] bookname; char[100] author;float price;
}BOOKINFO;
main()
{
int i,cout,price;
char name[100];
BOOKINFO BookInfo[10];
for(i=0;i<10;i++)
{ scanf(XXX,BookInfo[n].xxx)/吧内容输入到结构体内/}
name = getchar();
for(i=0;i<10;i++)
{if(strcpy(name,BookInfo[n].name)==0) printf(XXX/输入该结构体信息/)
else{cout++;}
}if(cout=9)printf(ERROR)
scanf(xxx,&price);
for(i=0;i<10;i++){
if(price<=BookInfo[n].price){printf(XXX)}}
}
整体的算法就是这个了 没写全 你自己在稍稍改动下吧
基本上用到的算法写的差不多了
这个是我个人思路 因为比较匆忙无法写全
但还是希望对你有帮助

追问

真心谢谢

追答

不用客气
因为学习C语言的过程 其实就是学习算法的过程
刚开始的时候 可能没有头绪
所以找个老师或者师傅啥的 给你点思路或者解题方向的话 会对你有很大的帮助
如果只是捡现成的 对你一点帮助都没有 而且会让你不断的增加对C语言学习的厌恶感
还是通过自己的双手来获取知识 这个过程是很快乐的

温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-11-08
有偿提供。。。。。追问

写下来吧,谢谢

相似回答
大家正在搜