|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
#include <iostream>
using namespace std;
#include <string >
struct free_throws
{
std::string name;
int made;
int attempts;
float percent;
};
void display(const free_throws & ft);
void set_pc(free_throws & ft);
free_throws & accumulate(free_throws & target, const free_throws & source);
int main()
{
//partial initializations - remaining members set to 0
free_throws one = {"Ifelsa Branch", 13, 14};
free_throws two = {"Andor Knott", 10, 16};
free_throws three = {"MInnie Max", 7, 9};
free_throws four = {"Whily Looper", 5 ,9};
free_throws five = {"Long Long", 6, 14};
free_throws team = {"Therowgoods", 0, 0};
// no initialization
free_throws dup;
set_pc(one);
display(one);
accumulate(team,one);
display(team);
display(accumulate(team, two));
accumulate(accumulate(team, three), four);
display(team);
dup = accumulate(team, five);
std::cout << "Displaying team:\n";
display(team);
std::cout << "Display dup after assignment:\n";
display(dup);
set_pc(four);
accumulate(dup, five ) = four;
std:: cout << "Displaying dup after ill_advised assignment:\n";
display(dup);
return 0;
}
void display(const free_throws & ft)
cout << "Name: " << ft.name << '\n';
cout << " Made: " << ft.made << '\t';
cout << "Attempts: " << ft.attempts << '\t';
cout << "Percent: " << ft.percent << '\n';
}
void set_pc(free_throws & ft)
if(ft.attempts !=0)
ft.percent = 100.0f *float(ft.made)/float(ft.attempts);
else
ft.percent = 0;
}
free_throwes & accumulate(free_throws & target, const free_throws & source)
{
target.attempts += source.attempts;
target.made += source.made;
set_pc(target);
return target;
}
很明显你的代码没有复制完,还有就是格式不对。看一下有没有非法字符。这个函数void display(const free_throws & ft)和 void set_pc(free_throws & ft)少了左大括号。仔细检查一下。还有就是换行是不是英文的换行。
|
|