求助,增加一段c++输出程序,多谢了

quanminfeng 2009-06-26 10:17:17
将源程序取名为cd36.cpp,程序中使用的数据皆放在文件名为data.txt中,并使用C++读取文件的方式输入程序中需要的数据,最后程序运行的结果同时以2种方式输出:①屏幕显示方式和②文件的形式存放在文件名为result.txt中,以上3个文件皆放在学号姓名文件夹下,供阅读、运行使用。
#include <string>
#include <memory>
#include <iostream>
using namespace std;

class ARR
{
private:
int n; //数组实际元素个数。
int a[100]; //存放数组元素。
int b[100]; //存放整型数组a中为素数的元素。
int nprime; //存放整型数组a中素数的个数。

public:
/*构造函数,用参数size初始化n,用参数数组x初始化a数组,将nprime初始化为0。*/
ARR( int x[], int size ) :nprime(0),n(size)
{
memset(a,0,sizeof(int)*100);
memset(b,0,sizeof(int)*100);

for (int i=0;i <size;i++)
{
a[i] = x[i];
}
};
// 判断整数x是否为素数,若是素数返回1,否则返回0
int Prime ( int x )
{
for (int i = 2;i < x; i++)
{
if (x%i == 0)
{
return 0;
}
}

return 1;
};
//求整型数组中所有为素数的元素和素数的个数。
void Fun( )
{
for (int i =0;i <n;i++)
{
if(Prime(a[i]))
{
b[nprime] = a[i];
nprime += 1;
}
}
};
void Show( )
{
for (int i = 0; i <n && i < nprime; i++)
{
cout <<b[i];
cout <<" ";
if (i % 5 == 0 && i != 0)
{
cout << endl;
}
}

cout << endl << "nprime = " << nprime<< endl;
};// 将数组b以每行5个数的形式输出到屏幕上,同时输出数组中素数的个数。
};

int main()
{
int a[] = {13, 14, 15, 16, 17, 18, 19, 20, 21, 22};
ARR at(a,sizeof(a)/sizeof(int));
at.Fun();
at.Show();
return 0;
}
...全文
51 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
lpf000 2009-06-26
  • 打赏
  • 举报
回复
就像将结构体写入差不多
lpf000 2009-06-26
  • 打赏
  • 举报
回复
int n; //数组实际元素个数。
int a[100]; //存放数组元素。
int b[100]; //存放整型数组a中为素数的元素。
int nprime; //存放整型数组a中素数的个数。
再将这些数据写入文件?
llaomao 2009-06-26
  • 打赏
  • 举报
回复
只是个文件操作 楼主看看书也就明白了
别逗我乐 2009-06-26
  • 打赏
  • 举报
回复
#include <string>
#include <memory>
#include <iostream>
#include <fstream>
using namespace std;
class ARR
{
private:
int n; //数组实际元素个数。
int a[100]; //存放数组元素。
int b[100]; //存放整型数组a中为素数的元素。
int nprime; //存放整型数组a中素数的个数。

public:
/*构造函数,用参数size初始化n,用参数数组x初始化a数组,将nprime初始化为0。*/
ARR( int x[], int size ) :nprime(0),n(size)
{
memset(a,0,sizeof(int)*100);
memset(b,0,sizeof(int)*100);

for (int i=0;i <size;i++)
{
a[i] = x[i];
}
};
// 判断整数x是否为素数,若是素数返回1,否则返回0
int Prime ( int x )
{
for (int i = 2;i < x; i++)
{
if (x%i == 0)
{
return 0;
}
}

return 1;
};
//求整型数组中所有为素数的元素和素数的个数。
void Fun( )
{
for (int i =0;i <n;i++)
{
if (Prime(a[i]))
{
b[nprime] = a[i];
nprime += 1;
}
}
};
void Show(fstream &outfile)
{
for (int i = 0; i <n && i < nprime; i++)
{
cout <<b[i];
outfile<<b[i];
cout <<" ";
if (i % 5 == 0 && i != 0)
{
cout << endl;
outfile<<'\n';
}
}
outfile<<'\n'<<"nprime = " <<nprime<<'\n';
cout << endl << "nprime = " << nprime << endl;
};// 将数组b以每行5个数的形式输出到屏幕上,同时输出数组中素数的个数。
};

int main()
{
int a[] = {13, 14, 15, 16, 17, 18, 19, 20, 21, 22};
ARR at(a,sizeof(a)/sizeof(int));
at.Fun();
fstream outfile("result.txt",fstream::out);
at.Show(outfile);
return 0;
}



好了,呵呵,楼主懂得变通,hehe

65,186

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