본문 바로가기
흔한 학교 생활/든든한 C 프로그래밍

[C언어] 든든한 C 프로그래밍 3판 4장 연습문제 답 풀이

by 흔한 학생 2023. 7. 3.
반응형

yundu.co.kr

[4-2]

#include <stdio.h>
#pragma warning(disable:4996)
#define PI 3.14159

int main()
{
	int radius;
	printf("반지름 ? ");
	scanf("%d", &radius);
	printf("반지름이 %d인 원의 둘레 : %lf\n", radius, 2 * PI * radius);
	printf("반지름이 %d인 원의 넓이 : %lf\n", radius, PI * radius * radius);

	return 0;
}

결과

반지름 ? 7
반지름이 7인 원의 둘레 : 43.982260
반지름이 7인 원의 넓이 : 153.937910

 

[4-8]

double로 계산된 값을 int로 바꿔 출력하기에 경고 메세지가 뜨며 컴파일이 안될 수 있다.

때문에 #define _CRT_SECURE_NO_WARNINGS 을 추가한다.

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <ctype.h>

int main()
{
	char celsius;
	int tmp, out;

	printf("화씨이면 F, 섭씨이면 C 입력 ? ");
	scanf("%c", &celsius);
	celsius = toupper(celsius); //toupper : 대문자로 변경하는 함수
	
	printf("%s 온도? ", celsius == 'F' ? "화씨" : "섭씨");
	scanf("%d", &tmp);

	//화씨 섭씨 구분하여 온도 계산
	out = celsius == 'F' ? (tmp - 32) / 1.8 : tmp * 1.8 + 32;
	//화씨 섭씨 구분하여 출력
	printf("%s를 %s로 변환: %d", celsius=='F'?"화씨":"섭씨", celsius == 'F' ? "섭씨" : "화씨", out);

	return 0;
}

 

결과

화씨이면 F, 섭씨이면 C 입력 ? f
화씨 온도? 100
화씨를 섭씨로 변환: 37
화씨이면 F, 섭씨이면 C 입력 ? c
섭씨 온도? 34
섭씨를 화씨로 변환: 93

 

반응형