#include<stdio.h>
void DataSort(int a[], int n)
{
int i, j;
for (i = 0; i < n; i ++)
{
for (j = n - 1; j > i; j --)
{
if (a[j] < a[j - 1])
{
int t = a[j];
a[j] = a[j - 1];
a[j - 1] = t;
}
}
}
}
int Mean(int answer[], int n)
{
int i, sum = 0;
for (i = 0; i < n; i ++)
{
sum += answer[i];
}
return sum / n;
}
int Median(int answer[], int n)
{
DataSort(answer, n);
if (n % 2 == 0)
{
return (answer[n/2] + answer[n/2-1]) / 2;
}
else if (n % 2 == 1)
{
return answer[n/2];
}
}
int Mode(int answer[], int n) // 不好搞啊, 又没给范围 , 但是可以根据排序后来搞.
{
int a[100], i, j;
for (i = 0; i < 100; i ++) a[i] = 0;
for (i = 0; i < n; i ++)
{
a[answer[i]]++;
}
int res = 0;
for (i = 0; i < 100; i ++)
{
// printf("%d\n", a[i]) ;
if (a[res] < a[i])
res = i;
}
return res;
}
int main()
{
int answer[40];
printf("Input the feedbacks of 40 students:\n");
int i;
for (i = 0; i < 40; i ++)
scanf("%d", &answer[i]);
printf("Mean value = %d\n", Mean(answer, 40));
printf("Median value = %d\n", Median(answer, 40));
printf("Mode value = %d\n", Mode(answer, 40));
return 0;
}
2
#include<stdio.h>
#define N 40
int GetAboveAver(int score[], int n)
{
int i, sum = 0;
for (i = 0; i < n; i ++)
{
sum += score[i];
}
sum /= n;
int cnt = 0;
for (i = 0; i < n; i ++)
{
if (score[i] >= sum)
cnt ++;
}
return cnt;
}
int main()
{
int a[N], i;
for (i = 0; 1; i ++)
{
scanf("%d", &a[i]);
if (a[i] < 0) break;
}
printf("Students of above average is %d\n", GetAboveAver(a, i));
return 0;
}
3
#include<stdio.h>
#define N 40
int AddDiagonal(int a[N][N], int n)
{
int sum = 0;
int i;
for (i = 0; i < n; i ++)
{
sum += a[i][i];
sum += a[n - 1 - i][i];
}
if (n % 2 == 1)
{
sum -= a[n/2][n/2];
}
return sum;
}
int main()
{
int n, a[N][N];
printf("Input n:");
scanf("%d", &n);
printf("Input %d*%d matrix:\n", n, n);
int i, j;
for (i = 0; i < n; i ++)
{
for (j = 0; j < n; j ++)
{
scanf("%d", &a[i][j]);
}
}
printf("sum = %d\n", AddDiagonal(a, n));
return 0;
}
4
#include<stdio.h>
#define N 40
struct student{
long snumber;
int score;
}s[N];
int main()
{
int i, n;
for (i = 0; 1; i ++)
{
printf("Input student's ID and score:");
scanf("%ld%d", &s[i].snumber, &s[i].score);
if (s[i].snumber < 0) break;
}
n = i;
printf("Total students are %d\n", n);
printf("Input the searching ID:");
long t;
scanf("%ld", &t);
for (i = 0; i < n; i ++)
{
if (t == s[i].snumber)
{
printf("score = %d\n", s[i].score);
return 0;
}
}
printf("Not found!\n");
return 0;
}