| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1789 人关注过本帖
标题:[求助]从一个包含有字母和数字的文本文件读入INT型变量
只看楼主 加入收藏
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
我彻底无语了.等下我自己来写个.

倚天照海花无数,流水高山心自知。
2007-10-22 09:47
nuciewth
Rank: 14Rank: 14Rank: 14Rank: 14
来 自:我爱龙龙
等 级:贵宾
威 望:104
帖 子:9786
专家分:208
注 册:2006-5-23
收藏
得分:0 
#include<stdio.h>
int main()
{
FILE *fpold,*fpnew;
int sum=0;
char c;
fpold=fopen("old.txt","r");
fpnew=fopen("new.txt","w"); sum=0;
while(EOF!=(fscanf(fpold,"%c",&c)))
{
if(c>='0'&&c<='9')
{
sum=sum*10+c-'0';
}
else
{
if(sum)
{
fprintf(fpnew,"%d\n",sum);
sum=0;
}
}
}
if(sum)
{
fprintf(fpnew,"%d",sum);
sum=0;
}
fclose(fpold);
fclose(fpnew);
return 0;
}

倚天照海花无数,流水高山心自知。
2007-10-22 09:55
bitcai
Rank: 1
等 级:新手上路
帖 子:28
专家分:0
注 册:2007-9-23
收藏
得分:0 
呵呵,刚学,还有的地方不熟悉,我今天早上在公司又写了一下,成功了:
[CODE]main()
{
FILE *fpold,*fpnew;
int sum=0,i,k=0;
char str[100];
fpold=fopen("old.txt","r");
fpnew=fopen("new.txt","w+");
for(i=0;i<100;i++)
{
fscanf(fpold,"%c ",&str[i]);
if(str[i]>='0'&&str[i]<='9')
{
sum=sum*10+str[i]-'0';
k++;
}
else
{
if(k>0)fprintf(fpnew,"%d ",sum);
k=0;
sum=0;
}
}

fclose(fpold);
fclose(fpnew);
getch();
}
[/CODE]

谢谢斑竹拉,主要是你的那个if(str[i]>='0'&&str[i]<='9')太好了!哈哈,没想到这个.
另外问下 getc();和fprintf(); 对字符来说是不是效果一样啊?

2007-10-22 12:42
快速回复:[求助]从一个包含有字母和数字的文本文件读入INT型变量
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.015117 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved