본문으로 바로가기

C언어 7일차(제어문)

category 스마트팩토리/C언어 2020. 10. 7. 13:50

제어문

위에 내용을 코딩을 해보면 초기값이 정해지지 않으면 컴파일이 되지 않는다.

쓰레기 값이 들어있기에 사용을 금지한다.

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

int main(void)
{
	int a, b;
	int big ,small;

	printf("두 정수를 입력하세요 : ");
	scanf("%d %d", &a, &b);

	big = a;
	small = b;

	if (a < b)
	{
		big = b;
		small = a;

	}
	printf("Big num : %d, Small num : %d\n", big, small);
	return 0;

}

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

int main(void)
{
	double avg;
	char grade;
	printf("평균점수를 입력하세요 :");
	scanf("%1f", &avg);
	if (avg >= 90.0) grade = 'A';
	else if (avg >= 80.0) grade = 'B';
	else if (avg >= 70.0) grade = 'C';
	else grade = 'F';

	printf("학점은 %c입니다. \n", grade);
	return 0;

}

여기서 키포인트는 switch()안에는 정수값만 들어갈수 있다. 다른값이 들어가게 되면 오류가 뜬다.

예를 들어서 5, 6 이런게 되지 6.1 이나 5>a 이런값들은 안된다.

 

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

int main(void)
{
	int lot;

	printf("당첨 번호를 입력하세요:");
	scanf("%d", &lot);

	switch (lot)
	{
	case 11:
		printf("1등 : 10억\n");
		break;
	case 22:
		printf("2등 : 3억\n");
		break; 
	case 33:
		printf("3등 : 1억\n");
		break;
	default:
		printf("당첨번호가 없습니다.\n");
		break;
	}
	return 0;
}

goto문은 사용하지 않는게 낫다.

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

int main(void)
{
	int num;
	printf("숫자 입력(1,2,3) :");
	scanf("%d",&num);

	switch (num)
	{
	case 1:
		goto label1;
	case 2:
		goto label2;
	default:
		goto label3;
	}
label1:
	printf("숫자 1을 입력하셨습니다.\n");
label2:
	printf("숫자 2를 입력하셨습니다.\n");
label3:
	printf("숫자 3 혹은 그 외 수를 입력하셨습니다.\n");

	return 0;
}

 

'스마트팩토리 > C언어' 카테고리의 다른 글

C언어 9일차(포인터)  (0) 2020.10.14
C언어 8일차(반복문)  (0) 2020.10.13
C언어 6일차  (0) 2020.10.06
C언어 5일차  (0) 2020.10.05
C언어 4일차  (0) 2020.09.25