01/10/2018, 01:12
Em code đoạn code như sau sử dụng struct nhưng có lỗi primary-expression mà e k biets phải sửa thế nào mọi người giúp em với
#include <iostream>
#include <cstring>
using namespace std;
struct subject
{
float math;
float eng;
float dev;
};
struct date
{
int day;
int month;
int year;
};
struct student
{
char code[10];
char name[100];
char rank[10];
date d;
subject sub;
};
student s[5];
void input( student s[])
{
for(int i=0;i<4;i++)
{
cout<<"Add student's "<<i+1<<" code: ";
cin>>s[i].code;
cout<<"Add student's "<<i+1<<" name: ";
cin.ignore();
cin.getline(s[i].name,100);
cout<<"Add student's "<<i+1<<" date of birth: ";
cin>>s[i].d.day;
cin>>s[i].d.month;
cin>>s[i].d.year;
cout<<"Add student's "<<i+1<<" math mark: ";
cin>>s[i].sub.math;
cout<<"Add student's "<<i+1<<" english mark: ";
cin>>s[i].sub.eng;
cout<<"Add student's "<<i+1<<" programming mark: ";
cin>>s[i].sub.dev;
}
}
void output( student s[])
{
float avg;
cout<<" "<<"-----Information List-----"<<endl;
cout<<"STT"<<" "<<"Ma sinh vien "<<" "<<"Ho va ten "<<" "<<"Ngay thang nam sinh "<<" "<<"Diem Toan"<<" "<<"Diem Anh"<<" "<<"Diem Code"<<"Diem trung binh"<<" "<<"Xep loai"<<"
";
for(int i=0;i<4;i++)
{
avg=(s[i].sub.math+s[i].sub.eng+s[i].sub.dev)/3;
if(avg>=8);
{
strcpy(s[i].rank,"Gioi");
cout<<i+1<<" "<<s[i].code<<" "<<s[i].name<<" "<<s[i].d.day<<" "<<s[i].d.month<<" "<<s[i].d.year<<" "<<s[i].sub.math<<"/t"<<s[i].sub.eng<<" "<<s[i].sub.dev<<" "<<avg<<" "<<s[i].rank<<"
";
}
if(avg<8 && avg>=6)
{
strcpy(s[i].rank,"Kha");
cout<<i+1<<" "<<s[i].code<<" "<<s[i].name<<" "<<s[i].d.day<<" "<<s[i].d.month<<" "<<s[i].d.year<<" "<<s[i].sub.math<<"/t"<<s[i].sub.eng<<" "<<s[i].sub.dev<<" "<<avg<<" "<<s[i].rank<<"
";
}
if(avg<6 && avg>=3)
{
strcpy(s[i].rank,"TB");
cout<<i+1<<" "<<s[i].code<<" "<<s[i].name<<" "<<s[i].d.day<<" "<<s[i].d.month<<" "<<s[i].d.year<<" "<<s[i].sub.math<<"/t"<<s[i].sub.eng<<" "<<s[i].sub.dev<<" "<<avg<<" "<<s[i].rank<<"
";
}
if(avg<3)
{
strcpy(s[i].rank,"Yeu");
cout<<i+1<<" "<<s[i].code<<" "<<s[i].name<<" "<<s[i].d.day<<" "<<s[i].d.month<<" "<<s[i].d.year<<" "<<s[i].sub.math<<"/t"<<s[i].sub.eng<<" "<<s[i].sub.dev<<" "<<avg<<" "<<s[i].rank<<"
";
}
}
}
int main()
{
input( student s);
output( student s);
return 0;
}
Bài liên quan
Lỗi này hình như mình cũng gặp rồi. Bạn chưa deftype struct mà đã sử dụng nên vậy. Giờ đang on ĐT nên ko sửa cho bạn dc.
Trong C++ ko ghi “struct T x” nữa nhé.