C++循环体中的局部变量怎样在每次循环后内存清零,进行下次循环的时候再重新赋值 5

在做一道题依次输入每个人的名字然后输入成绩,每个名字后面都跟着每个人的成绩,不是把人名输完再输成绩。然后要求统计每个人几次成绩的和,依次输出每个人姓名以及他们的总成绩。这... 在做一道题
依次输入每个人的名字然后输入成绩,每个名字后面都跟着每个人的成绩,不是把人名输完再输成绩。
然后要求统计每个人几次成绩的和,依次输出每个人姓名以及他们的总成绩。这个怎么做?
#include
#include
#include
using namespace std;
int main()
{
int r; vector name;
cout<<"人数:";
cin>>r;
int *sum = new int[r];
int p=0;int w=0;
while(w!=r)
{
typedef vector::size_type longing;
cout<<"姓名:";
int count=-1;

string n;

while (cin>>n) {
name.push_back(n);
count++;
p++;
cout << "请输成绩:";
int x;

vector<int> grades;
typedef vector<double>::size_type longing;
while (cin>>x)
{
grades.push_back(x);
}
int Sum=0;
longing l=grades.size();
for(int i=0;i!=l;i++)
{

Sum=grades[i]+Sum;
if (i==l-1) {
int e=count;
sum[e]=Sum;

}

}
}
w++;
}
for (int i=0;i!=r;i++) {

cout<<name[i]<<" "<<sum[i]<<endl;
}
delete [ ] sum;

return 0;
}
第二次循环的时候n还是第一次输入的名字,这个怎么办
如何在一次循环结束的时候把n变成新的n在重新让用户给它输入赋值?
展开
 我来答
arongustc
科技发烧友

2015-12-14 · 智能家居/数码/手机/智能家电产品都懂点
知道大有可为答主
回答量:2.3万
采纳率:66%
帮助的人:5965万
展开全部
你说的是哪个循环?你的循环这么多
如果你要确保变量重新初始化,就在循环结束赋值为空
更多追问追答
追问

while(cin>>n)的循环,我试着清空了n,但是第二次循环的时候没法再次cin姓名重新给n赋值,最终执行结果是

怎样做到这种:

人数:xx

姓名:xx

成绩:xx

姓名:xx

成绩:xx·············


最后输出:

xx      成绩和

yy      成绩和·····

我是说的while(cin>>n)后面的循环
循环最后初始化n后,还是运行了一次就结束了:

怎样做到循环输入,像是
人数:
姓名:xx
成绩:````
姓名:yy
成绩:```
·······
不断让用户输入:
最后输出:
xx 100

yy 299
这种?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式