소개
이 랩에서는 C 프로그래밍 언어에서 scanf() 함수를 사용하여 사용자 입력을 읽는 방법을 배우게 됩니다. scanf() 함수는 사용자로부터 입력을 읽는 강력한 도구이며, 표준 입출력 라이브러리 stdio.h에 정의되어 있습니다. C 는 다양한 데이터 형식을 지원하는 강력한 형식 언어입니다. 이 랩에서는 사용자 입력을 읽고 표시하기 위해 char 및 int 데이터 형식을 사용하는 데 중점을 둡니다.
개발 환경 설정
이 단계에서는 개발 환경을 설정하고 프로그램에 사용할 새로운 C 파일을 생성합니다.
WebIDE 에서 터미널을 엽니다. 기본적으로
/home/labex/project디렉토리에 있어야 합니다. 확실하지 않은 경우pwd(print working directory, 현재 작업 디렉토리 출력) 를 입력하여 현재 위치를 확인할 수 있습니다.다음 명령을 사용하여
user_input.c라는 새 파일을 생성합니다.touch user_input.ctouch명령은 존재하지 않는 경우 새 빈 파일을 생성하거나, 기존 파일의 타임스탬프를 업데이트합니다.WebIDE 편집기에서
user_input.c파일을 엽니다. WebIDE 왼쪽의 파일 탐색기에서 파일 이름을 클릭하거나,File메뉴에서Open File옵션을 사용하여 이 작업을 수행할 수 있습니다.
기본 프로그램 구조 작성
이 단계에서는 C 프로그램의 기본 구조를 작성합니다.
user_input.c파일에 다음 코드를 추가합니다.#include <stdio.h> int main() { // We will add our code here return 0; }자세히 살펴보겠습니다.
#include <stdio.h>는 컴파일러에게 표준 입출력 라이브러리를 포함하도록 지시합니다. 이 라이브러리에는 입출력을 위해 사용할printf()및scanf()와 같은 함수가 포함되어 있습니다.int main()은 프로그램 실행이 시작되는 main 함수입니다. 모든 C 프로그램에는 main 함수가 있어야 합니다.- 중괄호
{ }는 main 함수의 본문을 정의합니다. - main 의 끝에 있는
return 0;은 프로그램이 성공적으로 실행되었음을 나타냅니다.
파일을 저장합니다. Ctrl+S 를 누르거나
File메뉴에서Save를 선택하여 이 작업을 수행할 수 있습니다.
이름 입력을 위한 구현
이제 사용자의 이름을 읽는 기능을 구현해 보겠습니다.
user_input.c파일을 수정하여main()함수 내에 다음 코드를 포함합니다.#include <stdio.h> int main() { char name[100]; printf("Enter your name: "); scanf("%s", name); printf("Hello, %s!\n", name); return 0; }각 새로운 줄의 기능은 다음과 같습니다.
char name[100];은 최대 99 개의 문자 및 null 종결자를 저장할 수 있는 문자 배열 (문자열) 을 선언합니다.printf("Enter your name: ");은 사용자에게 이름을 입력하라는 메시지를 표시합니다.scanf("%s", name);은 사용자 입력에서 문자열을 읽어name배열에 저장합니다.%s형식 지정자는 문자열을 읽는 데 사용됩니다.printf("Hello, %s!\n", name);은 사용자가 입력한 이름을 사용하여 인사를 출력합니다. 형식 문자열의%s는name의 값으로 대체됩니다.
파일을 저장합니다.
나이 입력 추가
프로그램을 확장하여 사용자의 나이도 묻도록 하겠습니다.
user_input.c파일을 수정하여 나이 입력을 포함합니다.#include <stdio.h> int main() { char name[100]; int age; printf("Enter your name: "); scanf("%s", name); printf("Enter your age: "); scanf("%d", &age); printf("Hello, %s! You are %d years old.\n", name, age); return 0; }여기서 새로운 내용은 다음과 같습니다.
int age;는 사용자의 나이를 저장하기 위한 정수 변수를 선언합니다.- 나이를 묻고 읽기 위해 다른
printf()및scanf()쌍을 추가했습니다. scanf("%d", &age);는 사용자 입력에서 정수를 읽습니다.%d형식 지정자는 정수에 사용됩니다.age앞에&가 있다는 점에 유의하십시오. 이는scanf()가 입력을 저장하기 위해 변수의 메모리 주소가 필요하기 때문입니다.- 최종
printf()는 이제 출력 메시지에 나이를 포함합니다.
파일을 저장합니다.
프로그램 컴파일 및 실행
이 마지막 단계에서는 C 프로그램을 컴파일하고 실행하여 결과를 확인합니다.
터미널에서
user_input.c파일이 있는 디렉토리로 이동합니다.cd /home/labex/project이 단계는 올바른 디렉토리에 있는지 확인합니다. 이미 해당 디렉토리에 있는 경우 "cd: no such file or directory"라는 메시지가 표시되지만 무시해도 됩니다.
GCC 컴파일러를 사용하여 프로그램을 컴파일합니다.
gcc user_input.c -o user_input이 명령은 GCC 에게
user_input.c를 컴파일하고user_input이라는 실행 파일을 생성하도록 지시합니다. 코드에 오류가 있는 경우 여기에 오류 메시지가 표시됩니다. 그런 경우 코드로 돌아가 오류를 수정하고 다시 컴파일을 시도하십시오.컴파일된 프로그램을 실행합니다.
./user_input./는 셸에게 현재 디렉토리에서 프로그램을 찾도록 지시합니다.

프로그램은 이름과 나이를 입력하라는 메시지를 표시합니다. 응답을 입력하고 각 입력 후 Enter 키를 누릅니다.
이름과 나이가 포함된 개인화된 인사 메시지가 표시됩니다.
문제가 발생하면 오타가 있는지 코드를 다시 확인하고 컴파일하기 전에 모든 변경 사항을 저장했는지 확인하십시오.
요약
이 랩에서는 scanf() 함수를 사용하여 C 에서 사용자 입력을 읽는 방법을 배웠습니다. 사용자의 이름과 나이를 묻고, 입력을 읽고, 개인화된 인사 메시지를 표시하는 프로그램을 만들었습니다. 이 연습을 통해 C 의 기본 입/출력 연산, 다양한 데이터 유형 (문자열의 char 배열 및 정수의 int) 작업, C 프로그램 컴파일 및 실행 프로세스를 소개했습니다.
주요 내용:
scanf()함수는 사용자로부터 입력을 읽는 데 사용됩니다.- 읽는 입력 유형에 따라 다른 형식 지정자 (
%s는 문자열,%d는 정수) 가 사용됩니다. scanf()로 정수 또는 다른 문자열이 아닌 유형을 읽을 때는 변수의 주소를 전달하기 위해&연산자를 사용해야 합니다.- 컴파일 프로세스는 C 코드를 실행 가능한 프로그램으로 변환합니다.
이러한 기본적인 기술은 더 복잡한 C 프로그래밍 작업의 기초를 형성하며 프로그래밍 능력을 계속 배우고 개발하는 데 유용할 것입니다. 기억하세요, 프로그래밍에서는 연습이 중요합니다. 이 프로그램을 수정하거나 새로운 프로그램을 만들어 배운 내용을 강화해 보세요!



