C++ .txt文件第一行输入数组大小,第二行为一维数组赋值 怎么做?

如题所述

直接写的,没有编译,你先试下,如果有问题可以追问。

#include <iostream>
using namespace std;

void main()
{
// 数组长度
int nLen;
// 从标准输入获得数组长度
cout <<"请输入数组长度:";
cin >>nLen;
// 定义动态数组
int *arInt = new int[nLen];
// 开始输入数组,用空格或者回车分隔均可
cout <<"请逐个输入数组元素,以空格或回车分隔: " <<endl;
for(int i=0; i<nLen; ++i) {
cin >>arInt[i];
}
// 输入完毕,现在我们在屏幕上打印数组信息
cout <<"以下是刚才输入的数组信息:" <<endl;
cout <<"数组大小:" <<nLen <<endl;
cout <<"数组元素为: " <<endl;
for(int i=0; i<nLen; ++i) {
cout <<arInt[i] <<", ";
}
// 别忘了删除数组,以免内存泄漏
delete arInt;
}追问

从.txt文件赋值

追答

/* txt的格式:第一行数组大小,第二行数组元素以空格分隔
10
0 1 2 3 4 5 6 7 8 9
*/

#include
#include
using namespace std;

int main()
{
// 把这里的文件名改成你电脑上的文件名
ifstream ifs("C:\\1.txt", ios::in);
if (!ifs) {
cerr >nLen;
// 定义动态数组
int *arInt = new int[nLen];
// 开始读入数组
for(int i=0; i>arInt[i];
}
// 关闭文件
ifs.close();
// 输入完毕,现在我们在屏幕上打印数组信息
cout <<"以下是刚才输入的数组信息:" <<endl;
cout <<"数组大小:" <<nLen <<endl;
cout <<"数组元素为: " <<endl;
for(int i=0; i<nLen; ++i) {
cout <<arInt[i] <<" ";
}
cout <<endl;
// 别忘了删除数组,以免内存泄漏
delete []arInt;

return 0;
}

std c++ 6编译通过。

温馨提示:内容为网友见解,仅供参考
第1个回答  2011-12-08
FILE *fi;
fi=fopen("a.txt","r");
if(fi==NULL)
return TRUE;
int num=0;
fscanf(fi,"%d %d\n",&num);
int *a=new int[num];

for(int i=0;i<num;i++)
{
fscanf(fi,"%d",&a[i]);
}

可否?

...数组从.txt文件赋值,文件第一行数组大小,第二行为数组赋值 how to...
int N;\/\/保存a.txt中的数字个数 int *pa=NULL;\/\/如果存放的不是整形,可在这换成你想要的数据类型 fstream file_in("c:\\\\a.txt");\/\/如果不在工程目录下,要用绝对路径 if(!file_in){ cerr<<"cannot open the a.txt file";return -1;} file_in>>N;pa=new int[N];\/\/申请动态...

C++二维数组给一维数组赋值
二维数组中的元素本身是连续存储的,如果要将二维数组连续的一组数据赋值给一维数组,可以直接调用memcpy函数。该函数声明在cstring中,形式为 void* memcpy(void *dst, void *src, size_t length);功能为将src地址上,长度为length字节的数据,复制到dst地址上。比如将第二三两行(这两行是连续的),...

c++如何读取txt的数据(一行一行的读,从第一行读到最后一行)要详细代 ...
1、使用C++提供输入输出流的getline函数可以实现整行读取;完整代码如下:include<iostream>#include<fstream>using namespace std;int main(){ \/\/ 定义输入文件流类对象infileifstream infile("test.txt",ios::in);if(!infile){ \/\/ 判断文件是否存在 cerr<<"open error."<<endl; exit(1); ...

C++问题:如何定义一个未知大小的一维数组,数组大小由输入的值决定
方法一:……int n;cout<<"请输入你想建立的一维数组维数:"<<endl;cin>>n;int *array = new int[n];……delete [] array;方法二:现代c++程序一般用容器vector代替数组。vector<int> vec;添加值(比如1)用vec.pushback(1)

C++编程读取TXT数据,将其赋值到数组,而后进行计算
最简单的方式是用freopen,使用了这个函数之后所有的cin\/cout就会从文件中读出或者写入,或者也可以用fstream;include <iostream>#include <cstdio>#define maxn 10000using namespace std;struct m{ int x; int y; int z;}a[maxn];int main(){ freopen("\/*文件名*\/","r"\/*代...

C\/C++如何读取TXT文件的行数和把TXT文件的内容存到数组中
C语言读取TXT文件的行数并把把TXT文件的内容存到数组中,需要根据每行的内容(字符,数字,字符串)选取fgets、fscanf或者fgets。这里假设每行是一个字符串,每行不超过127个字符(用数组存字符串,最后一位存'\\0'),选取fgets进行读取。示例代码如下:include <stdio.h>#include <stdlib.h>int main...

C语言\/c++如何把数输入到txt文件中去
C语言将数输入到文件中:首先,定义一个文件指针:FILE *fp;和一个数组:int a[5];然后,打开文件:fp = fopen ("filename.txt", "w"); \/\/"w"是打开文件方式,将原有内容清空写入新数据,如果文件不存在则新建,类似的还有"r"只读打开(不能写入);"a"向文件中追加内容,原有内容不变,等等 最...

C++如何将一维数组转为多维数组后再与另一个一维数组进行比较?
)⑤ TXT1里面的第1行(按矩阵行、列)与TXT2中的第1行作了比较后;TXT1中第2行再与TXT2中的第1行作比较,那么比较结果在TXT3中是另起一行吗?⑥ 最好提供一个超过2行的TXT1和TXT2文件,及最后的比较结果。⑦ 初步程序,已写好,附上结果(上面提及的修正后L5L6)...

c++ 如何把一个数组的值赋到另一个数组
1、 通过数组遍历,逐个赋值。定义循环变量int i;for(i = 0; i < 4; i ++)b[i] = a[i];该程序功能为遍历数组a,逐个赋值到数组b对应元素中。2、 借助内存复制函数memcpy,整体赋值。void *memcpy(void *dst, void *src, size_t size);这个函数的功能为将src上,大小为size字节的数据...

c#中如何给数组赋值?
声明数组的同时进行赋值 string[] languages = { "C#", "COBOL", "Java","C++", "Visual Basic", "Pascal","Fortran", "Lisp", "J#"};在这个以逗号分隔的列表中,第一项成为数组的第一个元素,第二项成为第二个元素,依此类推。我们使用大括号来定义一个数组字面量。只有在同一个语句中...

相似回答