C语言中如何将文本文件中的数字读入

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-07-07
C语言如何将字符串写入文本文件?

从键盘输入一行字符,写入一个文件, 再把该文件内容读出显示在屏幕上。
#include
main()
{
FILE *fp;
char ch;
if((fp=fopen("string","wt+"))==NULL)
{
printf("Cannot open file strike any key exit!");
getch();
exit(1);
}
printf("input a string:
");
ch=getchar();
while (ch!='
')
{
fputc(ch,fp);
ch=getchar();
}
rewind(fp);
ch=fgetc(fp);
while(ch!=EOF)
{
putchar(ch);
ch=fgetc(fp);
}
printf("
");
fclose(fp);
}

字符读写函数fgetc和fputc

字符读写函数是以字符(字节)为单位的读写函数。 每次可从文件读出或向文件写入一个字符。
1. 读字符函数fgetc
fgetc函数的功能是从指定的文件中读一个字符,函数调用的形式为:
字符变量=fgetc(文件指针);
例如:
ch=fgetc(fp);
其意义是从打开的文件fp中读取一个字符并送入ch中。
对于fgetc函数的使用有以下几点说明:
1) 在fgetc函数调用中,读取的文件必须是以读或读写方式打开的。
2) 读取字符的结果也可以不向字符变量赋值,
例如:
fgetc(fp);
但是读出的字符不能保存。
3) 在文件内部有一个位置指针。用来指向文件的当前读写字节。在文件打开时,该指针总是指向文件的第一个字节。使用fgetc 函数后,该位置指针将向后移动一个字节。 因此可连续多次使用fgetc函数,读取多个字符。应注意文件指针和文件内部的位置指针不是一回事。文件指针是指向整个文件的,须在程序中定义说明,只要不重新赋值,文件指针的值是不变的。文件内部的位置指针用以指示文件内部的当前读写位置,每读写一次,该指针均向后移动,它不需在程序中定义说明,而是由系统自动设置的。
读入文件c1.doc,在屏幕上输出。
#include

voidmain()

