#include "stdafx.h"
#include "iostream.h"
struct record
{ int id;
char name[20];
char sex[20];
int grade;
}student[50];
void main(void)
{
int i=1,j=0,n=0;
int end;
int *P;
int max=0;
for(i=1;end!=1;i++,j++)
{
cout<<"输入考生号:"<<endl;
cin>>student[j].id;
cout<<"输入姓名:"<<endl;
cin>>student[j].name ;
cout<<"输入性别(女性用f,男性用m):"<<endl;
cin>>student[j].sex ;
cout<<"输入成绩:"<<endl;
cin>>student[j].grade;
if(student[j].sex=f)
if(max<*p){max=*p;}
cout<<"按0继续,按1完成。"<<endl;
cin>>end;
n++;
}
cout<<"按0输出,按1退出。"<<endl;
cin>>end;
if(end==0)
{
cout<<"学生数据:"<<endl;
for(i=0;i<n;i++)
{
cout<<"考生号:"<<student[i].id<<endl;
cout<<"姓名:"<<student[i].name<<endl;
cout<<"性别:"<<student[i].sex<<endl;
cout<<"成绩:"<<student[i].grade<<endl;
cout<<"女生最高分:"<<max<<endl;
}
}
}
好不容易写了这么多行,没想到却错了6个地方!!!!!!!
高手帮看看到底错在哪啦要求的是输出女生中最高的成绩
#include "iostream.h"
struct record
{ int id;
char name[20];
char sex[20];
int grade;
}student[50];
void main(void)
{
int i=1,j=0,n=0;
int end;
int *P;
int max=0;
for(i=1;end!=1;i++,j++)
{
cout<<"输入考生号:"<<endl;
cin>>student[j].id;
cout<<"输入姓名:"<<endl;
cin>>student[j].name ;
cout<<"输入性别(女性用f,男性用m):"<<endl;
cin>>student[j].sex ;
cout<<"输入成绩:"<<endl;
cin>>student[j].grade;
if(student[j].sex=f)
if(max<*p){max=*p;}
cout<<"按0继续,按1完成。"<<endl;
cin>>end;
n++;
}
cout<<"按0输出,按1退出。"<<endl;
cin>>end;
if(end==0)
{
cout<<"学生数据:"<<endl;
for(i=0;i<n;i++)
{
cout<<"考生号:"<<student[i].id<<endl;
cout<<"姓名:"<<student[i].name<<endl;
cout<<"性别:"<<student[i].sex<<endl;
cout<<"成绩:"<<student[i].grade<<endl;
cout<<"女生最高分:"<<max<<endl;
}
}
}
好不容易写了这么多行,没想到却错了6个地方!!!!!!!
高手帮看看到底错在哪啦要求的是输出女生中最高的成绩
Conversion from integral type to pointer type requires reinterpret_cast, C-style cast or function-style cast
C:\Program Files\Microsoft Visual Studio\MyProjects\33333\33333.cpp(27) : error C2040: '==' : 'char [20]' differs in levels of indirection from 'const int'
C:\Program Files\Microsoft Visual Studio\MyProjects\33333\33333.cpp(28) : error C2677: binary '<' : no global operator defined which takes type 'struct record' (or there is no acceptable conversion)
C:\Program Files\Microsoft Visual Studio\MyProjects\33333\33333.cpp(28) : error C2065: 'p' : undeclared identifier
C:\Program Files\Microsoft Visual Studio\MyProjects\33333\33333.cpp(28) : error C2100: illegal indirection
Error executing cl.exe.
int i=1,j=0,n=0;
int end;
int *p = 0;
int max=0;
char *SEX = "男";
for(i=1;end!=1;i++,j++)
{
cout<<"输入考生号:"<<endl;
cin>>student[j].id;
cout<<"输入姓名:"<<endl;
cin>>student[j].name ;
cout<<"输入性别(女性用f,男性用m):"<<endl;
cin>>student[j].sex ;
cout<<"输入成绩:"<<endl;
cin>>student[j].grade;
if(student[j].sex == SEX)
{
if(max<*p)
{
max=*p;
}
}
C:\Program Files\Microsoft Visual Studio\MyProjects\33333\33333.cpp(30) : error C2100: illegal indirection
Error executing cl.exe.
还有这两个错误啊
错在哪里呀,好头痛
{
max=*p;
}
改成这样的话有三个错误
你的*p 是野指针 应该是NULL吧
你怎么样 也要给人家一个直吧
就newy 一个 好了