c언어 1차 배열 덧셈 질문드려요
틀큰
질문 제목 : 두개의 1차배열 덧셈질문 내용 : arr1[] = {1,2,3,4,5};
arr2[] = {3,5,7,8,9};temparr[10] = {0};두배열이 있다고 가정하고 두배열을 더해서 구해진 값들을 temparr 배열에 저장시키려고 하는데요중복 된값은 한개만 쓰구요. 각 배열의 값들은 크기가 작은 순서대로 순차적으로 저장시키려고 합니다.결과를 말씀드리면 temparr = arr1 + arr2 계산하면 temparr 배열의 원소들은 { 1,2,3,4,5,7,8,9} 이렇게 되게 하려고하는데 알고리즘이 생각 보다 쉽지않네요 ..쉽게 설명드리면arr1배열값들 arr2배열값들 temparr배열값들
1 3 1
2 5 2
3 + 7 = 3
4 8 4
5 9 5
7
8
9고수님들 도움 부탁드려요 힌트라도 ......일단 만들던 소스 올릴게요#include stdio.h#define arr1maxsize 5
#define arr2maxsize 5
#define resultarrmaxsize arr1maxsize + arr2maxsizeint main()
{
int arr1[arr1maxsize] = { 1,2,3,4,5 };
int arr2[arr2maxsize] = { 0,3,4,8,9 };
int arr3[resultarrmaxsize] = {0}; int i=0; int arr1counter=0;
int arr2counter=0;
int indexcounter=0;
int flag = 0;
//int index=0; while(1)
{ if(arr1counter == arr1maxsize && arr2counter == arr2maxsize)
break; if( arr1[arr1counter] arr2[arr2counter] )
{
if(arr1counter == arr1maxsize)
{
arr3[indexcounter] = arr2[arr2counter];
indexcounter++;
arr2counter++;
} else
{
arr3[indexcounter] = arr1[arr1counter];
indexcounter++;
arr1counter++;
}
} if( arr1[arr1counter] arr2[arr2counter] )
{
if(arr2counter == arr2maxsize)
{
arr3[indexcounter] = arr1[arr1counter];
indexcounter++;
arr1counter++;
}
else
{
arr3[indexcounter] = arr2[arr2counter];
indexcounter++;
arr2counter++;
}
} if( arr1[arr1counter] == arr2[arr2counter] )
{
arr3[indexcounter] = arr2[arr2counter];
indexcounter++;
arr1counter++;
arr2counter++;
}
}
for(i=0; i10; i++)
printf(%d \n, arr3[i]);
return 0;
}