For循环在cpp中只执行一次
Posted
技术标签:
【中文标题】For循环在cpp中只执行一次【英文标题】:For Loop Executing only once in cpp 【发布时间】:2019-11-17 06:55:28 【问题描述】:嘿,我正在尝试运行这段代码,但 for 循环只执行一次。 删除行 cout
int n,i;
cin>>n;
double a[n];
for(i=0;i<n;i++)
cin>>a[i];
a[i]=(a[i]/100);
cout<<fixed<<setprecision(15)<<a[i];
for(i=0;i<n;i++)
cout<<a[i];
【问题讨论】:
它对我有用!你确定你正在编译正确的文件吗? 见***.com/q/57367473/10957435 无耻的插件——但做得很好:)
【参考方案1】:
首要任务
使用可变长度数组 (VLA) 不是标准 C++。一些编译器支持它作为扩展。如果你被允许使用std::vector,
使用
std::vector<double> a(n);
如果不允许使用std::vector
,请使用
double* a = new double[n];
并确保使用
delete [] a;
在函数结束之前。
帮助您诊断问题的建议
在输入数据和消息之前添加适当的提示以指示所读取的内容。
for(i=0;i<n;i++)
cout << "Enter number for a[" << i << "]: ";
cin>>a[i];
a[i]=(a[i]/100);
// Make sure to add endl at the very end.
cout<< "Value of a[" << i << "]: " << fixed << setprecision(15) << a[i] << endl;
【讨论】:
以上是关于For循环在cpp中只执行一次的主要内容,如果未能解决你的问题,请参考以下文章
为什么switch在Javascript数组的for循环中只运行一次?