10장 Exercise
1. 배열이 10개의 원소를 가진다면 첫 번째 원소의 배열 번호는? ②0
2. 배열 char[5][6]은 총 몊개의 원소를 가지는가? ③30
3. 다음 중 잘못 선언된 배열을 모두 선택하라. ③, ④ (변수, 실수는 배열의 크기가 될 수 없다.)
4. int a[100]={10}; 으로 선언된 배열에서 a[99]의 초기값은 무엇인가? ①0
5. int a[2][2] = {1, 2, 3, 4}에서 a[1][1]의 초기값은? ①1
6. 프로그램의 오류를 전부 수정하라.
#define MAX_SIZE 3 int main(void) int a[MAX_SIZE]={0, 1, 2, 3}; for(i=0; i<=MAX_SIZE; i++) return 0; } |
#define MAX_SIZE 3 int main(void) int a[MAX_SIZE]={0, 1, 2}; for(i=0; i<=MAX_SIZE; i++) return 0; } |
7.
(a) 배열로 수정 float grade[3]; |
(b) 입력 대신 배열 초기값 설정 float grade[3]={10.0, 20.0, 30.0} |
(c) 평균함수 이용 #include <stdio.h> float get_average(float a[], int n); int main() { float grade[3] = {10.0, 20.0, 30.0}; printf("학생들의 평균: %f", get_average(grade, 3)); return 0; } float get_average(float a[], int n) { int i; float sum=0; for(i=0; i<n; i++) sum += a[i]; return sum/n; } |
(d) 분포표 출력 #include <stdio.h> int main() { int i, people[10] = {0}; float grade[3] = {10.0, 20.0, 30.0}; for(i=0; i<3; i++) { if (grade[i]>=91 && grade[i]<=100) people[9]++; else if(grade[i]>=81) people[8]++; else if(grade[i]>=71) people[7]++; else if(grade[i]>=61) people[6]++; else if(grade[i]>=51) people[5]++; else if(grade[i]>=41) people[4]++; else if(grade[i]>=31) people[3]++; else if(grade[i]>=21) people[2]++; else if(grade[i]>=11) people[1]++; else if(grade[i]>=0) people[0]++; } printf("점수대 인원수\n"); for(i=0; i<10; i++) printf("%d-%d %d\n", i*10+1, i*10+10, people[i]); return 0; } |
8. 잘못된 부분 수정
(a) int main(void) { int grade[10][60]; compute_avg(grade); } int compute_avg(int array[][]){...}
|
int main(void) { int grade[10][60]; compute_avg(grade); } int compute_avg(int array[][60]){...} cf. 다차원 배열의 경우 1차원 배열과 비슷하나 다만 첫 번째 인덱스를 제외한 나머지 인덱스의 범위를 적어주어야한다 |
(b) float test[10]; scanf("%f", test[0]); |
float test[10]; scanf("%f", &test[0]); |
(c) int main(void) { int x, y; int test[10][5];
for(x=0; x<5; x++) for(y=0; y<10; y++) test[x][y]=0; return 0; } |
int main(void) { int x, y; int test[5][10];
for(x=0; x<5; x++) for(y=0; y<10; y++) test[x][y]=0; return 0; } |
'프로그래밍 > 쉽게 풀어쓴 C언어 Express' 카테고리의 다른 글
쉽게 풀어쓴 C언어 Express 11장 Summary (0) | 2018.11.06 |
---|---|
쉽게 풀어쓴 C언어 Express 10장 Programming (0) | 2018.11.06 |
쉽게 풀어쓴 C언어 Express 10장 Summary (0) | 2018.10.29 |
쉽게 풀어쓴 C언어 Express 9장 Programming (0) | 2018.10.19 |
쉽게 풀어쓴 C언어 Express 9장 Exercise (0) | 2018.10.19 |