C언어_04 if, switch

2024. 9. 12. 18:00폴리텍_하이테크_AI소프트웨어/C언어

1. if 10보다 작으면 *10

#include<stdio.h>
// 조건문

int main() {

	int a;
	printf("정수를 입력하세요: ");
	scanf_s("%d", &a);
	
	if (a > 10) {
		printf("%d를 10배 한 결과는 %d입니다.\n", a, a * 10);
		printf("프로그램을 마칩니다.\n");
	}

	else
	{
		printf("프로그램을 마칩니다.\n");
	}
	return 0;
}

2. if 홀수 짝수 구분

#include<stdio.h>
// 홀수, 짝수 판별

int main() {

	int a;
	printf("정수를 입력하세요: ");
	scanf_s("%d", &a);
	
	if (a % 2==0) {
		printf("짝수입니다.\n");
	}

	else
	{
		printf("홀수입니다.\n");
	}
	return 0;
}

 

3. if 절대값

#include<stdio.h>
// 입력받는 수가 음수면 양수로 바꿔주는 프로그램

int main() {

	float a;
	printf("정수를 입력하세요: ");
	scanf_s("%f", &a);
	
	if (a < 0) {
		a *= -1.0;
	}

	printf("결과는 %.1f\n", a);
	return 0;
}

 

4. if / else 절댓값

#include<stdio.h>
// 입력 받은 수를 양수, 음수, 0으로 구분 if/else

int main() {

	int a;
	printf("정수를 입력하세요: ");
	scanf_s("%d", &a);
	
	if (a == 0) {
		printf("입력된 수는 0입니다.");
	}
	else {
		(a > 0) ? printf("입력된 수는 양수입니다.") : printf("입력된 수는 음수입니다.");
	}
	return 0;
}

 

5. if / else if / else 절대값

#include<stdio.h>

// if/ else if/ else

// 입력받은 수를 양수, 음수, 0으로 구분

int main() {

	int a;
	printf("정수를 입력하세요: ");
	scanf_s("%d", &a);
	
	if (a == 0) {
		printf("입력된 수는 0입니다.");
	}
	else if(a>0){
		printf("입력된 수는 양수입니다.");
	}
	else
	{
		printf("입력된 수는 음수입니다.");
	}
	return 0;
}

6. if문 사용해서 학점계산

#include<stdio.h>
// 학점 프로그램

int main() {

	int a;
	printf("당신의 시험점수는 몇점인가요?\n ");
	scanf_s("%d", &a);
	
	if (a >= 90) 
		printf("당신은 A학점입니다.");
	else if (a >= 80)
		printf("당신은 B학점입니다.");
	else if (a >= 70) 
		printf("당신은 C학점입니다.");
	else
		printf("당신은 F학점입니다.");
	return 0;
}

7. if 30보다 크고 40보다 작은 수 판별

#include<stdio.h>

// 30<a<40

int main() {
	int a;
	printf("30보다 크고 40보다 작은 수를 입력하세요\n");
	scanf_s("%d", &a);

	if (a > 30 && a < 40)
		printf("올바른 수를 입력했습니다.");
	else
		printf("잘못된 수를 입력했습니다.");
}

8. 두 개의 정수를 입력받아 큰 수 출력

#include<stdio.h>

// 두개의 정수를 입력받아 큰 수 출력

int max(int a, int b);

int main() {
	int a, b;
	printf("첫 번째 수를 입력하세요\n ");
	scanf_s("%d", &a);
	printf("두 번째 수를 입력하세요\n ");
	scanf_s("%d", &b);
	
	printf("큰 수는 %d입니다.",max(a,b));
	return 0;
}

int max(int a, int b) {
	if (a >= b)
		return a;
	else
		return b;
}

 

9. switch 월의 마지막달

#include<stdio.h>

// switch

int main() {
	int a, b = 0;
	printf("월을 입력하세요\n");
	scanf_s("%d", &a);
	switch (a){
	case 1:
	case 3:
	case 5:
	case 7:
	case 8:
	case 10:
	case 12:
		b = 31;
		break;
	case 4:
	case 6:
	case 9:
	case 11:
		b = 30;
		break;
	 case 2:
		b = 28;
		break;
	}


	printf("%d월은 %d일까지 있습니다.",a,b);

	return 0;
}

10. switch 학점계산

#include<stdio.h>

// 학점계산 switch

int main() {
	int a;
	printf("당신의 시험점수는 몇점인가요? \n");
	scanf_s("%d", &a);
	switch (a/10){
	case 10:
	case 9:
		printf("당신은 A학점입니다");
		break;
	case 8:
		printf("당신은 B학점입니다");
		break;
	case 7:
		printf("당신은 C학점입니다");
		break;
	default:
		printf("당신은 D학점입니다");
		break;
	}
	
	return 0;
}

11. A는 80점, B는 70점이 둘 다 넘어야 Pass

#include<stdio.h>

// 조건문 실습1

