C语言的问题,各位高手帮忙!

2024-11-27 16:59:08
推荐回答(3个)
回答1:

fstream和sstream一起用吧
下面给以一段提示:
我感觉你的问题在于对于逗号的处理,一般的读流能够轻松处理上面的文件中是空格的情况,那么我们可以这么做,把逗号换成空格。
假设有一个文件叫r.txt里面是两个数字一行的
(对于楼主的程序,可以用一个数组来储存就是了,如果没有最大限量,那就用向量就是,很简单的事,这里不作为重点问题解决。)
void main(){
ifstream in("r.txt");
//ofstream out ("abc.out");
double comp=1;
double num1,num2;
for (int i=1;i<=16;i++)
comp*=i;
cout<<"the result of the programe is :"< for(string s;getline(in, s);)
{
int record=-1,i;
for(i=0;i if(s[i]==','){
record=i;
break;
}
string t=s.substr(0,record).append(" ").append(s.substr(record+1));
cout< istringstream sin(t);
sin>>num1;
sin>>num2;
//………………
你处理你的问题的方法
}
}
上面的代码完成了把逗号变成空格,这样后就可以用istringstream读取了。
搞定。

回答2:

我觉得 不如fputc()
fgetc()函数
做字符读取
或是
fscanf()
与fprintf()
/*123,5465,54
15,45,154,45
5454,5,4,5
12,12
12,21,1,54,555 */

回答3:

新生入学什么都不懂,一年后肯定帮你搞定