任何想法......? 例如,
int a[50],b; // b is for getting the input Yes or maybe no
while(b=='Y')
{cin>>a[i];i++;cin>>b;}
并且说用户输入了25个元素。现在我必须使用一个功能,该功能应该仅数组和大小作为参数... 我将如何计算用户在函数内输入的元素数量..? 在这种情况下,输出应为25。
答案 0 :(得分:3)
您可以使用std::list
或std::vector
来实现此目的。
答案 1 :(得分:0)
您最好使用计数器变量以及随每个条目递增的用户输入。然后你只需循环遍历数组中的那么多索引
int counter = 0;
int a[50];
// collect input, counter++ each time
for(int i = 0; i < counter; i++)
cout << a[i];
使用矢量会好得多。它们会自动调整大小,因此您可以使用随附的size()函数
来打印整个内容答案 2 :(得分:-1)
使用计数器变量计算数组元素的数量。
例如:
此处数组大小为50
,但元素数量为10
。
#include<stdio.h>
int main()
{
int i,cnt = 0;
int arr[50] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10};
for (i = 0; arr[i] != '\0'; i++)
{
cnt++;
}
printf("%d\n",cnt);
}