c언어 - 문자열 입력받는 코드 작성중인데 질문드립니다.
글쓴이: wsm0315 / 작성시간: 목, 2017/06/15 - 8:31오후
학교에서 문자열과 숫자를 입력받는 프로그램을 작성 중인데,
enter 를 두번 치면 while 문에서 탈출하도록 만들고 싶은데
코드를 어떻게 작성해야하나요???
#include <stdio.h>
int main(void)
{
typedef struct Name {
int a;
char name[20];
} N;
N n[50];
int i = 0, j = 0, k = 0, ch;
char input[100];
while (scanf("%s%d", n[i].name, &n[i].a) == 2) {
i++;
}
for (j = 0; j < i; ++j)
printf("%s %d\n", n[j].name, n[j].a);
return 0;
}제가 생각한 방법은 결국 이정도인데
뭔가 좀 복잡한거 같아서요.
좀 더 간단한 방법 없을까요?
#include <stdio.h>
int main(void)
{
typedef struct Name {
int a;
char name[20];
} N;
N n[50];
int i = 0, j = 0, k = 0, ch;
char input[100];
while (scanf("%s%d", n[i].name, &n[i].a) == 2) {
i++;
while (getchar() != '\n')
;
if ((ch = getchar()) == '\n')
break;
else
ungetc(ch, stdin);
}
for (j = 0; j < i; ++j)
printf("%s %d\n", n[j].name, n[j].a);
return 0;
}Forums:


댓글 달기