Temp 변수를 사용하지 않고 두 개의 배열을 교환합니다. 여기서는 세 번째 변수 대신 산술 연산자와 비트 연산자를 사용합니다.
첫 번째 배열을 읽는 논리 다음과 같습니다 -
printf("첫 번째 배열 요소 입력:\n");for(i =0; i <크기; i++){ scanf("%d", &first[i]);}
두 번째 배열을 읽는 논리 다음과 같습니다 -
printf("첫 번째 배열 요소 입력:\n");for(i =0; i <크기; i++){ scanf("%d", &first[i]);}
세 번째 변수를 사용하지 않고 두 배열을 교환하는 논리 다음과 같습니다 -
for(i =0; i <크기; i++){ first[i] =first[i] + sec[i]; 초[i] =첫 번째[i] - 초[i]; 첫 번째[i] =첫 번째[i] - 초[i];}
프로그램
다음은 Temp 변수를 사용하지 않고 두 개의 배열을 교환하는 C 프로그램입니다 -
#includeint main(){ int size, i, first[20], sec[20]; printf("배열의 크기를 입력하세요:"); scanf("%d", &크기); printf("첫 번째 배열 요소를 입력하세요:\n"); for(i =0; i <크기; i++){ scanf("%d", &first[i]); } printf("두 번째 배열 요소를 입력하세요:\n"); for(i =0; i <크기; i ++){ scanf("%d", &sec[i]); } // 두 개의 배열 교환 for(i =0; i 출력
위의 프로그램이 실행되면 다음과 같은 결과가 생성됩니다 -
배열의 크기를 입력하세요:5첫 번째 배열을 입력하세요 ele:11 12 13 14 15두 번째 배열을 입력하세요 ele:90 80 70 60 505개 요소를 교환한 후 첫 번째 배열90 80 70 60 50초 후에 5개 요소를 교환한 후 배열11 12 13>14 15