C언어.구조체소스수정해주세요.
-
게시물 수정 , 삭제는 로그인 필요
먼가 이상한것 같으면서도 컴팔도 돼고 실행도 되는데요. 수정해주세요.
그리고 5번 입력받는데. 빨간문장이 6번나오는데 마지막 한번 안찍고 for루프 빠져나올려면 어떸케 해야 합니까?
#include <stdio.h>
#include <stdlib.h>
#define TSIZE 45
#define FMAX 5
struct film{
char title[TSIZE];
int rating;
};
int main(void)
{
struct film * ptr;
struct film movies[FMAX];
int i=0;
int n;
puts("자...영화제목 넣어보세요 ");
while( i< FMAX && gets(movies[i].title)!=NULL && movies[i].title[0]!='\0')
{
puts("그 영화 순위를 입력하세요");
scanf("%d", &n);
ptr = (struct film *)malloc(n * sizeof(struct film));
while(getchar()!= '\n')
continue;
i++;
puts("계속해서 영화제목 입력하세용");
}
if(i==0)
printf("입력된 값이 엄군요 \n");
else
printf("%10s %3d\n", ptr->title, ptr->rating);
printf("종료한다.!안녕~");
return 0;
}
먼가 이상한것 같으면서도 컴팔도 돼고 실행도 되는데요. 수정해주세요.
그리고 5번 입력받는데. 빨간문장이 6번나오는데 마지막 한번 안찍고 for루프 빠져나올려면 어떸케 해야 합니까?
#include <stdio.h>
#include <stdlib.h>
#define TSIZE 45
#define FMAX 5
struct film{
char title[TSIZE];
int rating;
};
int main(void)
{
struct film * ptr;
struct film movies[FMAX];
int i=0;
int n;
puts("자...영화제목 넣어보세요 ");
while( i< FMAX && gets(movies[i].title)!=NULL && movies[i].title[0]!='\0')
{
puts("그 영화 순위를 입력하세요");
scanf("%d", &n);
ptr = (struct film *)malloc(n * sizeof(struct film));
while(getchar()!= '\n')
continue;
i++;
puts("계속해서 영화제목 입력하세용");
}
if(i==0)
printf("입력된 값이 엄군요 \n");
else
printf("%10s %3d\n", ptr->title, ptr->rating);
printf("종료한다.!안녕~");
return 0;
}