在编译的时候会提示你错误,要把逗号改成分号。
逻辑错误:没有错误提示,能运行,但是达不到自己想要的结果。
1.在函数:intEnterScore
(
int
P_array[]
)定义中:
DO循环中:scanf
(
"%d"
,
P_array[count]
)
语句
有错误,应为:scanf
(
"%d"
,
&P_array[count]
)
2.在函数:int
EnterScore
(
int
P_array[]
)定义中:
DO循环容易造成数组下标越界。如果你在前80个成绩输入
中都没有输入-1的话就会访问到P_array[80]这个元素,
但是实际上该数组最大的元素为:P_array[79],这会
破坏内存,甚至引起操作系统的崩溃。
3.在函数:void
find
(
int
P_array[]
,
int
count
)
定义中,如果传入的数据:count大于数组的总元素个
数并且没有满足for语句中的if条件的数据时,
也会发生第2点的错误。
从代码本身以及运行的情况来看,可执行程序的内容,与所贴的代码不相符(可能是修改了代码后没有重新编译,就运行了修改前的代码,不然也不会代码现在有错误就能编译通过的,例如第2行的末尾多了“op”,“现有1人捐款”也没有输出),修改建议如图: