Đề: Viết chương trình nhập vào danh sách các cuốn sách. Mỗi cuốn sách là 1 cấu trúc gồm các thành phần: Tên cuốn sách,tác giả,số trang,giá bán. Hiển thị thông tin cuốn sách vừa nhập ra màn hình. Tìm cuốn sách có giá bán đắt nhất.Tìm các cuốn sách của tác giả có tên X.
Phần tìm tên tác giả em sai chỗ nào mong mọi người giúp đỡ cảm ơn.
#include<iostream>
#include<string.h>
#include<conio.h>
using namespace std;
struct sach{
char ten[30];
char tacgia[30];
int sotrang;
int giaban;
};
void nhap(sach c[50],int n)
{
for(int i=0;i<n;i++)
{
cout<<"Nhap thong tin sach "<<i+1;
cout<<"\nten: ";
cin.ignore(1);
cin.getline(c[i].ten,30);
cout<<"Nhap tac gia: ";
cin.getline(c[i].tacgia,30);
cout<<"Nhap so trang ";
cin>>c[i].sotrang;
cout<<"Nhap gia ban ";
cin>>c[i].giaban;
}
}
void xuat(sach c[50],int n)
{
cout<<"=====================================\n";
cout<<"ten\t\ttac gia\t\tso trang\tgia ban\n";
for(int i=0;i<n;i++)
cout<<c[i].ten<<"\t"<<c[i].tacgia<<"\t"<<c[i].sotrang<<"\t"<<c[i].giaban<<endl;
}
void yeucau(sach c[50],int n)
{
char tentacgia[30];
cout<<"nhap ten tac gia can tim:";
cin.ignore(1);
cin.getline(tentacgia,29);
for (int i=0;i<n;i++)
{
if (strcmpi(tentacgia,c[i].tacgia)==0)
{
cout<<c[i].ten<<endl;
}
}
}
void dat(sach c[50],int n)
{
float max=c[0].giaban;
for(int i=1;i<n;i++)
if(c[i].giaban>max)max=c[i].giaban;
cout<<"\nNhung cuon sach co gia cao nhat:\n";
for(int i=0;i<n;i++)
if(c[i].giaban==max)
cout<<c[i].ten<<"\t"<<c[i].tacgia<<"\t\t"<<c[i].sotrang<<"\t"<<c[i].giaban<<endl;
}
int main()
{
struct sach c[50];
int n;
cout<<"Nhap vao so luong sach: ";
cin>>n;
nhap(c,n);
xuat(c,n);
yeucau(c,n);
dat(c,n);
getch();
}
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?