Mọi người giúp e sửa lỗi sai trong code.
-
thongtin(): Tìm thông tin về vé theo giá từ x đến y nhập từ bàn phim -
binhquan(): tính bình quân giá vé
Em có code thử rồi mọi người. Mọi người xem và góp ý giúp em với…
#include<conio.h>
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define max 100
struct ve
{
char tenphim[max];
char soghe[10],loaive[10],tinhtrang[10];
int giave;
int giochieu,phut;
};
void Ke(int x)
{
int index;
for (index=0; index<x; index++)
printf("-");
}
void Nhap(ve a[], int &n)
{
do{
printf("Cho biet so ve: ");
scanf("%d", &n);
} while (n <= 0);
for (int i = 1; i <= n; i++)
{
printf("Thong tin ve %d la: \n", i);
printf("So ghe: \n");
fflush(stdin);
gets(a[i].soghe);
printf("Ten phim: \n");
fflush(stdin);
gets(a[i].tenphim);
printf("Gio chieu :\n");
scanf("%d", &a[i].giochieu);
printf("Nhap phut :\n");
scanf("%d", &a[i].phut);
printf("Gia ve: \n");
scanf("%d", &a[i].giave);
fflush(stdin);
printf("Loai ve: \n");
gets(a[i].loaive);
printf("Tinh trang : \n");
gets (a[i].tinhtrang);
}
}
void Xuat(ve a[], int n)
{
printf("\n%40s\n\n", "DANH SACH VE CHIEU PHIM");
printf("So ghe\t\t Ten phim\t\t Gio chieu\t\t Gia ve\t Loai ve\t Tinhtrang");
for (int i = 1; i <= n; i++)
{
printf("\n %s \t\t %s \t\t %d h %d phut \t\t %d \t\ %s \t %s \n", a[i].soghe,a[i].tenphim,a[i].giochieu,a[i].phut,
a[i].giave, a[i].loaive, a[i].tinhtrang);
}
}
void thongtin(ve a[], int n)
{
int x,y;
printf("\n Nhap x:",x); scanf("%d",&x);
printf("\n Nhap y:",y);scanf("%d",&y);
for (int i=0;i<n;i++)
{
if (x<=a[i].giave<=y)
{
printf("\n %s \t\t %s \t\t %d h %d phut \t\t %d \t\ %s \t %s \n", a[i].soghe,a[i].tenphim,a[i].giochieu,a[i].phut,
a[i].giave, a[i].loaive, a[i].tinhtrang);
}
}
}
void binhquan(ve a[], int n){
float tbc;
for(int i=0;i<n;i++)
{
int t=0;
t=t+a[i].giave;
tbc=(float)t/n;
}
printf("\n Binh quan gia ve ban ra: %5.2f ",tbc);
}
void Luufile( ve a[], int n)
{
int i;
FILE *file;
file=fopen("veban.dat", "wb");
if (file == NULL)
printf("\nLoi mo tep!");
else
{
for (i=0; i<n; i++)
{
fprintf(file, "\n %s \t\t %s \t\t %d h %d phut \t\t %d \t\ %s \t %s \n", a[i].soghe,a[i].tenphim,a[i].giochieu,a[i].phut,
a[i].giave, a[i].loaive, a[i].tinhtrang);
if (i != n-1)
fprintf(file,"%s", "\n");
}
printf("\nDa luu thanh cong vao tep %s", "veban.dat");
fclose(file);
}
}
int main()
{
ve a[100];
int n,number;
do
{
printf("\n\n");
Ke(39);
printf("\n|%20s%18s\n", "MENU", "|");
Ke(39);
printf("\n| %-36s|", "1. Nhap du lieu ve chieu phim.");
printf("\n| %-36s|", "2. Hien danh sach ve chieu phim.");
printf("\n| %-36s|", "3. Thong tin gia ve x,y.");
printf("\n| %-36s|", "4. Ghi vao tep veban.dat.");
printf("\n| %-36s|", "5. Binh quan gia ve.");
printf("\n| %-36s|\n", "0. Thoat.");
Ke(39);
printf("\n\nNhap lua chon: "); scanf("%d", &number);
switch (number)
{
case 1: Nhap(a,n); continue;
case 2: Xuat(a,n); continue;
case 3: thongtin(a,n); continue;
case 4: Luufile(a,n); continue;
case 5: binhquan(a,n); continue;
default: exit(0);
}
}while (1);
return 0;
}
``
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?