一、问题及代码
/* * 文件名称: c.cpp * 作 者: 任琦璇 * 完成日期: 2017 年 5 月 5 日 * 版 本 号:v1.0 * 对任务及求解方法的描述部分: * 输入描述: 从键盘中输入10个数 * 问题描述: 从键盘中输入10个数放入数组a,求a数组中正数和负数的和 * 程序输出: a数组中正数和负数的和 * 问题分析: 引用数组 * 算法设计: 使用for循环和数组 */ #include <iostream> using namespace std; int main() { int i,j=0,k=0,sum1=0,sum2=0,a[10],b[10],c[10]; for(i=0;i<10;i++) cin>>a[i]; for(i=0;i<10;i++) { if (a[i]>0) b[j++]=a[i]; if (a[i]<0) c[k++]=a[i]; } for(i=0;i<j;i++) sum1=sum1+b[i]; for(i=0;i<k;i++) sum2=sum2+c[i]; cout<<"所有正数的和为"<<sum1<<endl; cout<<"所有负数的和为"<<sum2<<endl; return 0; }
二、运行结果
三、心得体会
编写程序的时候,忘记了对sum1和sum2设置初始值,后来找到了问题,成功克服。
四、知识点总结
由于给全部元素赋值时只能逐个赋值。故从键盘中输入十个数时,使用到了for循环,使其放入数组a中。
采用数组,可使处理类似问题更加方便。