C++ 很急很急啊 程序给好了,加注释就行,拜托了~

使用STL模板中的list对象,定义了一个对象来表示多项式的因子,然后用list完成合并,得到合并后的多项式。以下是部分程序,请给每一句都加注释,拜托了~voidComb... 使用STL模板中的list对象,定义了一个对象来表示多项式的因子,然后用list完成合并,得到合并后的多项式。以下是部分程序,请给每一句都加注释,拜托了~

void Combine::printlist() // 按低位->高位的形式输出list内容

{
list<int>::iterator it = lis.begin();
int c = 0;
for(;it!=lis.end();it++){
if(c == 0)
cout<<*it<<ch<<"^"<<c++;
else
cout<<" + "<<*it<<ch<<"^"<<c++;
}
cout<<endl;
}
Combine pluslist(Combine &x1,Combine &x2)
{ list<int> lse = x1.lis;
list<int> rse = x2.lis;
typedef list<int>::iterator p_iter;
list<int>temp;// 存储和值
int lenl = lse.size();
int lenr = rse.size();
// 若rse比lse长,先把lse长度求和到temp,然后把rse剩下的内容赋值给temp
if(lenl < lenr){
p_iter rit = rse.begin();
for(p_iter lit = lse.begin();lit != lse.end();lit++)
{
temp.push_back(*lit + *rit);
rit++;
}
for(;rit != rse.end();rit++)
temp.push_back(*rit);
}
// 若lse比rse长,先把rse长度求和到temp,然后把lse剩下的内容赋值给temp
else{p_iter lit = lse.begin();
for(p_iter rit = rse.begin();rit != rse.end();rit++)
{ temp.push_back(*lit + *rit);
lit++;}
for(;lit != lse.end();lit++)
temp.push_back(*lit);}
return;}
展开
 我来答
ring_year
2014-12-07 · TA获得超过1425个赞
知道小有建树答主
回答量:632
采纳率:80%
帮助的人:538万
展开全部
void Combine::printlist() // 按低位->高位的形式输出list内容

{
    list<int>::iterator it = lis.begin();// 元素起始指针
    int c = 0;// 设置c=0
    for(;it!=lis.end();it++){// 输出每个元素(遍历到最后)
        if(c == 0)// 第一次输出时
            cout<<*it<<ch<<"^"<<c++; // ch应该是全局变量
        else // 非第一次输出,区别在于会多输出一个"+"
            cout<<" + "<<*it<<ch<<"^"<<c++; 
    }
    cout<<endl;// 换行
}
Combine pluslist(Combine &x1,Combine &x2)
{ list<int> lse = x1.lis; // 定义临时变量lse,赋值x1.lis(left side element)
    list<int> rse = x2.lis; // 定义临时变量rse,赋值x2.lis(right side element)
    typedef list<int>::iterator p_iter;// 名字重定义
    list<int>temp;// 存储和值
    int lenl = lse.size();
    int lenr = rse.size();
    // 若rse比lse长,先把lse长度求和到temp,然后把rse剩下的内容赋值给temp
    if(lenl < lenr){// 左边的list比右边的list短
        p_iter rit =  rse.begin();
        for(p_iter lit = lse.begin();lit != lse.end();lit++)// 在左边的长度下把两者的和值放入temp list中,
        {
            temp.push_back(*lit + *rit);
            rit++;
        }
        for(;rit != rse.end();rit++)// 把right list长出的一部分也放入temp list中
            temp.push_back(*rit);
    }
    // 若lse比rse长,先把rse长度求和到temp,然后把lse剩下的内容赋值给temp
    else{p_iter lit = lse.begin();
        for(p_iter rit = rse.begin();rit != rse.end();rit++)// 直到rse的end,把lse和rse的元素对应相加添加到temp中
        { temp.push_back(*lit + *rit);
            lit++;}
        for(;lit != lse.end();lit++)// 把lse长出的一部分也放入temp list中。
            temp.push_back(*lit);}
    return;}// 返回空
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式