【发布时间】:2021-10-10 10:38:08
【问题描述】:
晚上好!
我需要从文件中输出第一个、第三个、第五个到第十五个实数到控制台。到目前为止,我只输出了文件中的所有行。
如何从文件中输出特定文本?
以下是在我的终端上执行的命令及其结果:
:~/Документы/Cpp/projects$ vim test0.c
:~/Документы/Cpp/projects$ cat test0.c
代码:
#include<stdio.h>
void main(void)
{
FILE *file;
char str1[80];
char *str2;
file=fopen("dat.txt","r");
for(int i=0;i<17;i++)
{
str2=fgets(str1,sizeof(str1),file);
printf("%s",str1);
}
fclose(file);
}
:~/Документы/Cpp/projects$ gcc -o test0 test0.c
:~/Документы/Cpp/projects$ ./test0
输出:
0x7ffc2b05b698
0 9 11 4 1
7.5
5.8
7.2
4.2
4.5
7.3
1.7
1.5
8.0
0.6
3.9
7.0
3.0
2.8
7.2
【问题讨论】:
-
@Bart 这怎么行?它不会抑制每个偶数行的输出。
-
为什么这个标签是
task? -
如果你从不使用
str2,为什么要计算它? -
@Bart 这也可以被视为一个选项。但是有这样的可能性使用数组来做到这一点吗?你有什么想法吗?