AR삽질러

C로 시작하는 컴퓨터 프로그래밍4판 - 3장 표준입출력 본문

C

C로 시작하는 컴퓨터 프로그래밍4판 - 3장 표준입출력

아랑팡팡 2023. 3. 15. 14:15
728x90

혼자해보기3-2

다음 코드를 실행할 때 발생하는 오류를 수정하시오.

#include<stdio.h>

int main(void) {

	char grade;
	printf("성적 등급을 입력하시오\n");
	getchar(grade);

	printf("당신의 성적 : ");
	putchar();
	printf("\n");
	
	return 0;
}

수정

#include<stdio.h>

int main(void) {

	char grade;
	printf("성적 등급을 입력하시오\n");
	grade = getchar();

	printf("당신의 성적 : ");
	putchar(grade);
	printf("\n");
	
	return 0;
}

 

1. 다음과 같은 결과를 출력하는 프로그램을 printf() 함수를 이용하여 작성하시오. 이때 정수형 변수number를 선언한 뒤 초기값으로 67을 할당하고 진수 변환은 변환 기호(명세)를 사용하시오.

#include<stdio.h>

int main(void) {

	int number = 67;

	printf("%d 를 8진수로 변환하면 %o이다.\n", number, number);
	printf("%d 를 10진수로 변환하면 %d이다.\n", number, number);
	printf("%d 를 16진수로 변환하면 %x이다.\n", number, number);
	printf("%d 를 문자형으로 변환하면 %c이다.\n", number, number);

	return 0;
}

 

2. 다음 프로그램의 오류를 수정하시오.

#include<stdio.h>

int main(void) {

	int age = 20;
	printf("당신의 나이는 %c입니다.\n", age);

	return 0;
}

수정

#include<stdio.h>

int main(void) {

	int age = 20;
	printf("당신의 나이는 %d입니다.\n", age);

	return 0;
}
#include<stdio.h>

int main(void) {

	int age;
	printf("나이를 입력하세요\n");
	scanf("%d", age);
	printf("당신의 나이는 %d세입니다.\n", age);

	return 0;
}

수정

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

int main(void) {

	int age;
	printf("나이를 입력하세요\n");
	scanf("%d", &age);
	printf("당신의 나이는 %d세입니다.\n", age);

	return 0;
}

 

3. 다음과 같은 프로그램을 작성하시오.

1) 한 문자를 입력받아 출력하는 프로그램을 작성하시오.(단, 문자 입출력 함수를 이용한다.)

#include<stdio.h>
#pragma warning(disable:4996)
int main(void) {

	char one;

	printf("문자하나를 입력 : ");
	
	one = getchar();
	putchar(one);


	return 0;
}

2) 1번과 동일한 프로그램을 scanf()와 printf()함수를 이용하여 작성하시오.

#include<stdio.h>
#pragma warning(disable:4996)
int main(void) {

	char one;
	printf("문자하나를 입력 : ");
	scanf("%c", &one);

	printf("입력받은 문자 : %c", one);


	return 0;
}

3) 다음과 같은 실행 결과가 출력되도록 탈출 기법을 이용한 프로그램을 작성하시오.

#include<stdio.h>

int main(void) {

	printf("\\ \"생일축하합니다.\" \\\n\n");

	printf("\\ \"밤의 습도는 50%입니다.\"\\ ");
	
	return 0;
}

 

4. 섭씨온도를 화씨온도로 바꾸는 프로그램을 작성하시오. 이때 섭씨온도는 정수형으로 입력받고, 화씨 온도는 실수형으로 출력하시오.[단, 화씨온도 = (섭씨온도 x 1.8) + 32].

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

int main(void) {

	int c = 0;
	double h = 0;

	printf("섭씨온도 입력 : ");
	scanf("%d", &c);

	h = (c * 1.8) + 32;

	printf("화씨온도 : %.2f", h);

	return 0;
}

 

5. 키와 몸무게를 입력 받아 BMI(체질량지수)를 계산하여 출력해주는 프로그램을 작성하시오. BMI = 몸무게(kg) / 키m]

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

int main(void) {

	printf("BMI계산\n");

	double hei = 0;
	double kg = 0;

	printf("키입력 : ");
	scanf("%lf", &hei);

	printf("몸무게 입력 : ");
	scanf("%lf", &kg);

	hei = hei / 100;
	double bmi = kg / (hei * hei);
	printf("당신의 BMI는 : %2.f", bmi);

	return 0;
}

 

6. 원의 넓이를 출력하는 프로그램을 작성하시오. 이때 반지름은 double형으로 입력받고 원주율 PI는 define으로 정의하여 사용한다.

int main(void) {

	double radius;
	printf("반지름 입력 : ");
	scanf("%f", &radius);

	double one;
	one = radius * radius * PI;

	printf("원의 넓이 : %.2f", one);
	return 0;
}

 

7. 가로와 세로의 길이를 입력받아 사각형의 면적을 출력하는 프로그램을 작성하시오. 이때 가로와 세로의 길이는 float형으로 입력받고, 넓이는 가로와 세로를 곱한 후에 int형으로 명시적 형 변환을한다.

int main(viod) {

	float wid, hei;

	printf("가로 : ");
	scanf("%f", &wid);

	printf("세로 : ");
	scanf("%f", &hei);

	int result;
	result = (int)wid * (int)hei;
	printf("사각형의 면적 : %d", result);


	return 0;
}

 

728x90
반응형
LIST