组合两个文件并在C中将数据相邻放置
此代码是两个文本文件的组合组合两个文件并在C中将数据相邻放置,c,C,此代码是两个文本文件的组合 #include <stdio.h> #include <stdlib.h> int main() { FILE *movieyear; char year[90]; movieyear = fopen("Lecture 07 - Movie Data - Year.txt", "r"); FILE *moviedata; char data[90]; moviedata = f
#include <stdio.h>
#include <stdlib.h>
int main() {
FILE *movieyear;
char year[90];
movieyear = fopen("Lecture 07 - Movie Data - Year.txt", "r");
FILE *moviedata;
char data[90];
moviedata = fopen("Lecture 07 - Movie Data - Releases.txt", "r");
FILE *NEWdata;
char DData;
NEWdata = fopen("Movieinfo.txt", "w");
if (movieyear == NULL || moviedata == NULL) {
printf("Error opening file\n");
return (-1);
}
if (NEWdata == NULL) {
printf("Error opening file\n");
return (-1);
}
while ((DData = fgetc(movieyear)) != EOF) {
fputc(DData, NEWdata);
}
while ((DData = fgetc(moviedata)) != EOF) {
fputc(DData, NEWdata);
}
fclose(movieyear);
fclose(moviedata);
fclose(NEWdata);
return 0;
}
我期望的结果是:
Star Wars: Episode VII - The Force Awakens
2015
Avengers: Endgame
2019
Avatar
2009
Black Panther
2018
Avengers: Infinity War
2018
Titanic
1997
Jurassic World
2015
Marvel's The Avengers
2012
Star Wars: Episode VIII - The Last Jedi
2017
Incredibles 2
2018
这个
很明显,我们会先输出所有年份,然后输出所有标题
您需要的是一个同时输出年份和标题的单循环。修复代码缩进。是否有错误,或者这对您编码有帮助吗?@will:这是一个逻辑错误。步骤1:
char-DData代码>-->int-DData
@chux花了时间和精力为您重新格式化代码。注意到它是多么容易阅读吗?这应该是你做的第一件事,而不是最后一件。我试着把它结合起来,但我仍然有困难。我不知道在哪里可以把它结合起来。嗯,你可以试着填充那些年份和数据数组,并使用它们。目前,它们只是闲置在那里。它应该用相应的数组替换DData吗?
Star Wars: Episode VII - The Force Awakens
2015
Avengers: Endgame
2019
Avatar
2009
Black Panther
2018
Avengers: Infinity War
2018
Titanic
1997
Jurassic World
2015
Marvel's The Avengers
2012
Star Wars: Episode VIII - The Last Jedi
2017
Incredibles 2
2018
while((DData = fgetc(movieyear)) != EOF){
fputc(DData,NEWdata);
}
while((DData = fgetc(moviedata)) != EOF){
fputc(DData,NEWdata);
}