| 
 | 
 
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册  
 
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)少了左大括号。仔细检查一下。还有就是换行是不是英文的换行。 
 
 
 |   
 
 
 
 |