728x90
#include <iostream>
int main()
{
using namespace std;
int arr[3] = {10, 20, 30}; //3개짜리 배열에 10, 20, 30 값 저장
int arr2[3] = {0,}; //3개짜리 배열에 모두 0 저장
int arr3[] = {40, 20, 10}; //배열 크기 모름, 일단 40, 20, 10 저장
cout << arr[0] << endl; //arr 배열의 0번째 값
cout << arr2[1] << endl; //arr2 배열의 1번째 값
cout << arr3[2] << endl; //arr3 배열의 3번째 값
cout << "&arr: " << &arr << endl; //arr의 주소
cout << "&arr[0]: " << &arr[0] << endl; //arr의 0번째 주소 (배열의 주소 == 배열의 첫번째 값 주소)
cout << "&arr[1]: " << &arr[1] << endl; //arr의 1번째 주소
cout << "(arr + 1): " << (arr + 1) << endl; //arr + 1의 주소(&arr[1]의 값이랑 같음)
cout << "*(arr + 1): " << *(arr + 1) << endl; //arr + 1의 주소의 값 : 여기서는 20
return 0;
}
백준 2577번
//B2577
#include <iostream>
using namespace std;
int main(){
int a,b,c,n,i;
int arr[10] = {0}; //10칸 arr배열을 0으로 초기화. 세자리수 세 개 곱은 10자리 안 넘음.
cin >> a >> b >> c; //a,b,c에 세 자연수 받기
n = a*b*c; //세 수 곱하기
while(n > 0){
arr[n%10] += 1; //나머지 연산. 인덱스 구하기. +1하면서 개수 더하기 ex)arr[0]->0 갯수 담은 배열값
n /= 10; //10으로 나누기. 몫
}
for(i=0; i<10; i++)
cout << arr[i] << endl; //한 줄씩 내려가면서 출력
return 0;
}
세 수를 a,b,c에 담아주고 arr에 결과 값을 담아서 구해줬다. 배열의 인덱스를 활용하여 풀었다.
728x90
'Programming Practice > C++' 카테고리의 다른 글
백준 2530 C++ (0) | 2023.08.30 |
---|---|
백준 수학 문제 (1) | 2023.01.17 |
배열/문자열 (0) | 2023.01.04 |
C++ 기초 (0) | 2022.12.08 |
Mingw64 설치 (0) | 2022.12.08 |