[问题] 用fscanf读取txt档问题

楼主: bell1708 (横山推)   2020-04-07 14:12:16
目前需要读取的txt档案内容如下:
3 // 先读入一整数表示要读取的资料数
1 3 8 / 7 7 // 第一笔资料
1 3 8 / 7 7 / 5 / X 3 // 第二笔资料
1 3 8 / 7 7 / 5 / X 3 4 6 8 // 第三笔资料
需要依序读取这三笔资料,分别进行运算,所以要使用到for循环和fscanf
目前程式码如下:
while循环那是我没头绪乱凑的....
如果只用for、if、while和一维阵列有办法达成吗?
#include<stdio.h>
int main()
{
FILE *f1=fopen("t.txt","r");
int sum,s=0,i;
char num[30];
fscanf(f1,"%d",&sum);
printf("%d",sum);
for(i=0;i<sum;i++)
{
while(fscanf(f1,"%c",&num[s])!='\n')
{
printf("%c",num[s]);
s++;
}
}
感谢指导QQ
作者: jigfopsda (jigfopsda)   2020-04-07 15:22:00
try fgets
作者: kaneson (Lance)   2020-04-08 10:40:00
先读给一个独立字符变量,确定是什么东西再放进阵列。这样写比较有助理解,非必要把阵列塞到input参数,因为有很多新手坑要解
作者: chengweihsu (安安你好)   2020-04-08 12:41:00
建议你先看一下fscanf()的return value
楼主: bell1708 (横山推)   2020-04-10 04:08:00
谢谢各位最后用fgets解决了

Links booklink

Contact Us: admin [ a t ] ucptt.com