C&C++   发布时间:2022-04-03  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了循环遍历c中的数组大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我想循环遍历一个最大值为1000的数组.我使用文本文件中的值填充数组.我试图循环遍历该数组,但在我的for循环中,我不知道数组的长度,所以我不知道在for循环语句的第二部分放什么.例如:我有一个名为:int scores [1000]的数组;我正在尝试迭代这个数组并将分数放入成绩类别.因此A = 90-100,B = 80-89,C = 70-79,D = 60-69,F = 0-59.

所以我不知道我的for循环会是什么样子:

for(int i = 0; i < ...; i++){

if(scores[i] > = 90 || scores[i] <= 100){

//Do stuff...

}

我想我也很困惑如何在最后获得每个类别的总计数.但在大多数情况下,它如何迭代这个数组.我知道sizeof(scores [])不会工作,因为这会给我int大小而不是数组本身的长度.提前谢谢!

解决方法

如果使用std :: vector( link),则可以添加元素并使向量动态更改大小.可以使用size()方法轻松查询该大小.如果你使用这样的数组,你必须自己跟踪它中的元素数量.

如果你有一个带有元素的向量文件,你的循环可能如下所示:

std::vector<int> scores;
// fill vector

for (unsigned int i=0; i<scores.size(); i++) {
  // use value
}

如果你必须使用数组并且实际上有一个scoreCount变量,其中包含了实数值,只需在循环中使用它:

for (int i=0; i<scoreCount; i++) {
  // use value
}

正如我在评论中提到的,第三个选项是使用您从未使用的值(通常为-1)初始化整个数组,然后将其用作填充与空数组位置的标记,如下所示:

for (int i=0; i<1000; i++) {
    scores[i] = -1;
}

// add real values to scores 

int i=0;
while (scores[i] != -1 && i < 1000) {
  // use value
  i++;
}

大佬总结

以上是大佬教程为你收集整理的循环遍历c中的数组全部内容,希望文章能够帮你解决循环遍历c中的数组所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。