[정답]28. 정리하기 (표준 입출력 개요)

1. 최종 사용자로부터 번호, 이름, 주소를 입력받아 출력하는 프로그램을 작성하시오.
답:

//최종 사용자로부터 번호, 이름, 주소를 입력받아 출력하는 프로그램
#include <stdio.h>
int main(void)
{
    int num=0;
    char name[20]="";
    char addr[100]="";
 
    printf("번호:");
    scanf_s("%d",&num);
    printf("이름:");
    scanf_s("%s",name,sizeof(name));
    //fflush(stdin);//Visual Studio 2015에서는 fflush(stdin); 호출한다고 stdin 버퍼가 지워지지 않습니다.
    printf("주소:");
    gets_s(addr,sizeof(addr));
    printf("=== 입력한 데이터 ===\n");
    printf("번호:%d 이름:%s 주소:%s\n",num,name,addr);
    return 0;
}

*개발 환경에 따라 표준 입력 처리가 조금씩 다릅니다.*

2. 다음의 두 개의 구문을 수행하는 프로그램을 작성하여 차이점을 확인하세요.
printf(“hello”);
puts(“hello”);
답:
printf 함수는 개행을 포함하지 않고 출력하고 puts는 개행을 포함하여 출력합니다.

//printf(“hello”);와 puts(“hello”); 비교
#include <stdio.h>
int main(void)
{
    puts("hello");
    puts("a");
 
    printf("hello");
    printf("a");
    
    return 0;
}

▷ 실행 결과

hello
a
helloa