int main() {
	int a, b;
	printf("A타입 시험점수는 몇점인가요?\n");
	scanf_s("%d", &a);
	printf("B타입 시험점수는 몇점인가요?\n");
	scanf_s("%d", &b);

	if (a > 80 && b > 70) 
		printf("Pass");
	else
		printf("Fail");

	return 0;
}

 

12. if, switch 키와 몸무게를 입력받아 BMI 계산하고 비만 판별

#include<stdio.h>
// 조건문 실습 2

int main() {
	float a, b;
	float BMI;
	printf("키를 입력하세요(cm)\n");
	scanf_s("%f", &a);
	printf("몸무게를 입력하세요(kg)\n");
	scanf_s("%f", &b);
	a /= 100;
	BMI = b / (a * a);
	printf("당신의 BMI지수는 %.1f입니다.\n", BMI);
	if (BMI >= 35)
		printf("고도 비만입니다");
	else if (BMI >= 30)
		printf("중도 비만입니다");
	else if (BMI >= 25)
		printf("경도 비만입니다");
	else if (BMI >= 23)
		printf("과체중입니다");
	else if (BMI >= 18.5)
		printf("정상입니다");
	else
		printf("저체중 입니다");

	return 0;
}

 

13. 첫번째 수와 두번째 수를 입력받아 절댓값이 더 큰 수 출력

      절댓값은 함수사용

#include<stdio.h>

// 조건문 실습 3

int abs(int a);
int max(int a, int b);

int main() {
	int a, b;
	printf("첫 번째 수를 입력하세요\n");
	scanf_s("%d", &a);
	printf("두 번째 수를 입력하세요\n");
	scanf_s("%d", &b);

	printf("%d과 %d중 절댓값이 더 큰 수는 %d입니다.\n", a, b, max(abs(a), abs(b)));

	return 0;
}

int abs(int a) {
	if (a > 0) {
		return a;
	}
	else
		return -a;
}

int max(int a, int b) {
	if (a > b) {
		return a;
	}
	else
	{
		return b;
	}
}

14. if문으로 평균점수로 학점계산

#include<stdio.h>
// 조건문 실습 4

int main() {
	int a, b, c;
	float avgtest;

	printf("첫번째 시험점수는 몇점인가요? \n");
	scanf_s("%d", &a);
	printf("두번째 시험점수는 몇점인가요? \n");
	scanf_s("%d", &b);
	printf("세번째 시험점수는 몇점인가요? \n");
	scanf_s("%d", &c);

	avgtest = (a + b + c) / 3.0;
	printf("당신의 평균은 %.1f점 입니다.\n", avgtest);

	if (avgtest>=90)
		printf("당신은 A학점입니다\n");
	else if (avgtest>=80)
		printf("당신은 B학점입니다\n");
	else if (avgtest>=70)
		printf("당신은 C학점입니다\n");
	else
		printf("당신은 D학점입니다\n");

	return 0;
}

5. 스위치로 평균점수로 학점계산

#include<stdio.h>
// 조건문 실습 5

int main() {
	int a, b, c;
	float avgtest;

	printf("첫번째 시험점수는 몇점인가요? \n");
	scanf_s("%d", &a);
	printf("두번째 시험점수는 몇점인가요? \n");
	scanf_s("%d", &b);
	printf("세번째 시험점수는 몇점인가요? \n");
	scanf_s("%d", &c);

	avgtest = (a + b + c) / 3.0;
	printf("당신의 평균은 %.1f점입니다\n", avgtest);
	switch ((int)avgtest /10){
	case 10:
	case 9:
		printf("당신은 A학점입니다\n");
		break;
	case 8:
		printf("당신은 B학점입니다\n");
		break;
	case 7:
		printf("당신은 C학점입니다\n");
		break;
	default:
		printf("당신은 D학점입니다\n");
		break;
	}

	return 0;
}

16. switch로 학점계산인데 F추가 (과락 40점미만, 평균 60미만)

#include<stdio.h>
// 조건문 실습 6

int main() {
	int a, b, c;
	float avgtest;

	printf("첫번째 시험점수는 몇점인가요? \n");
	scanf_s("%d", &a);
	printf("두번째 시험점수는 몇점인가요? \n");
	scanf_s("%d", &b);
	printf("세번째 시험점수는 몇점인가요? \n");
	scanf_s("%d", &c);

	avgtest = (a + b + c) / 3.0;


	if (a<40 || b<40 || c<40)
	{
		printf("40점을 넘지 못했습니다\n당신은 F학점입니다.");
	}
	else if (avgtest < 60) {
		printf("당신의 평균은 %.1f점 입니다.\n", avgtest);
		printf("평균 60점을 넘지 못했습니다\n당신은 F학점입니다.");
	}
	else {
		printf("당신의 평균은 %.1f점 입니다.\n", avgtest);
		switch ((int)avgtest /10){
			case 10:
			case 9:
				printf("당신은 A학점입니다\n");
				break;
			case 8:
				printf("당신은 B학점입니다\n");
				break;
			case 7:
				printf("당신은 C학점입니다\n");
				break;
			default:
				printf("당신은 D학점입니다\n");
				break;
			}
	}
	return 0;
}