Small Grey Outline Pointer '코딩공부' 태그의 글 목록 (4 Page)
본문 바로가기

코딩공부45

baekjoon c++ 2839 설탕배달/ 그리디 알고리즘 3과 5로 나누어질 때만 잘 출력됐고 3kg, 5kg 봉지를 같이 사용해야 할 때는 출력이 안되서 계속 막혔다 구글링해서 다시 풀어봤다 맨처음에 풀었던 방식 #include void main() { int N; int a, b=0; int sum = 0; int cnt3; int cnt5; scanf_s("%d", &N); while (1) { if (N % 3 == 0 || N % 5 == 0) { if (N % 3 == 0) { cnt3 = N / 3; printf("%d\n", cnt3); break; } else if (N % 5 == 0) { cnt5 = N / 5; printf("%d\n", cnt5); break; } } else { N = a + b; cnt3 = N / 3; cnt5 = .. 2022. 3. 26.
포인터의 목적/메모리의 동적 할당 포인터: 주소값 -포인터 변수: 주소를 담는 변수 -포인터 상수: 주소를 담는 상수(배열) & : 주소 연산자(번지 연산자) 자료형* : 포인터 연산자 *주소값 : 참조 연산자 #include void main() { int data = 10; int* pData = &data; //int*포인터연산자 printf("%d\n", *pData); // *pData참조연산자 *pData = 20; printf("%d\n",data); } #include //5개의 정수를 입력받고 최소값과 최대값을 구해주는 함수 //포인터를 사용하여, 리턴을 받지 않아도 값이 출력 되도록 void getMaxAndMin(int arData[], int*max, int*min) { *max = arData[0]; *min = .. 2022. 3. 25.
함수 예제 //f(x)=2x+1, 단 x는 정수이다 #include int f(int x) { int result = 2 * x + 1; return result; } //main함수=실행 프로그램을 만들어주는 함수 void main() { int result = f(3); printf("%d", result); //결과 7 } #include //1~10까지 printf()로 출력하는 함수 void printfFrom1To10() { for (int i = 0; i < 10; i++) { printf("%d\n", i + 1); } }//return이 없으므로 위에 void 써주기 //1~10까지의 합을 구해주는 함수 int getTotalFrom1To10() { //total은 i+1을 누적한것이므로 정수 따라.. 2022. 3. 22.
baekjoon c++ 10952 A+B #include int main() { int a = 0, b = 0; while (1) { scanf("%d %d", &a, &b); if (a == 0 && b == 0) { break; } else { printf("%d\n", a + b); } } } 2 4 6 1 5 6 3 5 8 0 0 => 0 0 을 입력하면 종료 2022. 3. 20.
baekjoon c++ 10871 X보다 작은 수 #include int main() { int n, x; int a; scanf("%d %d", &n, &x); for (int i = 1; i 2022. 3. 20.
다차원 배열 연습문제/3차원배열/배열포인터 문자열과 배열을 사용하여 문제풀기 #include void main() { char bingo[3][3] = { ' ', }; for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { if (i == j) { bingo[i][j] = 'O'; } else { bingo[i][j] = 'X'; } } } for (int i = 0; i < 3; i++) { for (int j = 0; j < 3; j++) { printf("%c ", bingo[i][j]); } printf("\n"); } } O X X X O X X X O #include void main() { int bingo[3][3]; for (int i = 0; i < 3; i++) { for .. 2022. 3. 19.
3차원 배열/ 문자열배열 3차원 배열의 한 면의 크기 == 2차원 배열의 크기 3차원 배열의 한 행의 크기 == 1차원 배열의 크기 #include void main() { int temp[2][2][2] = { { {1,2}, //0면의 0행 {3,4} //0면의 1행 }, //0면 { {5,6}, //1면의 0행 {7,8} //1면의 1행 } //1면 }; printf("0번째 면\n"); printf("%d %4d\n", temp[0][0][0], temp[0][0][1]); //0면의 0행0열 0행1열 printf("%d %4d\n", temp[0][1][0], temp[0][1][1]); //0면의 1행0열 1행1열 printf("1번째 면\n"); printf("%d %4d\n", temp[1][0][0], temp[.. 2022. 3. 18.
2차원 배열 /for문 복습(이중for문) 2차원 배열 배열 안에 배열 2차원 배열 선언 자료형 배열명[행][열] = {{값1, 값2}, {값3, 값4}, {값5, 값6}, ...}; 자료형 배열명[행][열]= [초기값, }; 2차원 배열 사용 int arrData[2][3]={0, } *(배열명 + 9) +2 //주소값 *(*(배열명 +2)) // 값 (두번 접근했으므로 주소값이 아닌, 값!) *(*(배열명)+2) = // 0행 3열 이중 for문(Nested For) A: for (초기식; 조건식; 증감식){ 실행할 문장; B: for(초기식; 조건식;증감식){ 실행할 문장; } 실행할 문장; } A 반복문은 안에 작성 된 문장이 모두 끝나야 다음 반복으로 넘어가기 때문에 B 반복문은 A 반복 횟수만큼 초기식으로 돌아간다 실행할 문장 1 : .. 2022. 3. 12.
포인터와 배열 연습문제 풀기, null문자 포인터와 배열 연습문제 #include void main() { //1~100 까지 배열에 담은 후 홀수만 출력 int arData[100] = { 0, }; for (int i = 0; i < 100; i++) { arData[i] = i + 1; if (arData[i] % 2 == 1) { printf("%d\n", arData[i]); } } //1~100까지 배열에 담은 후 짝수의 합 출력 int arData[100] = { 0, }; int total = 0; for (int i = 0; i < 100; i++) { arData[i] = i + 1; if (arData[i] % 2 == 0) { total += arData[i]; } } printf("%d\n", total); //A~F까지 .. 2022. 3. 6.
포인터와 배열 #include void main() { int a = 20; int *ptr_a; //포인터 한개를 선언 ptr_a = &a; printf("a의 값: %d\n", a); printf("a의 주솟값: %d\n", &a); printf("ptr_a 에 저장된 값: %d\n", ptr_a); printf("ptr_a가 가르키는 변수의 값: %d\n", *ptr_a); //*ptr_a = a int a = 10; int b = 20; int* ptr; ptr = &a; printf("ptr이 가리키는 변수에 저장된 값: %d\n", *ptr); ptr = &b; printf("ptr이 가리키는 변수에 저장된 값: %d\n", *ptr); int a = 10; int* ptr; ptr = &a; int** p.. 2022. 3. 6.