Chuyển mã từ C++ sang C

Mọi người cho e hỏi sửa cái gì để chương trình này chạy được file.c … E để .cpp thì chạy được .c thì báo lỗi.

#include<conio.h>
#include<stdio.h>


typedef struct
{
char Ten[30];
int Tuoi;
char DiaChi[120];
int Luong;
int TongGioLam;
}
NhanVien;
void nhapDuLieu(NhanVien Nv[] ,int *N)
{
int i;
do{
        printf("nhap vao so nhan vien: ");
        scanf("%d",&*N);
}while (*N<0||*N>50);
for (i=1;i<=*N;i++)
{
        printf("\nnhap thong tin cho nhan vien thu %d:",i);
        printf("\nHo ten: ");
        fflush(stdin);gets(Nv[i].Ten);
        printf("Tuoi: ");
        scanf("%d",&Nv[i].Tuoi);
        printf("\nDia chi: ");
        fflush(stdin);gets(Nv[i].DiaChi);
        printf("\nLuong: ");
        scanf("%d",&Nv[i].Luong);
        printf("\nTong so gio lam: ");
        scanf("%d",&Nv[i].TongGioLam);


}
}
void xuatDuLieu(NhanVien Nv[], int N)
 {
        int i;
        int T[50];
        for(i=1;i<=N;i++)
        {

  if(Nv[i].TongGioLam>200)
{
        T[i] =((Nv[i].Luong)*20/100);}
else if  (Nv[i].TongGioLam>100&&Nv[i].TongGioLam<200)
        T[i]=((Nv[i].Luong)*10/100);
else if (Nv[i].TongGioLam<100)
        T[i]=0;
           }

printf("\nThong tin Nhan Vien vua nhap la: ");
        printf("\n|       Ten      |   Tuoi  |            Dia chi           |    Luong   | SGL |  Thuong  |");
        printf("\n|----------------|---------|------------------------------|------------|-----|----------|");
       for(i=1;i<=N;i++)
        {
        printf("\n|%16s|%9d|%30s|%12d|%5d|%10d|",Nv[i].Ten,Nv[i].Tuoi,Nv[i].DiaChi,Nv[i].Luong,Nv[i].TongGioLam,T[i]);
        printf("\n|----------------|---------|------------------------------|------------|-----|----------|");
}

}
void laydulieu(NhanVien Nv[],int a[],int N)
{
        int i;
      for(i=1;i<=N;i++)

        a[i]=Nv[i].Luong;
}
void quicksort(NhanVien Nv[],int a[],int  left,int right)
{
        int i,j;
        NhanVien t;
        if (left<right)
        {
                i=left+1;j=right;
                do{
                        while ((a[i]<=a[left]) and (i<=right)) i++;
                        while (a[j]>a[left]) j--;
                if (i<j)
                {
                        t=Nv[i];Nv[i]=Nv[j];Nv[j]=t;

                }

                }while (i<j);
             t =Nv[left];Nv[left]=Nv[j];Nv[j]=t;
             if (left<j-1) quicksort(Nv,a,left,j-1);
             if (j+1<right) quicksort(Nv,a,j+1,right);
        }
}
void Sapxep(NhanVien Nv[],int a[],int N)
{
        int i,j;

        printf("\nDanh sach Nhan vien sau khi sap xep la: ");
        printf("\n|       Ten      |   Tuoi  |            Dia chi           |    Luong   | SGL |");
        printf("\n|----------------|---------|------------------------------|------------|-----|");
       for(i=1;i<=N;i++)

        {

        printf("\n|%16s|%9d|%30s|%12d|%5d|",Nv[i].Ten,Nv[i].Tuoi,Nv[i].DiaChi,Nv[i].Luong,Nv[i].TongGioLam);
        printf("\n|----------------|---------|------------------------------|------------|-----|");
        }
}



int main()
{
        int i,N;
int a[50];

        NhanVien Nv[50];

nhapDuLieu(Nv,&N);
xuatDuLieu(Nv,N);
laydulieu(Nv,a,N);

quicksort(Nv,a,1,N);
Sapxep(Nv,a,N);
getch();

}

Format code lại bạn ơi rồi hỏi gì thì hỏi.

4 Likes

dạ được rồi ạ
cảm ơn pro nha

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?