用C语言如何读取TXT文件中列数据?
用C语言如何读取TXT文件中的每行的第一个数据?txt文本数据如下0001025815963……要求读取每行数据:0001、0258、15963……等存到一个数组中。每个...
用C语言如何读取TXT文件中的每行的第一个数据?
txt文本数据如下
0001
0258
15963
……
要求读取每行数据:0001、0258、15963……等存到一个数组中。每个数以回车结尾。
给出代码加30分。 展开
txt文本数据如下
0001
0258
15963
……
要求读取每行数据:0001、0258、15963……等存到一个数组中。每个数以回车结尾。
给出代码加30分。 展开
展开全部
你是想求编程的哦,这么点分,没人会给你打字的。。。
可以给你个练习程序,自己改吧。。。
(已知磁盘上的文件test2-2.txt文本文件中包含有3个字符串,
每个串的长度小于80且3个串之间以换行符做分隔。编写的程序应实现:
(1)从文件中读入3个串,并将它们按升序排序。
(2)将排序后的3个串输出到屏幕,并追加输出到原来文件的尾部。
)
#include <stdio.h>
void main()
{
FILE *fp;
int i,j;
char str[3][80],temp[80];
fp=fopen("test2-2.txt","r+");
if(fp==NULL)
{
printf("file open error!\n");
exit(0);
}
for(i=0;i<3;i++)
fgets(str[i],80,fp);
printf("before sorting:\n");
for(i=0;i<3;i++)
puts(str[i]);
for(i=0;i<=3-1;i++)
for(j=0;j<3-1-i;j++)
if(strcmp(str[j],str[j+1])>0)
{
strcpy(temp,str[j]);
strcpy(str[j],str[j+1]);
strcpy(str[j+1],temp);
}
printf("after sorting:\n");
for(i=0;i<3;i++)
puts(str[i]);
fseek(fp,0L,SEEK_END);
fputs("\n",fp);
for(i=0;i<3;i++)
fputs(str[i],fp);
fclose(fp);
}
可以给你个练习程序,自己改吧。。。
(已知磁盘上的文件test2-2.txt文本文件中包含有3个字符串,
每个串的长度小于80且3个串之间以换行符做分隔。编写的程序应实现:
(1)从文件中读入3个串,并将它们按升序排序。
(2)将排序后的3个串输出到屏幕,并追加输出到原来文件的尾部。
)
#include <stdio.h>
void main()
{
FILE *fp;
int i,j;
char str[3][80],temp[80];
fp=fopen("test2-2.txt","r+");
if(fp==NULL)
{
printf("file open error!\n");
exit(0);
}
for(i=0;i<3;i++)
fgets(str[i],80,fp);
printf("before sorting:\n");
for(i=0;i<3;i++)
puts(str[i]);
for(i=0;i<=3-1;i++)
for(j=0;j<3-1-i;j++)
if(strcmp(str[j],str[j+1])>0)
{
strcpy(temp,str[j]);
strcpy(str[j],str[j+1]);
strcpy(str[j+1],temp);
}
printf("after sorting:\n");
for(i=0;i<3;i++)
puts(str[i]);
fseek(fp,0L,SEEK_END);
fputs("\n",fp);
for(i=0;i<3;i++)
fputs(str[i],fp);
fclose(fp);
}
展开全部
1.用fgets函数可以读取文件中某行的数据,某列数据就必须一个一个读入每行的第几个字符,再存入到一个字符串当中。
2.例程:
#include<stdio.h>
#include<string.h>
void main()
{
char a[100],b[100],c[100];
int i=3,j=4,k=0; //第三行,第四列
FILE *fp = fopen("data.txt","r");
while(fgets(c,100,fp)){ //读入每行数据
i--;
if(i==0) strcpy(a,c); //读到第三行数据
b[k++]=c[j-1]; //把每行的那列字符拷到b中
}
b[k]=0;
printf("第%d行数据:%s\n",i,a);
printf("第%d列数据:%s\n",j,b);
fclose(fp);
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include<stdio.h>
void main()
{
int n;
FILE *fp = fopen("data.txt","rt");
fscanf(fp,"%d", &n );
/* 把数据放到数组中 */
fclose(fp);
}
void main()
{
int n;
FILE *fp = fopen("data.txt","rt");
fscanf(fp,"%d", &n );
/* 把数据放到数组中 */
fclose(fp);
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
可以告诉我你是怎么打开的吗?非常感谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询