티스토리 뷰
이번 포스팅은 변수에 값을 입력하는 또 다른 방법을 설명드리겠습니다.
코드를 만들면서 매번 달라지는 값을 바꾸려 프로그램을 바꾸는 번거로운 작업을 이번시간을 통해 아주 쉽게 만드는 법을 알려드리겠습니다.
먼저 기본 코드를 입력해보겠습니다.
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int num1;
int num2;
int num3;
printf("정수 세 개를 입력하세요: ");
scanf("%d %d %d",&num1, &num2, &num3);
printf("%d\n", num1);
printf("%d\n", num2);
printf("%d\n", num3);
return 0;
}
위 코드에서 보아야 할 것은 scanf 연산자 입니다.
사용자가 코드 내에서 직접 입력하는것이 아닌 프로그램에서 입력하는것으로 변수에 값을 입력해주는 것 입니다.
scanf( "%서식1 %서식2 ... " , &변수1 , &변수2 ....)
다른 연잔자와 같이 서식 지정자의 형태는 동일합니다. 그리고 뒤에는 &변수를 입력합니다.
위 코드를 실행하면 printf 연산자에 입력한 문장이 출력되며 값을 사용자가 입력할 수 있습니다. 사용자가 입력하는 값은 순서대로 변수 num1 ,num2, num3에 저장이 됩니다.
할당된 변수 3개를 화면에 출력하면 아래 처렴 결과가 출력됩니다.
scanf 연산자를 사용하면서 반드시 같이 입력해주어야 하는 코드가 있습니다.
기본 매크로 입력란 가장 맨 위 첫번째 라인에 위치합니다. 이 코드는 scanf 연산자 보안 경고로 인한 컴파일 에러를 방지하는 역할을 합니다. 따라서 이 2가지 명령어는 언제나 같이 입력되어있어야합니다.
만일 컴파일 에러 방지를 해주지 않으면 아래에 이런 경고창이 출력됩니다.
scanf 연산자는 실수, 정수 , 문자를 모두 받을 수 있습니다.
앞서 알려드린 scanf 연산자 형태에 서식지정자 정수, 실수, 문자(%d %f %c)를 바꾸어주면 됩니다.
그렇다면 10, 1.23456 apple 을 순서대로 출력하는 코드를 만들어 보겠습니다.
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
int main()
{
int num1;
float num2;
char num3;
printf("정수 실수 문자를 입력하세요: ");
scanf("%d %f %c",&num1, &num2, &num3);
printf("%d\n", num1);
printf("%f\n", num2);
printf("%c\n", num3);
return 0;
}
서식지정자 외에는 달라진 내용이 없습니다.
scanf 연산자의 서식 지정자와 출력 연산자 printf 의 서식 지정자만 바꾸어 주면됩니다.
오늘 배운 scanf는 아직 문장 값을 저장할 수 없습니다. 이는 문자열이 저장될 공간을 선언하지 못하였기 때문입니다.
문장 값을 저장하는 방법은 포인터연산을 배운 뒤에 알려드리겠습니다.
'프로그래밍 언어 > C(C언어)' 카테고리의 다른 글
객체지향설계의 5대 원칙 - DIP 편 (0) | 2022.03.30 |
---|---|
[C언어] 최소한 조건문은 알아야 게임을 만들지! (0) | 2018.01.27 |
[C언어] 이번에는 소수로 표현해보자 실수 자료형 (0) | 2018.01.16 |
[C언어} 자료형의 종류와 쓰임 (0) | 2018.01.12 |
[C언어] 값에도 신분증이 있다? 변수 입력 (0) | 2018.01.10 |
- Total
- Today
- Yesterday
- Algorithm
- interview
- Spring
- 디자인패턴
- 스프링
- 스프링부트
- Matlab
- C언어
- docker
- java
- 알고리즘
- spring-cloud
- ajax
- kakao
- 그래프
- 자바
- CS
- 매트랩
- 백준
- security
- Solid
- 면접
- nginx
- 수학
- 프로그래머스
- 자격증
- springboot
- 릿코드
- OOP
- JPA
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |