c语言程序 从数据文件中读入数据到数组

从数据文件中读入数据到数组,计算最第二大值,输出到屏幕。(1)编写函数intread(intarr[])从数据文件data.txt中读入数据到整型数组a,返回读入数据个数... 从数据文件中读入数据到数组,计算最第二大值,输出到屏幕。
(1) 编写函数int read(int arr[])从数据文件data.txt中读入数据到整型数组a,返回读入数据个数n。
(2) 编写函数int getsecond(int arr[],int n)遍历整型数组,求最大值
(3) 在main函数中调用read和getsecond函数完成
2. 输出第二大及第二大所在的下标
修改getsecond函数返回最大值所在的下标

我没学过那个read函数 应该怎么写啊 那个txt文件放哪才能读出来啊
这是别人写的
int read(int arr[])
{
inti=0,n;
FILE*fp;
if((fp=fopen("data.txt","r"))==NULL)
{printf("cantfind the file!");}
while(!feof(fp))
{
fscanf(fp,"%d",&arr[i++]);
}
n=i;
fclose(fp);
returnn;
}
能不能帮忙给个注释。。
展开
 我来答
刺友互
高粉答主

2019-07-13 · 每个回答都超有意思的
知道答主
回答量:3979
采纳率:100%
帮助的人:73.2万
展开全部

1、首先让我们新建一个Class类。

2、书写Main方法。

3、让我们在C盘根目录下新建一个txt文档,内容为‘test’。

4、然后让我们接着写代码,首先创建一个File对象。

5、然后创建一个StringBuilder对象,用于储存读取的内容。

6、接下来,我们用BufferedReader类来进行读取内容了。

7、然后我们将内容来输入到控制台就可以了。

霓虹知事a4
推荐于2017-11-26 · TA获得超过102个赞
知道答主
回答量:67
采纳率:100%
帮助的人:50.8万
展开全部
int read(int arr[])
{
int i=0,n;
FILE *fp;//定义文件指针
if((fp=fopen("data.txt","r"))==NULL)//如果文件名不存在
{printf("cantfind the file!");}//则输出没有找到文件
while(!feof(fp))//当不为文件结尾时
{
fscanf(fp,"%d",&arr[i++]);//逐个将文件中的数据放入数组中
}
n=i;//n为数组中数据个数
fclose(fp);关闭文件
return n;返回n即数据个数的值
}
txt文件放在cpp文件同一目录下就可以了
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zy1404
2014-01-05 · TA获得超过1387个赞
知道小有建树答主
回答量:784
采纳率:100%
帮助的人:476万
展开全部
//你的这个程序是错的,做如下修改,
///fscanf()读取出来的都是字符串,因此不能直接给int类型,不然数据就出现不是你写入txt//中的数据,要把字符串变成数字才行,一下就是数字字符串变成数字atoi()
//用法如下:a="4560"
//int b=atoi(a)
#include<stdio.h>
#include<time.h>
#include<stdlib.h>
#include<string.h>
int read(int arr[])
{
       int i=0,n;
       char name[100];
       FILE *fp;//定义文件指针
       if((fp=fopen("data.txt","r"))==NULL)//如果文件名不存在
       {printf("cantfind the file!");}//则输出没有找到文件
       while(!feof(fp))//判断文件是否结束
       {  
              fscanf(fp,"%s",name);//逐个将文件中的数据放入字符串中
  arr[i++]=atoi(name);//把字符串转变成数字(int)类型
  printf("%d\n",arr[i-1]);
       }
       n=i;//n为数组中数据个数
       fclose(fp);//关闭文件
       return n;//返回n即数据个数的值
}
void main()
{

int arr[100];
read(arr);
}
更多追问追答
追问
这程序是对的==。
不过还是涨姿势了 谢谢大神
追答

i

int read(int arr[])
{
       int i=0,n;
       FILE *fp;//定义文件指针
       if((fp=fopen("data.txt","r"))==NULL)
       {printf("cantfind the file!");}
       while(!feof(fp))
       {  
              fscanf(fp,"%d",&arr[i++]);
             printf("%d ",arr[i-1]);//////看看和文本数据能一样吗??、
       }
       n=i;
       fclose(fp);
       return n;
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式