有两个疑问
NO.1
#include<iostream>
using namespace std;
struct student{
string name;
int age,mark;
}a[6];
int main()
{
int n,i;
cin>>n;
for(i=1;i<=n;i++)
cin>>a[i].name>>a[i].age>>a[i].mark,
a[i].age++,a[i].mark*=1.2,a[i].mark=a[i].mark<=600?a[i].mark:600,
cout<<a[i].name<<' '<<a[i].age<<' '<<a[i].mark<<endl;
}
样例的400乘以1.2之后就变成了479,但是全部AC???
NO.2
#include<iostream>
using namespace std;
struct student{
string name;
int age,mark;
}a[6];
void f(student a)
{
a.age++;
a.mark*=1.2;
if(a.mark>600)a.mark=600;
}
int main()
{
int n,i;
cin>>n;
for(i=1;i<=n;i++)
cin>>a[i].name>>a[i].age>>a[i].mark,
cout<<a[i].name<<' '<<a[i].age<<' '<<a[i].mark<<endl;
}
输入和输出是一样的,涉及结构体的函数该怎么写?