#include <iostream>
using namespace std;
void main() {
/*
int num1;
int num2;
int num3;
//배열 : 똑같은 자료형을 나열시켜놓은 묶음
//자료형 변수name[개수];
//3개의 숫자를 나열 시키는 변수
int arr[3];
arr[0] = 10;
arr[1] = 20;
arr[2] = 30;
printf("%p %p %p \n", &num1, &num2, &num3);
printf("%p %p %p \n", &arr[0], &arr[1], &arr[2]);
cout << arr[0] << " , " << arr[1] << " , " << arr[2] << endl;
*/
===============================================================================
//문자를 담을 배열변수 10개 생성 후 0~9번째 인덱스까지 A~J를 차례대로 대입 후 출력
const int SIZE = 10;
char a[SIZE];
char k = 65;
for (int i = 0; i < 10 ; i++) {
a[i] = k;
k++;
}
for (int j = 0; j < SIZE; j++) {
cout << j << "는 " << a[j] << endl;
}
===============================================================================
//배열의 개수 구하기
int arr[] = { 1,2,3,4,5 };
cout << sizeof(arr)/sizeof(int) << endl;
char arr[] = { 'A', 'B', 'C' };
cout << sizeof(arr);
===============================================================================
int j = 0;
int arr[] = { 1,2,3,4,5 }; //1,2,3,4,5 넣음
j = arr[sizeof(arr)/sizeof(int )-1];
for (int i = 4; i > 0; i--) {
arr[i] = arr[i-1];
} arr[0] = j;
for (int k = 0; k < 5; k++) {
cout << arr[k] << endl;
}
===============================================================================
//답안
const int SIZE = 100;
int arr2[SIZE], k =0;
int arr1[] = { 1,2,3};
int index = 0;
k = sizeof(arr1) / sizeof(int);
for (int i = 0; i < k + k; i++) {
arr2[i] = arr1[index];
if (i < k-1) {
index++;
}
else if(i>=k){
index--;
}
cout << arr2[i] << " ";
}
===============================================================================
//오류나는 내 답안
const int SIZE = 100;
int arr2[SIZE], k =0;
int arr1[] = { 1,2,3, 4 };
k = sizeof(arr1) / sizeof(int);
for (int i = 0; i < k; i++) {
arr2[i] = arr1[i];
cout << arr2[i] << " ";
}
for (int j = k; j < k + k; j++) {
for (int m = k; m >= j; m--) {
arr2[j] = arr1[m];
}
cout << arr2[j] << " ";
}
===============================================================================
//20개의 랜덤값 10개의 배열에 중복되지 않게 넣고 선택정렬하기
const int SIZE = 10;
int arr[SIZE];
srand(time(NULL));
for (int i = 0; i < SIZE; i++) {
arr[i] = rand() % 20 + 1;
for (int j = 0; j < i; j++) {
if (arr[i] == arr[j]) {
i--;
break;
}
}
}
int min;
for (int i = 0; i < sizeof(arr) / sizeof(int); i++) {
min = i;
for (int k = i + 1; k < sizeof(arr) / sizeof(int); k++) {
if (arr[min] > arr[k]) min = k;
}
int temp = arr[min];
arr[min] = arr[i];
arr[i] = temp;
}
for(int j = 0; j <sizeof(arr)/sizeof(int); j++){
cout << arr[j] << " ";
}
}
댓글 없음:
댓글 쓰기