반응형

중앙 값 찾는 문제. 버블 정렬을 사용하면 쉽게 문제를 해결할 수 있다. 버블 정렬 후 두 번째 인덱스에 있는 값이 정답.

 

C언어

#include <stdio.h>
 
int main(){
    int num[5];
    int arrSize = sizeof(num)/sizeof(int);
    
    for(int i=0; i<arrSize; i++){
        scanf("%d"&num[i]);
    }
    
    for(int i=0; i<arrSize-1; i++){
        for(int j=0 ;j<arrSize-1; j++){
            if(num[j] > num[j+1]){
                int temp;
                temp = num[j];
                num[j] = num[j+1];
                num[j+1= temp;
            }
        }
    }
    
    printf("%d\n", num[2]);
    
    return 0;
}
반응형
반응형

상당히 빨리 해결했다.

마지막 조건문의 sum == 0 이라는 의미는 for문 안에 있는 if문이 한번도 실행되지 않았다는 의미이므로 입력된 모든 수가 짝수였다는 것을 알 수 있다.

C언어

 
#include <stdio.h>
 
int main(){
    int num[7];
    int sum = 0;
    
    for(int i=0; i<sizeof(num)/sizeof(int); i++){
        scanf("%d"&num[i]);
        if(num[i] % 2 == 1){
            sum += num[i];
        }
    }
    
    if(sum == 0){ 
        printf("%d\n"-1);
    }else{
        printf("%d\n", sum);
    }
    
    return 0;
}
 
반응형
반응형

C언어

 
#include <stdio.h>
 
int main(){
    char privateNumber[15]; // 주민등록번호 저장
    int birth[4]; // birth[0] : 년, birth[1] : 월, birth[2] : 일, birth[3] : 성별
    char gender; // // 성별
    
    scanf("%s", privateNumber);
    birth[3= privateNumber[7]-48;
    
    for(int i=0; i<3; i++){
        birth[i] = ((privateNumber[i*2]-48* 10+ (privateNumber[i*2+1- 48);
    }
    
    if(birth[3== 1 || birth[3== 3){ // 1 or 3일 경우 남자
        gender = 'M';
    }else// 아니면 여자
        gender = 'F';
    }
    
    printf("19%02d/%02d/%02d %c\n", birth[0], birth[1], birth[2], gender);
    
    return 0;
}
 
반응형

+ Recent posts