프로그래밍/코딩테스트

[백준] 11720번 C,C++ 초기화를 안해 틀려버린

gameObject 2023. 10. 23. 21:06
728x90

SUM값을 초기화를 하지 않아 연속하여 틀렸었다.

쓰레기 값이 들어가 있을 수 있으므로 초기화 하는 습관을 들이자

 


틀렸던 코드 1번

원인 : 연속된 숫자가 입력이 들어온다는 부분이 string으로 받아야 한다는 생각을 못했다.

 

틀렸던 코드 2번

원인 : SUM을 초기화 하지 않아, 쓰레기값이 들어있어 오류가 발생하였다.

// 틀렸던 코드 1번

#include<stdio.h>

int main()
{
    int n;
    int sum;
    for(int i =0; i < n; i++){
    scanf("%d",&n);
        sum += n;
    }
    printf("%d",sum);
}

// 틀렸던 코드 2번

#include<stdio.h>

int main()
{
    int n, sum; 
    char arr[101]; //배열 선언
    scanf("%d",&n);
    scanf("%s",&arr);
    for(int i =0; i<n; i++){
        sum += arr[i] -'0';
    }
    printf("%d",sum);
}

 

정답코드

// C : stdio.h 활용
#include<stdio.h>

int main()
{
    int n, sum = 0; 
    char arr[101]; //배열 선언
    scanf("%d",&n);
    scanf("%s",&arr);
    for(int i =0; i<n; i++){
        sum += arr[i] -'0';
    }
    printf("%d",sum);
}


// C++ : iostream 활용

#include<iostream>

using namespace std;

int main()
{
    int n, sum = 0;
    string arr;
    
    cin >> n >> arr;
    
    for(int i = 0; i < n; i++)
    {
        sum += arr[i] - '0';
    }
    
    cout << sum;
}

 

 

728x90

'프로그래밍 > 코딩테스트' 카테고리의 다른 글

[백준] 3052번  (0) 2023.10.18
[백준] 5597번, sort사용법 (c++)  (1) 2023.10.16
[백준] 10951번 A+B, EOF(End-of-file)  (1) 2023.10.09
[백준_C++] 15552번 : 빠른 A+B  (1) 2023.10.04