golf.h
#ifndef GOLF_H_INCLUDED
#define GOLF_H_INCLUDED
const int Len=40;
struct golf
{
char fullname[Len];
int handicap;
};
//non-interactive version
void setgolf(golf & g, const char * name, int hc);
//interactive version
int setgolf(golf & g);
void handicap(golf & g, int hc);
void showgolf(const golf & g);
#endif // GOLF_H_INCLUDED
golf.cpp
#include <iostream>
#include "golf.h"
#include <cstring>
using namespace std;
//non-interactive version
void setgolf(golf & g, const char * name, int hc)
{
strcpy(g.fullname,name);
g.handicap=hc;
}
//interactive version
int setgolf(golf & g)
{
cout<<"Please enter fullname:";
cin.getline(g.fullname,Len);
if(g.fullname[0]=='\0')
return 0;
else
{
cout<<"Please enter handicap:";
cin>>g.handicap;
cin.get();
}
return 1;
}
void handicap(golf & g, int hc)
{
g.handicap=hc;
}
void showgolf(const golf & g)
{
cout<<"fullname: "<<g.fullname<<endl;
cout<<"handicap: "<<g.handicap<<endl;
cout<<endl;
}
main.cpp
#include <iostream>
#include "golf.h"
#include <cstring>
const int ArSize=10;
using namespace std;
int main()
{
golf ann;
setgolf(ann,"Ann Birdfree",24);
showgolf(ann);
golf andy[ArSize];
int i=0;
while(i<ArSize)
{
if(!setgolf(andy[i]))
break;
i++;
}
i--;
if(andy[i].fullname=="")
handicap(andy[i],0);
//输出team数组的内容
cout<<endl;
for(i=0; i<ArSize && strlen(andy[i].fullname)!=0; i++)
showgolf(andy[i]);
return 0;
}