0
点赞
收藏
分享

微信扫一扫

对接阿里asr和Azure asr

#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#define N 5
//创建学生结构体,并重命名
typedef struct Students{
	int id;
	char name[20];
	float score;
}Stu[N];

//输入学生信息
void Stu_input(Stu arr);

//输出学生信息
void Stu_output(Stu arr);

//求总分和平均分
void Stu_MAX_AVG(Stu arr); 

//排名
void Stu_sord(Stu arr);

int main(int argc, const char *argv[])
{
	//定义数组arr,初始化
	Stu arr={0};
	//输入学生信息
	Stu_input(arr);
	printf("\n");
	//输出学生信息
	Stu_output(arr);	
	printf("\n");
	//求总分和平均分
	Stu_MAX_AVG(arr);
	printf("\n");
	//排名
	Stu_sord(arr);
	//输出排名后的数组
	Stu_output(arr);
	return 0;
}

//输入学生信息
void Stu_input(Stu arr){
	for(int i=0; i<N; i++){
		printf("请输入第%d个学生信息:", i+1);
		scanf("%d%s%f", &arr[i].id, arr[i].name, &arr[i].score);
	}
}

//输出学生信息
void Stu_output(Stu arr){
	for(int i=0; i<N; i++){
		printf("学号%d 姓名%5s 分数%.2f\n", arr[i].id, arr[i].name, arr[i].score);
	}
}

//求总分和平均分
void Stu_MAX_AVG(Stu arr){
	float sum = 0;
	for(int i=0; i<N; i++){
		sum += arr[i].score; 
	}
	printf("总分是:%.2f 平均分是:%.2f\n", sum, sum/N);
}

//排名
void Stu_sord(Stu arr){
	for(int i=1; i<N; i++){
		for(int j=0; j<N-i; j++){
			if( arr[j].score < arr[j+1].score ){
				Stu s = {0};
				s[j] = arr[j];
				arr[j] = arr[j+1];
				arr[j+1] = s[j];
			}
		}
	}
}

结果如下:

举报

相关推荐

0 条评论