编程实现用户对电影评分的程序,包括不超过 10 部电影和5个用户,每部电影包括电影编号、名称和得分(15),用户评分完成后,输出各电影的得分以及最受欢迎电影
#include <stdio.h>
#include <stdlib.h>
struct Film{
char name[20];
int score[5];
};
/*电影结构体*/
/*电影名*评分*/
typedef struct Film Film;
int Input( Film f[]){
int i, n;
do{
printf("Enter the num of films;");
scanf("%d",&n);
}while (n<=0 || n>10);
for (int i = 0; i < n; ++i) {
printf("Enter %d-th Film :",i+1);
scanf("%s",f[i].name);
}
return n;
}
void rating(Film f[], int len){
int i,j;
for ( i=0 ;i<len ;i++ ){
printf("Rating for %s :\n ",f[i].name);
for(j=0;j<=4;j++){
printf("%d:",j+1);
scanf("%d",&f[i].score[j]);
}
}
}
int best(Film f[],int len){
int i,j,index,max;
int temp[10];
for (int i = 0; i < len; ++i) {
temp[i]=0;
for (int j = 0; j < 4; ++j) {
temp[i]+=f[i].score[j];
}
max=temp[0];
index = 0;
for (int i = 1; i < len; ++i) {
if (temp[i] > max){
max=temp[i];
index = i;
}
}
}
return index;
}
int main(){
Film fi[10];
int num,index;
num =Input(fi);
rating(fi,num);
index=best(fi, num);
printf("The most popular film is %s",fi[index].name);
return 0;
}