parent
422c97c19d
commit
4fbb6cf929
@ -1,106 +0,0 @@ |
||||
/*
|
||||
* main.c |
||||
* |
||||
* Created on: Jun 9, 2013 |
||||
* Author: delmadord |
||||
*/ |
||||
|
||||
#include <stdio.h> |
||||
|
||||
|
||||
|
||||
void ex_01(void); |
||||
void ex_02(void); |
||||
// ex_03
|
||||
void avg_sum(double a[], int n, double *avg, double *sum); |
||||
// ex_04
|
||||
void swap(int *p, int *q); |
||||
// ex_05
|
||||
void split_time(long total_sec, int *hr, int *min, int *sec); |
||||
// ex_06
|
||||
void find_two_largest(int a[], int n, int *largest, int *slargest); |
||||
// ex_07
|
||||
void spit_date(int day_of_year, int year, int *month, int *day); |
||||
void *find_largest(int a[], int n); |
||||
|
||||
|
||||
|
||||
int main(void) { |
||||
int a[] = {12, 1, 4, 2, 9}; |
||||
|
||||
printf("%d is largest", find_largest(a, 5)); |
||||
|
||||
return 0; |
||||
} |
||||
|
||||
|
||||
|
||||
void ex_01(void) { |
||||
// a, c, d, g, h seems ok to me
|
||||
} |
||||
|
||||
void ex_02(void) { |
||||
// e, f, i are ok
|
||||
} |
||||
|
||||
void avg_sum(double a[], int n, double *avg, double *sum) { |
||||
int i; |
||||
|
||||
*sum = 0.0; |
||||
for (i = 0; i < n; i++) |
||||
*sum += a[i]; |
||||
*avg = *sum / n; |
||||
} |
||||
|
||||
void swap(int *p, int *q) { |
||||
int temp = *p; |
||||
*p = *q; |
||||
*q = temp; |
||||
} |
||||
|
||||
void split_time(long total_sec, int *hr, int *min, int *sec) { |
||||
*hr = total_sec / 3600; |
||||
total_sec %= 3600; |
||||
*min = total_sec / 60; |
||||
*sec = total_sec % 60; |
||||
} |
||||
|
||||
void find_two_largest(int a[], int n, int *largest, int *slargest) { |
||||
int i; |
||||
|
||||
if (a[0] > a[1]) { |
||||
*largest = a[0]; |
||||
*slargest = a[1]; |
||||
} else { |
||||
*largest = a[1]; |
||||
*slargest = a[0]; |
||||
} |
||||
|
||||
for (i = 2; i < n; i++) |
||||
if (a[i] > *largest) { |
||||
*slargest = *largest; |
||||
*largest = a[i]; |
||||
} else if (a[i] > *slargest) |
||||
*slargest = a[i]; |
||||
} |
||||
|
||||
void spit_date(int day_of_year, int year, int *month, int *day) { |
||||
int feb = (year % 4 == 0) ? 29 : 28; |
||||
int days_in_months[] = {0, |
||||
31, feb, 31, 30, 31, 30, |
||||
31, 31, 30, 31, 30, 31}; |
||||
|
||||
*day = day_of_year; |
||||
for (*month = 1; *day > days_in_months[*month]; (*month)++) { |
||||
*day -= days_in_months[*month]; |
||||
} |
||||
} |
||||
|
||||
void *find_largest(int a[], int n) { |
||||
int i, *largest = &a[0]; |
||||
for (i = 0; i < n; i++) |
||||
if (a[i] > *largest) |
||||
largest = &a[i]; |
||||
return *largest; |
||||
} |
||||
|
Loading…
Reference in new issue