函数的参数问题struct EngineerStruct //声明存储工程师信息的结构体 { unsigned int EngineerNo; //工程师编号 char EngineerName[20]; //工程师姓名 enum Sex EngineerSex; //工程师性别 struct DateStruct Engin

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/12 07:07:21
函数的参数问题struct EngineerStruct  //声明存储工程师信息的结构体    {  unsigned int EngineerNo;   //工程师编号  char EngineerName[20];    //工程师姓名  enum Sex EngineerSex;   //工程师性别  struct DateStruct  Engin

函数的参数问题struct EngineerStruct //声明存储工程师信息的结构体 { unsigned int EngineerNo; //工程师编号 char EngineerName[20]; //工程师姓名 enum Sex EngineerSex; //工程师性别 struct DateStruct Engin
函数的参数问题
struct EngineerStruct //声明存储工程师信息的结构体
{
unsigned int EngineerNo; //工程师编号
char EngineerName[20]; //工程师姓名
enum Sex EngineerSex; //工程师性别
struct DateStruct EngineerBirth; //工程师生日
char EngineerHometown[10]; //工程师籍贯
unsigned int EngineerEducation; //工程师学历
char EngineerAddress[30]; //工程师地址
char EngineerPhone[15]; //工程师电话
unsigned int EngineerWorkYears; //工程师工龄
float EngineerBaseSalary; //工程师基本薪水
};
int InputEngineerNo(struct EngineerStruct Engineer[].EngineerNo,int i)//这里的参数怎么填写?
{
printf("请输入工程师的编号");
scanf("%d",&i);
if(DataNo[i]==1)//DataNo测试编号是否重复
{
printf("此编号已存在请重新输入");
InputEngineerInformation();
}
else
{
DataNo[i]=1;//DataNo标记编号已使用
Engineer[i].EngineerNo=i;
}
return 0;
}
int InputEngineerInformation(struct EngineerStruct Engineer[])
{
int i;

InputEngineerNo(Engineer[i].EngineerNo,i);
}
最后那段写错了,应该是
int InputEngineerInformation(struct EngineerStruct Engineer[])
{
int i;

//编号输入
InputEngineerNo();
}

函数的参数问题struct EngineerStruct //声明存储工程师信息的结构体 { unsigned int EngineerNo; //工程师编号 char EngineerName[20]; //工程师姓名 enum Sex EngineerSex; //工程师性别 struct DateStruct Engin
这样写就可以了:
"int InputEngineerNo(EngineerStruct Engineer[],int i)“
这种写法等同于:
"int InputEngineerNo(EngineerStruct *Engineer,int i)”
对于C的编译起来说都等同于得到了一个EngineerStruct数组的头指针.