Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ 如何在c++;_C++_Arrays_Loops_If Statement_For Loop - Fatal编程技术网

C++ 如何在c++;

C++ 如何在c++;,c++,arrays,loops,if-statement,for-loop,C++,Arrays,Loops,If Statement,For Loop,我有一个特定大小的数组(例如100),其中填充了用户输入。但是,用户可能不需要输入足够的数据来填充整个数组 我想计算用户输入的数组的元素。我该怎么做 我尝试了这个for循环: int COUNT=0; for( int i=0; i<size; i++) if (Student[i]=1) //which means this element is true, not empty element. COUNT++; cout<< COUNT+1 <

我有一个特定大小的数组(例如100),其中填充了用户输入。但是,用户可能不需要输入足够的数据来填充整个数组

我想计算用户输入的数组的元素。我该怎么做

我尝试了这个for循环:

int COUNT=0;
for( int i=0; i<size; i++)
    if (Student[i]=1) //which means this element is true, not empty element.
        COUNT++;
cout<< COUNT+1 << "\n";
例如,输入为:

Students=[8347,Islam Said,(ARC135,ARC114,ARC134,ARC135);8256,Esraa Said,(ARC134,ARC135,ARC114);8336,Ismail Said,(ARC134,ARC135,ARC114);8285,Ismail Adballah,(ARC114,ARC135,ARC134,ARC114);8349,Esraa Kassem,(ARC135,ARC114,ARC134);8505,Bassant Kassem,(ARC114,ARC135,ARC134,ARC114);8381,Ismail Kassem,(ARC135,ARC134,ARC114,ARC135);8360,Bassant AbdAlrahman,(ARC114);8498,Mohamed Kamal,(ARC135,ARC114,ARC134);8255,Ali Bassem,(ARC114,ARC135);8437,Mohamed Said,(ARC135);8524,Osama Adballah,(ARC114,ARC135);8334,Osama Kamal,(ARC114,ARC135,ARC134);8501,Esraa Tarek,(ARC135,ARC134);8394,Ahmed Zain,(ARC134,ARC135)]

输入不是常量,这只是一个示例。

if
语句中,您分配的是一个值,而不是检查它

试一试

尝试
sizeof(数组)/sizeof(数组[0])

在C++中总是使用<代码> STD::vector < /代码>。有几个内置函数和一个扩展函数

std::vector
有一个方法
size()


(是的,这是开玩笑的回答)

s/if(Student[i]=1)/if(Student[i]=1)/
-同样出于对所有体面的热爱,请启用编译器警告并注意它们(例如,
gcc-Wall…
)。如果您不知道用户将输入多少元素,请使用
std::vector
。首先,启用更多编译器警告。然后,按照中的说明,在所有调试问题中包含一个完整且清晰的问题陈述。最后:请每个问题问一个问题。
但是这个代码有错误,错误是什么?
你告诉我们。如果你不知道错误在哪里,你怎么知道有错误呢?发布一个完整的例子!学生[]是如何定义的?它是如何初始化的?用户如何输入数据?没有这些信息,我们真的帮不了你。似乎很多程序员已经准备好帮助编写代码了,你就是不让他们这么做。。。但还是有一个错误!学生变量是字符串数组。你们不能将字符串和整数进行比较。你们能写一个代码来解释更多吗?OP不想知道数组的大小,他想知道输入了多少个元素。另外,C++的代码不应使用<<代码> <代码> >解决方案。它是不安全的,可能会给出错误的结果,模板解决方案更优越。@Revolver\u Ocelot它是如何不安全的
sizeof(array)/sizeof(array[0])
将始终提供数组的大小。@Revolver\u Ocelot那么它不是数组而是指针。不过,在数组中使用它总是安全的。@Revolver\u Ocelot这是语言教学的一个问题。指针和数组是两种不同的东西,应该让新生们完全清楚。数组退化为指针的情况,详细说明了这一点,以便新程序员了解按值传递数组的陷阱。
Students=[8347,Islam Said,(ARC135,ARC114,ARC134,ARC135);8256,Esraa Said,(ARC134,ARC135,ARC114);8336,Ismail Said,(ARC134,ARC135,ARC114);8285,Ismail Adballah,(ARC114,ARC135,ARC134,ARC114);8349,Esraa Kassem,(ARC135,ARC114,ARC134);8505,Bassant Kassem,(ARC114,ARC135,ARC134,ARC114);8381,Ismail Kassem,(ARC135,ARC134,ARC114,ARC135);8360,Bassant AbdAlrahman,(ARC114);8498,Mohamed Kamal,(ARC135,ARC114,ARC134);8255,Ali Bassem,(ARC114,ARC135);8437,Mohamed Said,(ARC135);8524,Osama Adballah,(ARC114,ARC135);8334,Osama Kamal,(ARC114,ARC135,ARC134);8501,Esraa Tarek,(ARC135,ARC134);8394,Ahmed Zain,(ARC134,ARC135)]
if (Student[i] == 1)