6장 실습문제_1번

2020. 12. 28. 21:01C++

1. add()함수를 호출하는 main()함수는 다음과 같다.

int main() {
	int a[] = { 1,2,3,4,5 };
	int b[] = { 6,7,8,9,10 };
	int c = add(a, 5);
	int d = add(a, 5, b);
	cout << c << endl;
	cout << d << endl;
}

(1) add() 함수를 중복 작성하고 프로그램을 완성하라

#include <iostream>
using namespace std;

int add(int a[], int r);
int add(int a[], int r, int b[]);

int add(int a[], int r) {
	int result = 0;
	for (int i = 0; i < r; i++)
		result += a[i];
	return result;
}
int add(int a[], int r, int b[]) {
	int result = 0;
	for (int i = 0; i < r; i++) {
		result += a[i];
		result += b[i];
	}
	return result;
}

int main() {
	int a[] = { 1,2,3,4,5 };
	int b[] = { 6,7,8,9,10 };
	int c = add(a, 5);
	int d = add(a, 5, b);
	cout << c << endl;
	cout << d << endl;
}

(2) 디폴트 매개 변수를 가진 하나의 add()함수를 작성하고 프로그램을 완성하라.

#include <iostream>
using namespace std;

int add(int a[], int r, int b[] = NULL) {
	int result = 0;
	for (int i = 0; i < r; i++) {
		result+=a[i];
		if (b != NULL)
			result += b[i];
	}
	return result;
}

int main() {
	int a[] = { 1,2,3,4,5 };
	int b[] = { 6,7,8,9,10 };
	int c = add(a, 5);
	int d = add(a, 5, b);
	cout << c << endl;
	cout << d << endl;
}

'C++' 카테고리의 다른 글

6장 실습문제_5번  (0) 2020.12.28
6장. 함수 중복과 static 멤버  (0) 2020.12.28
5장 실습문제_7번  (0) 2020.12.24
5장 실습문제_5번  (0) 2020.12.24
5장 실습문제_2번  (0) 2020.12.24