在线编译器 C

#include <stdio.h> int main() { int a[10]; int sum=0; int i; for(i=0;i<10;i++){ scanf("%d",&a[i]); } for(i=0;i<10;i++){ if(a[i]>0){ sum=sum+a[i]; } } printf("%d",sum); return 0; }
这段代码的功能是:读取10个整数存入数组,然后计算其中所有正数的和,最后输出这个和。

- 代码中缺少对输入是否成功的检查。如果用户输入的不是整数,scanf会失败,数组元素可能未被正确赋值。
- 变量sum的初始值设为0是正确的,但可以考虑在循环中直接累加,不需要先存储所有元素再处理。不过当前写法也是可行的。