#include<stdio.h>
#include<time.h>
#include<stdlib.h>
#define SIZE 100
int arrSum(int arr[], int size); //점수의 합
int min(int arr[], int size); //최소값
int max(int arr[], int size); //최대값
float mean(int arr[], int size); //평균값
int main(void)
{
srand((unsigned)time(NULL));
int arr[SIZE] = {0};
for(int i = 0;i<SIZE;i++) //난수 넣기
{
arr[i] = rand()%100+1; //arr[i] = 1~100 사이의 값
printf("%d ",arr[i]);
}
printf("\n합계 : %d\n",arrSum(arr,sizeof(arr)/sizeof(arr[0]); //배열, 원소 개수
printf("최소값 : %d\n",min(arr,sizeof(arr)/sizeof(arr[0]));
printf("최대값 : %d\n",max(arr,sizeof(arr)/sizeof(arr[0]));
printf("평균 : %.2f\n",mean(arr,sizeof(arr)/sizeof(arr[0]));
return 0;
}
/*합계*/
int arrSum(int arr[], int size)
{
int sum = 0;
for(int i = 0;i<size;i++)
sum+=arr[i];
return sum;
}
/*최소값*/
int min(int arr[], int size)
{
int min;
for(int i=0;i<size-1;i++)
{
if(i==0)
min = arr[i]; // i가 0일 땐, min에 arr[i]값 넣기
else if(arr[i]<min) //arr[i]와 min 비교해서 작으면 min값 변경
min = arr[i];
}
return min;
}
/*최대값*/
int max(int arr[], int size)
{
int max;
for(int i=0;i<size;i++) //최대값 찾기
{
if(i==0)
max = arr[i]; // i가 0일 땐, max에 arr[i]값 넣기
else if(arr[i]>max) //arr[i]와 min 비교해서 크면 max값 변경
max = arr[i];
}
return max;
}
/*평균값*/
float mean(int arr[], int size)
{
float avg = (arrSum(arr,size)/(float)size); //위에 만든 sum 사용
return avg;
}
'C' 카테고리의 다른 글
| 동적할당 예제 - 2차원 행렬의 덧셈 (1) | 2024.02.10 |
|---|---|
| 두 수 계산기(매개변수로 입력 받기) (0) | 2024.02.10 |
| 두 점을 받고 둘레와 면적 구하기 (0) | 2024.02.10 |
| 천인국 C Express 3판 - 10장 17번 문제(보물찾기) (0) | 2024.02.10 |
| 천인국 C Express 3판 - 10장 15번 문제(random work) (0) | 2024.02.10 |