-
Notifications
You must be signed in to change notification settings - Fork 0
CHAPTER 02
Tony Kim edited this page Oct 27, 2019
·
4 revisions
- 1번 문제
printf문은 한번만 사용해 여러 문장을 출력
#include <stdio.h>
int main(void)
{
// 원하는 내용을 출력
printf("int main(void)\n {\n \treturn 0; \n }\n");
return 0;
}
[실행 결과]
int main(void)
{
return 0;
}
- 2번 문제
문자열과 실수를 입력받아 출력
#include <stdio.h>
int main()
{
char name[20];
float x;
printf("이름: ");
// #define _CRT_SECURE_NO_WARNINGS 사용하면 _s를 붙이지 않아도 된다.
scanf_s("%s", name, 20);
printf("학점: ");
scanf_s("%f", &x);
printf("%s의 학점은 %f입니다.\n", name, x);
return 0;
}
[실행 결과]
이름: 홍길동
학점: 4.13
홍길동의 학점은 4.130000입니다.
- 3번 문제
여러 정수를 입력받아 각각 출력
#include <stdio.h>
int main(void)
{
int x, y, z;
// 정수를 %d로 입력 받음
printf("연? ");
scanf_s("%d", &x);
printf("월? ");
scanf_s("%d", &y);
printf("일? ");
scanf_s("%d", &z);
// 정수를 %d로 출력
printf("입력한 날짜는 %d년 %d월 %d일 입니다.", x, y, z);
return 0;
}
[실행 결과]
연? 2019
월? 12
일? 25
입력한 날짜는 2019년 12월 25일 입니다.
- 4번 문제
정수의 정밀도를 설정해 출력
#include<stdio.h>
int main(void)
{
int x, y, z;
// 정수를 %d로 입력 받음
printf("시? ");
scanf_s("%d", &x);
printf("분? ");
scanf_s("%d", &y);
printf("초? ");
scanf_s("%d", &z);
// %02d == 한자리 숫자라면 0을 같이 출력해 두자리로 표현
printf("입력한 시간은 %02d:%02d:%02d", x, y, z);
return 0;
}
[실행 결과]
시? 12
분? 1
초? 7
입력한 시간은 12:01:07
- 5번 문제
실수를 입력받아 원하는 소수점까지만 출력
#include<stdio.h>
int main(void)
{
float x;
// 실수는 %f로 입력 받는다.
printf("몸무게? ");
scanf_s("%f", &x);
// %.2f == 소수점 둘째 자리에서 반올림
printf("입력한 몸무게는 %.2fKG입니다.", x);
return 0;
}
[실행 결과]
몸무게? 72.3
입력한 몸무게는 72.30KG입니다.
- 6번 문제
문자를 입력받아 출력
#include<stdio.h>
int main(void)
{
char size;
printf("옷 사이즈(S,M,L)?");
scanf_s("%c", &size, 2);
printf("%c 사이즈를 선택했습니다.", size);
return 0;
}
[실행 결과]
옷 사이즈(S,M,L)?M
M 사이즈를 선택했습니다.
- 7번 문제
문자와 정수를 입력받아 출력
#include<stdio.h>
int main(void)
{
char ch;
int num;
// %c로 문자 %d로 정수를 입력
printf("커피 사이즈 S,T,G 와 수량?? ");
scanf_s("%c %d", &ch, 10, &num);
// %c로 문자 %d로 정수를 출력
printf("%c 사이즈 %d잔을 주문.", ch, num);
return 0;
}
[실행 결과]
커피 사이즈 S,T,G 와 수량?? G 10
G 사이즈 10잔을 주문.
- 8번 문제
실수를 입력받아 덧셈 뺄셈
#include<stdio.h>
int main(void)
{
float x, y;
// %f로 실수 입력
printf("실수 2개? ");
scanf_s("%f %f", &x, &y);
// %f로 실수 출력
printf("%f + %f = %f\n", x, y, x + y);
printf("%f - %f = %f\n", x, y, x - y);
return 0;
}
[실행 결과]
실수 2개? 12.34 0.2
12.340000 + 0.200000 = 12.540000
12.340000 - 0.200000 = 12.140000
- 9번 문제
16진수를 입력받아 10진수 출력
#include<stdio.h>
int main(void)
{
int x;
printf("16진수 정수? ");
// %x는 16진수를 입력받는다.
scanf_s("%x", &x);
// %x는 16진수를 출력한다.
// 16진수는 %x %X 두가지 방법으로 출력 가능
// ex) %x == ff12, %X == FF12
printf("16진수 %x는 10진수로 %d입니다.", x, x);
return 0;
}
[실행 결과]
16진수 정수? 1f
16진수 1f는 10진수로 31입니다.
- 10번 문제
8진수, 10진수, 16진수 중 한가지를 입력받아 8진수, 10진수, 16진수로 출력
#include<stdio.h>
int main(void)
{
int x;
printf("8진수로 입력하려면 012, 16진수로 입력하려면 0x12처럼 입력하시오.\n");
printf("정수?? ");
scanf_s("%i", &x); // 8,10,16진수 3가지 방법으로 입력 가능.
printf("8진수: %o\n", x); // %o 8진정수 출력
printf("10진수: %d\n", x); // %d 10진정수 출력
printf("16진수: %x\n", x); // %x 16진정수 출력
return 0;
}
[실행 결과]
8진수로 입력하려면 012, 16진수로 입력하려면 0x12처럼 입력하시오.
정수?? 0x12
8진수: 22
10진수: 18
16진수: 12
- 11번 문제
원하는 소수점 자릿수까지 출력
#include<stdio.h>
int main(void)
{
float x;
x = 3.13159265;
printf("pi = %.2f\n", x); // %.2f 는 소수점 아래 2자리만 표시
printf("pi = %.4f\n", x);
printf("pi = %.6f\n", x);
printf("pi = %.8f\n", x);
printf("pi = %e\n", x); // %e는 지수 출력
return 0;
}
[실행 결과]
pi = 3.13
pi = 3.1316
pi = 3.131593
pi = 3.13159275
pi = 3.131593e+00
- 12번 문제
3가지 문자열을 입력받아 출력
#include<stdio.h>
int main(void)
{
// 문자열 사용시 배열의 크기도 입력
char x[30], y[30], z[30];
printf("이름? ");
scanf_s("%s", x, 30);
printf("학과? ");
scanf_s("%s", y, 30);
printf("학번? ");
scanf_s("%s", z, 30);
printf("===================================\n");
printf("이름: %s\n", x);
printf("학과: %s\n", y);
printf("학번: %s\n", z);
printf("===================================");
return 0;
}
[실행 결과]
이름? 홍길동
학과? 메카트로닉스
학번? A1900111222
===================================
이름: 홍길동
학과: 메카트로닉스
학번: A1900111222
===================================
Visual Studio 2019 에서 작성 되었습니다.