티스토리 뷰

728x90

현 포스팅에서 설명하는 모든 문제는 codeup.kr 사이트에 있는 문제입니다. 여기 있는 문제 말고도 다양한 문제들이 준비되어 있으니 흥미 있으시다면 도전해보세요!

<codeup사이트란?> :알고리즘 관련 다양한 문제들을 풀면서 실력을 높일 수 있는 유용한 문제풀이 사이트

접속은 여기를 클릭해주세요. <codeup.kr>

「1276번 문제」

입력:자연수 n이 입력된다. (n <= 12)

출력:n!의 값을 출력한다.

1
2
3
4
5
6
7
8
9
10
11
12
13
#include <stdio.h>
 
int main(){
    int a,b,c,d,e,f;
    int sum = 1;
    
    scanf("%d"&a);
    for(b = 1; b<=a; b++){            //b의 값이 입력받은 수가 될때까지 1씩더해짐
        sum = sum * b;                //계속해서 b의 값을 sum에 곱함[(1*2*3...*a) = a!]
    }
    printf("%d", sum);
}
 
cs

「1277번 문제」

입력:입력으로 N이 주어지고 그 다음줄에 N개의 데이터가 공백으로 구분되어 입력된다.(단, N>=1인 홀수)

출력:첫번째, 중간, 마지막 데이터 값을 출력한다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
 
int main(){
    
    int a,b,c,d,e;
    int x,y,z;
    int num,add[100];
 
    scanf("%d"&num);
    
    for(a = 1; a <= num; a++){                //처음 입력받은 수만큼 반복
        scanf("%d"&add[a]);                //입력받은 값을 add배열에 추가
        y = num / 2;                        //y에 num을 2로 나눈 값이 들어감(for문 밖에 있어도 됨)
        if(a == y + 1){                        //a가 y+1과 같다면
            x = add[a];                        //x에 그때의 입력받은 값을 저장(add[a])
        }
    }
    printf("%d %d %d", add[1],x,add[num]);    //첫번째 데이터, 중간 데이터, 마지막데이터를 
cs

「1278번 문제」

입력:1이상의 자연수 n이 입력된다. (n은 int 범위)

출력:그 숫자가 몇 자릿수 인지 출력하시오.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <stdio.h>
 
int main(){
    int a,b,c,d,e;
    
    scanf("%d"&a);
    
    
    if(a < 10){
        printf("1");
    }else if(a / 1000000000 > 0){        //int의 최대값이 2,147,483,647이기때문에 여기까지만 알아보면 된다.
        printf("10");
    }else if(a / 100000000 > 0){
        printf("9");
    }else if(a / 10000000 > 0){
        printf("8");
    }else if(a / 1000000 > 0){
        printf("7");
    }else if(a / 100000 > 0){
        printf("6");
    }else if(a / 10000 > 0){
        printf("5");
    }else if(a / 1000 > 0){
        printf("4");
    }else if(a / 100 > 0){
        printf("3");
    }else if(a / 10 > 0){
        printf("2");
    }
    
    
}
 
cs

「1279번 문제」

입력:두 자연수 a, b를 입력 받는다. (반드시 a가 b보다 같거나 작게 입력된다.)

출력:a, b 사이의 수 중 홀수는 더하고 짝수는 뺀 결과를 출력하시오.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
#include <stdio.h>
 
int main(){
    int a,b,c,d,e,f;
    int num = 0;
    
    scanf("%d %d"&a, &b);
    for(a; a<=b; a++){            //입력받은 a값이 b가 될때까지 1씩 더하면서 
        
        if(a % 2 == 1){            //a가 홀수일경우(a를 2로 나눈 나머지가1)
            num = num + a;        //num에서 그때의 a값을 더함
        }
        if(a % 2 == 0){            //a가 짝수일경우(a를 2로 나눈 나머지가0)
            num = num - a;        //num에서 그때의 a값을 뺌
        }
    }
    printf("%d",num);
}
 
cs

「1280번 문제」

입력:두 자연수 a, b를 입력 받는다.(반드시 a가 b보다 같거나 작게 입력된다.)

출력: 홀수는 더하고 짝수는 빼는 식을 보여준후 결과를 출력한다.  첫수가 양수일 경우에도 앞에 +를 붙여서 출력.          단 결과가 양수일 경우에는 +를 붙이지 않는다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
 
int main(){
    int a,b,c,d,e,f;
    int num = 0;
    
    scanf("%d %d"&a, &b);
    for(a; a<=b; a++){
        
        if(a % 2 == 1){                //a가 홀수이면
            num = num + a;            //num에 a를 더하고
            printf("+%d", a);        //+를 붙여 그때의 a값을 출력(ex:+5)
        }
        if(a % 2 == 0){                //a가 짝수이면
            num = num - a;            //num에서 a를 빼고
            printf("-%d", a);        //-를 붙여 그때의 a값을 출력(ex:-4)
        }
    }
    printf("=%d",num);                //=을 붙여 계산이 모두 끝난 num을 
}
 
cs
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함