Я хочу взять данные из файла и отобразить его точно на экране.Использование fscanf() и массивов
Я беру данные из файла, который содержит:
- Нет курсы и максимально допустимый курс за семестр
- Всего Название курса (5 буквенно-цифровой макс) имя
- Конечно, Предлагает семестр , количество предварительных, предварительных курсов.
- -1 и -1 в конце.
#include<stdio.h>
#include<stdlib.h>
#include<stdbool.h>
#include<string.h>
#include<ctype.h>
char garbage[12][6];
char courseIdentifier[12][6],prereqIdentifier[12][5][6];
char semOffered[12];
bool done[12];
int main(void)
{
FILE *fp;
fp = fopen("graduate.in","r");
int n,m,p[12];
int i,j,k;
fscanf(fp,"%d %d",&n,&m);// take n,m
while(n != -1)
{
for(i=0;i<n;i++) //the list of offered courses
{
fscanf(fp,"%s",garbage[i]);
}
for(i=0;i<n;i++)
{
fscanf(fp,"%s %c %d",courseIdentifier[i],&semOffered[i],&p[i]);//the name of course, sem,no. of prereqs
for(j=0; j < (p[i]) ;j++)
{
fscanf(fp,"%s ",prereqIdentifier[i][j]);
}
}
for(i=0;i<n;i++)
{
printf("%s %c %d ",courseIdentifier[i],semOffered[i],p[i]);
for(j=0; j < (p[i]) ; j++)
{
printf("%s ",prereqIdentifier[i][j]);
}
printf("%s\n");
}
fscanf(fp,"%d %d",&n,&m);// take n,m
printf("\n\n");
}
fclose(fp);
return 1;
}
Выход не является правильным. Где я делаю неправильно, используя массивы или fscanf()
?
Нам нужно будет посмотреть код. –
@ColeJohnson, thanks :) – IRock
Итак, позвольте мне получить этот пролив, вы хотите прочитать файл, а затем вывести его и все? –