{

FILE*fin;

inta,b,c,d;

chars[20];

floatf1,f2,f3,f4;

fin=fopen("abc.txt","r");//打开

fscanf(fin,"%1d%1d%1d%1d",&a,&b,&c,&d);//按1位整型读前4个数

printf("a=%db=%dc=%dd=%d
",a,b,c,d);

rewind(fin);//文件回绕到开始处

fscanf(fin,"%s",s);//按字符串读一串

printf("s=%s
",s);

rewind(fin);//文件回绕到开始处

fscanf(fin,"%1f%1f%1f%1f",&f1,&f2,&f3,&f4);//按1位float型读前4个数

printf("%f%f%f%f
",f1,f2,f3,f4);

flcose(fin);

}

abc.txt内容:

123456789

读到数组:

inty[20];

inti;

fin=fopen("abc.txt","r");

for(i=0;i<9;i++)fscanf(fin,"%1d",&y[i]);

扩展资料

C语言中文件的读取

fopen(打开文件)

相关函数open,fclose

表头文件#include<stdio.h>

定义函数FILE*fopen(constchar*path,constchar*mode);

函数说明参数路径包含包含打开的文件路径和文件名,参数模式字符串则代表着流形态。

模式有以下几种形态类别:

r:预期文件,该文件必须存在。

r+:可读写的文件,该文件必须存在。

w:只写文件,若文件存在则文件长度清为0,即该文件内容会消失。若文件不存在则建立该文件。

w+:可读写文件,若文件存在则文件长度清为零,即该文件内容会消失。若文件不存在则建立该文件。

a以附加的方式打开只写文件。若文件不存在,则建立该文件,如果文件存在,写入的数据会被加到文件尾,即文件原先的内容会被保留。



#include<stdio.h>
void main()
{
FILE *fp;
int s[20],w[20];
fp = fopen("1.txt","r");
for(int i=0;i<20;i++)
fscanf(fp,"%d",&s[i]);
fclose(fp);
/*数据处理*/
for(i=0;i<20;i++)
w[i]=s[i];
fp = fopen("2.txt","w");
for(i=0;i<20;i++)
fprintf(fp,"%d,",w[i]);
fclose(fp);
}

freopen("c:\\data.txt",stdin,"r");
scanf("%d",&data);

  • C语言中如何将文本文件中的数字读入
    答:inta,b,c,d;chars[20];floatf1,f2,f3,f4;fin=fopen("abc.txt","r");//打开 fscanf(fin,"%1d%1d%1d%1d",&a,&b,&c,&d);//按1位整型读前4个数 printf("a=%db=%dc=%dd=%d\n",a,b,c,d);rewind(fin);//文件回绕到开始处 fscanf(fin,"%s",s);//按字符串读一串 print...
  • C语言,从文本文件中读入16进制的数,并输出到一个新的文件里。请问这个怎...
    答:如果是原样全文复制文件,用 system("COPY a.txt b.txt"); 即可。
  • 从文本文件里读取数字,c语言如何实现
    答:可以通过fscanf,从文件中依次读取数据。当fscanf返回EOF时,表示读到文件结尾,这时停止读取即可。以文件中存储的为空格分隔的整型字符为例,可以写作:while(fscanf(fp,"%d",&n) != EOF)//从打开的文件指针fp指向的文件读数据,每次读一个整型,直至文件结尾。C语言是一门通用计算机编程语言,应用广...
  • 用C语言从一个文本文档(假设文本文当路径和文件名都为:input.txt)中...
    答:/ 先向文本文档中写入一行数字:1234567890 再读出来 / void main( void ){ FILE *stream;char list[30];unsigned long text= 1234567890;int numread,numwritten;/* 以文本文档模式打开文件 */ if( (stream = fopen( "input.txt", "w+t" )) != NULL ){ /*转换为字符串数组*/ _itoa(...
  • C语言如何实现对txt文件的读取和写入
    答:1、使用VS新建空工程,直接点击确定,如下所示。2、新建c文件,用于C语言编译器,输入main.c文件,如下所示。3、参考代码:include <stdio.h> int main(){ //下面是写数据,将数字0~9写入到data.txt文件中 FILE *fpWrite=fopen("data.txt","w");if(fpWrite==NULL){ return 0;} for(int...
  • C语言中如何从文本1.txt中读取数字,并降序排序后输出到2.txt中。数字...
    答:int main(){ freopen("1.txt", "r", stdin);freopen("2.txt", "w", stdout);/ 像平常一样直接读入,然后加个排序 / return 0;}
  • C语言如何读取文件中指定的数字并求和
    答:void main() { FILE *fp; int s[4],x[4],i; char buffer[256],buf[40];for ( i=0;i<4;i++ ) s[i]=0;if ( fp=fopen("c:\\data\\data.txt","r") ) { fgets(buffer,255,fp); //读第1行 while ( !feof(fp) ) { fgets(buffer,255,fp); sscanf(buffer,"%s%s%s...
  • 用c语言编程,把input.txt文件中的数字从小到大输入到output.txt文件中...
    答:#包括 廉政的main(){ 我;scanf的(“%d”,&I);{ (I> = 1 && <= 100)打破;其他{ printf的(“输入错误,请重新输入。\ N“);fflush(stdin)中;scanf的(”%d“的,与我);} }(1);</ printf的(“您输入的数:%d \ n”,我);返回0;} ...
  • c语言 读取txt文件中的数字,然后运算,保存。
    答:在ASCII表里,数字的表读是连续的,你可以编一个函数,对String里的字符进行判断,碰到数字之后按位数乘它的维权,相加存在INT里。当然这个函数不会那么简单,涉及到很多问题,你运算几次出错之后就知道了。不过以上讲的都是进行数字运算。按照你的要求的话就简单得很,在ASCII表里,换行也是有表读的,你...
  • 如何读取文件中的多个数字,用c语言
    答://使用顺序是,什么文件指针,打开文件,处理完之后,关闭文件,//同时读取2个TXT,最好同时声明2个文件指针 include<stdio.h> int main(){ FILE *fp1;FILE *fp2;fp1 = fopen("1.txt","r");fp2 = fopen("2.txt","r");...fclose(fp1);fclose(fp2);return 0;} 满意请采纳。