#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <Windows.h>
#include <string.h>
int main()
{
char name[3][20];
for (int i = 0; i < 3; i++)
{
printf("请输入第%d名学生的姓名: ", i + 1);
scanf("%s", &name[i]);
}
float a[3][3];
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
if (j == 0)
{
printf("请输入%s的学生语文成绩: ", name[i]);
scanf("%f", &a[i][j]);
}
else if (j == 1)
{
printf("请输入%s的学生数学成绩: ", name[i]);
scanf("%f", &a[i][j]);
}
else if (j == 2)
{
printf("请输入%s的学生英语成绩: ", name[i]);
scanf("%f", &a[i][j]);
}
}
}
for (int i = 0; i < 3; i++)
{
for (int j = 0; j < 3; j++)
{
printf("%f", a[i][j]);
printf("\t");
}
printf("\n");
}
printf("\n");
int* q = a;
void sum(float (*q)[3], int n);
void aver(float (*q)[3], int n);
int v=0;
int i;
printf("请输入你想要哪一名学生的全部成绩:");
char input_name[20];
scanf("%s", input_name);
for (i = 0; i < 3; i++)
{
if (strcmp(name[i], input_name) == 0)
{
break;
}
}
sum(a, i);
printf("\n");
printf("请输入你想要哪一名学生的平均成绩:");
scanf("%s", &name[i]);
aver(a, i);
}
void sum(float(*q)[3], int n)
{
printf("该学生的全科成绩分别是:\t");
printf("\n");
for (int i = 0; i < 3; i++)
{
printf("\t");
printf("%f", *(*(q + n ) + i));
}
}
void aver(float(*q)[3], int n)
{
printf("该学生的平均成绩是:\t");
printf("\n");
float b=0;
for (int i = 0; i < 3; i++)
{
b = *(*(q + n) + i) + b;
}
printf("%f", b / 3);
}