当前位置:首页 » 编程语言 » c语言从文件中读取数字
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言从文件中读取数字

发布时间: 2022-01-23 23:06:40

c语言,从文件中读取数字用那个函数啊

有好几个函数都可以。常用的fscanf比较方便的一个。

Ⅱ C语言读取文件如何直接将文件中的数字读成int型的数字

读进来就是int型应该是做不到的,但是可以用atoi函数将其转化为int型
比如说:int p=atoi("12345");
这一函数包含在头文件<stdlib.h>中。如有疑问可追问,望采纳

Ⅲ c语言如何实现从文本文件里读取数字

可以通过fscanf,从文件中依次读取数据。当fscanf返回EOF时,表示读到文件结尾,这时停止读取即可。以文件中存储的为空格分隔的整型字符为例,可以写作:while(fscanf(fp,"%d",&n) != EOF)//从打开的文件指针fp指向的文件读数据,每次读一个整型,直至文件结尾。

Ⅳ C语言//从另一文件中读取数字 和 字符串,并进行统计。

/*
统计文件中重复的单词
*/

#include<stdio.h>
#include<ctype.h>
#include<stdlib.h>
#include<string.h>
#defineFILEOPEN(x)fopen(#x,"r")
#defineWORD_LEN15
#defineWORDS_LEN1000

intmain()
{

FILE*pfile=FILEOPEN(E:/2.txt);//fopen函数是第一个变元是文件路径第二个是模式

char*parr[WORDS_LEN];//记录每个单词的内存地址
intwords_count[WORDS_LEN];//生命记录单词的字符数组
chartemp_char=0;//用于记录fgetc从文件得到的字符
intword_index=0;//记录单词的字符索引
intwords_index=0;//用于记录文本的单词索引
inti,has_repeat;
if(pfile)
{
char*pcurrent_char=(char*)malloc(sizeof(char)*WORD_LEN);//分配第一个单词的内存

while(!feof(pfile))//循环一直到文件末尾
{
temp_char=fgetc(pfile);//从文件读取一个char
if(isalpha(temp_char))//判断这个字符是不是字符
//如果是字符就把当前的单词的字符索引位置对应的字符赋值为temp_char
pcurrent_char[word_index++]=temp_char;
else
{
//如果不是字母,就认为刚才的那个单词已经结束。因为把pcurrent_char末尾添加
pcurrent_char[word_index]='';
if(strlen(pcurrent_char)>0)//这里只是为了方便。防止一些空字符
{
word_index=0;//把word_index设为0;用于统计下一个单词

has_repeat=0;//是否重复
for(i=0;i<words_index;i++)
{
//parr中寻找是否有与当前字符重复的字符,
//如果有就把对应的记录单词数的数组对应的索引的值++
if(strcmp(parr[i],pcurrent_char)==0)//如果有两个单词相等
{
has_repeat=1;
words_count[i]++;
break;
}

}
//如果没有重复,就重复分配内存。并且把对应统计数量的数组索引相应位置的值为1
if(!has_repeat)
{
parr[words_index]=pcurrent_char;
words_count[words_index++]=1;
pcurrent_char=(char*)malloc(sizeof(char)*WORD_LEN);
}

}
}

}

for(inti=0;i<words_index;i++)
printf("%s出现%d次 ",parr[i],words_count[i]);
fclose(pfile);
}
else
printf("打开文件失败 ");

return0;
}

Ⅳ C语言读取文件中的数字

括号位置错了,==优先级比=高先执行,如果成功打开文件,fopen返回的不是NULL,所以和NULL比较结果为0,然后fp被赋为0,所以实际上没有读到内容 #include <stdio.h> main() { int a; char *i; FILE *fp; if((fp=fopen("ANT.IN","r"))==NULL)/*这里修改一下*/ { printf("File can not open!"); exit(1); } fgets(i,256,fp) ; fclose(fp); a=atoi(i); printf("%d",a); }

Ⅵ c语言中怎么从TXT文件中把整数一个一个读出来

没有要求读出来放在哪里,所以以显示在屏幕上为例。设文件名为123.txt并在当前目录下,编程如下:

//#include"stdafx.h"//Ifthevc++6.0,withthisline.
#include"stdio.h"
#include"stdlib.h"
intmain(void){
FILE*fp;
intx;
if((fp=fopen("123.txt","r"))==NULL){
printf("Openthefilefailure... ");
exit(0);
}
while(fscanf(fp,"%d%*[^0-9]",&x)>0)
printf("%d",x);
fclose(fp);
printf(" ");
return0;
}

Ⅶ C语言从文件中读取的数字可以传递给变量么

首先,你要知道,读取出来的是字符串(string),然后,你还要知道,有种操作叫字符串处理。先读取出来,然后转换数字(int.TryParse(string s, out int result))然后...这样就是数字了...你再随便弄个Int变量。OK!

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

#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);
}

Ⅸ C语言中从文件中读取数据

如下:

//---------------------------------------------------------------------------

#include <stdio.h>

int main(int argc, char* argv[])
{
FILE *fp=fopen("c:\\1.txt","r");/*假设文件路径是c:\1.txt*/
char line[90];
while (fscanf(fp,"%*[^:]%*2c%s",line)!=EOF)/*注意这里,由于你提供的文件内容中的冒号是中文冒号,故这里的冒号也要在中文全角状态下输入,建议使用英文的冒号*/
puts(line);
fclose(fp);
return 0;
}
//---------------------------------------------------------------------------

Ⅹ C语言 如何从一个txt文件中读取其内数字,全部传送给一维数组a【】

建议:1、用fgets()来读取文件内容(一次读一行);
2、建立一个指向一维数组的指针如char (*pchr)[len] //len为每行字符串的最大长度
文件有多少行,就分配多少堆空间(数据太大,建议不要存放到栈里)譬如行数为x行:
pchr=(char * )malloc(x*len*sizeof(char ))
然后每存入一行就可以用pchr++来移动存储地址,注意不要越界就行了
如果不知道文件有多少行的话,建议用单链表。