반복구조

계속 반복해야 하는 상황

1) 조건에 맞는동안 계속 반복

 

2) 횟수가 정해진 반복

간단한 while-switch 문 예제

#include <stdio.h>
int calculator(int a, char op, int b)
{
    int result;
    switch(op){
        case '+':
            result=a+b;
            break;
        case '-':
            result=a-b;
            break;
        case '*':
            result=a*b;
            break;
        case '/':
            result=a/b;
            break;
        case '%':
            result=a%b;
            break;
        default:
            printf("잘못된 연산자를 입력했습니다.");
            return -1;
    }
}
void testCaluclator(void){
    int a, b, c;
    char op;
    printf("숫자 연사자 숫자 형식으로 입력하세요");
    scanf("%d %c %d", &a,&op,&b);
    
    c=calculator(a,op,b);
}
void testGrade(){
    int score;
    printf("input score");
    scanf("%d",&score);
    if(score>90) printf("A\n");
    else if(score >80) printf("B\n");
    else if(score>70) printf("C\n");
    else if(score>60) printf("D\n");
    else printf("F\n");
}
int leafyear(int year){
    if(((year%4==0)&&(year%100!=0))||(year%400==0))
        return 29;
    else
        return 28;
}
int daysofmonth(int month){
    int result,year;
    switch(month)
    {   if(month<1||month>12){
            printf("잘못된 입력입니다.");
            return -1;
    }
        case 2:
            printf("input year: ");
            scanf("%d",&year);
            result=leafyear(year);
            break;
        case 4:
        case 6:
        case 9:
        case 11:
            result=30;
            break;
        default:
            result=31;
    }
    return result;
}
void testDaysofmonth()
{
    int mon;
    printf("몇일인지 알고 싶은 월을 입력하세요 : ");
    scanf("%d",&mon);
    printf("%d월은 '%d일까지 있습니다",mon,daysofmonth(mon));
}
int main()
{
    int cont=1;
    int choice=0;
    
    while(cont)
    {
        printf("input choice : ");
        scanf("%d",&choice);
        switch(choice){
            case 1:
                testCaluclator();
                break;
            case 2:
                testGrade();
                break;
            case 3:
                testDaysofmonth();
                break;
            case -1:
                cont=0;
                break;
            default:
                printf("잘못된 입력입니다.");
        }
    }
    return 0;
}

 

'Computer engineering > C' 카테고리의 다른 글

반복문-While(3)  (0) 2021.05.03
반복문-While(2)  (0) 2021.05.02
If-else 조건문  (0) 2021.04.21
If 조건문  (0) 2021.04.11
4. 대입 및 산술 연산자  (0) 2021.04.01

+ Recent posts