数组求和

prog1

数组求和并没有难度,重点就是如何在程序中读取文件里的数据。我上网百度了才了解了文件流fstream函数的用法。自己尝试着读取csv文件数据时答案总是错误的,参观了别的同学的博客才发现他们是把A列数据单独导出保存为txt再读取的,照做了之后果然成功了,虽然不是全部靠自己的努力做出来的,但是依然很高兴。参观同学的博客时也发现了一个小问题,就是有些人在读取数据之后没有调用close函数将文件关闭,这样会造成内存的占用,虽然只是一点点的内存。

数组求和

#include<iostream>
#include<fstream>
using namespace std;
int main(void)
{
 int a[100];
 int i=0;
 int sum=0;
  ifstream fin("d:\shuju.txt");
  if(!fin)
  {cout<<"不能打开文件n";}
for(i=0;fin>>a[i],i<100;i++)
{ sum+= a[i];}
  fin.close();
 cout<<sum<<endl;
 return 0;
}

prog2

这个程序和第一个没什么区别,就是多了函数的定义和调用,还好我的c++书没有扔掉,又复习了一遍函数的内容。

数组求和数组求和数组求和

#include<iostream>
#include<fstream>
using namespace std;
 ArraySum(int i)
{
 int *a=new int[i];
 int sum=0;
 int n=0;
  ifstream fin("d:\shuju2.txt");
  if(!fin)
  {cout<<"不能打开文件n";}
for(n=0;fin>>a[n],n<i;n++)
{ sum+= a[n];}
  fin.close();
return sum;
}
int main(void)
{int i;
cout<<"输入数组长度"<<endl;
cin>>i;
cout<<"长度为"<<i<<"的数组和为"<<ArraySum(i)<<endl;
return 0;
}

prog3

同样,没有大的区别,只是多了个范围限制条件和数组的动态内存申请。

数组求和

#include<iostream>
#include<fstream>
using namespace std;

ArraySum(int bottom,int top,int i )
{
int sum=0;
int n;
int *a=new int[n];
ifstream fin("d:\shuju2.txt");
 if(!fin)
  {cout<<"不能打开文件n";}
for(n=0;fin>>a[n],n<i;n++)
{if(bottom<=a[n]&&top>=a[n])
sum+=a[n];
}
fin.close();
return sum;
}

int main()
{
int top,bottom;
cout<<"输入top:";
cin>>top;
cout<<"输入bottom:";
cin>>bottom;
int i;
cout<<"输入数组长度为:";
cin>>i;
cout<<"数组和为"<<ArraySum(bottom,top,i)<<endl;
}

我觉得这次作业让我对于c++一些基础知识又加深了印象,主要就是学会了文件流的一些简单用法。实践是检验我们掌握了多少知识的唯一真理。

https://github.com/liuxiangLX
原文链接: https://www.cnblogs.com/LXliu/p/5255119.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/229907

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月13日 下午2:28
下一篇 2023年2月13日 下午2:28

相关推荐