Private Sub Command1_Click()
Dim s, i, j, arr(1 To 10), t, sum
For i = 1 To 10
s = InputBox("输入评分(0-10分):", "第" &i &"个分数")
If IsNumeric(s) Then
s = Val(s)
If s <0 Or s >10 Then
i = i - 1
Else
arr(i) = s
End If
Else
i = i - 1
End If
Next
For i = 1 To 9
For j = i + 1 To 10
If arr(i) >arr(j) Then
t = arr(i): arr(i) = arr(j): arr(j) = t
End If
Next
Next
For i = 2 To 9
sum = sum + arr(i)
Next
Label1.Caption = "最高分亩亏侍为:" &arr(10)
Label2.Caption = "最低分为:" &arr(1)
Label3.Caption = "选手最后得分:"迅吵 &Round(sum / 8, 1)
End Sub
Private Sub Command2_Click()
Unload Me
End Sub
Private Sub Form_Load()
Command1.Caption = "评分"
Command2.Caption = "结束"空铅
With Label1
.Caption = ""
.AutoSize = True
End With
With Label2
.Caption = ""
.AutoSize = True
End With
With Label3
.Caption = ""
.AutoSize = True
End With
End Sub
#include<stdio.h>#include<conio.h>
#define _for(i,a,b) for(int i=ai<bi++)
using namespace std
int scores[10]
double average,maxn,minn=0x7f,imax,imin
int main(){
system("cls")
_for(i,0,10){
printf("Please input a score:")
scanf("%d",&scores[i])
average+=scores[i]
if(maxn<scores[i]){
maxn=scores[i]
imax=i
}
if(minn>scores[i]){
minn=scores[i]
imin=i
}
printf("\n")
}
average-=maxn+minn
average/=8.0
printf("\锋谨nThe average: %.6lf\n",average)
printf("The max: %.6lf\n"银闭基,maxn)
printf("The min: %.6lf\n",minn)
_for(i,0,10){
if(scores[i]>态如average){
printf("%d,%.6lf\n",i+1,double(maxn))
}
}
printf("max: %d,%.6lf\n",imax+1,maxn)
printf("min: %d,%.6lf\n\n",imin+1,minn)
printf("Next singer? <y or Y>: ")
char k=getch()
if(k=='y' || k=='Y')main()
return 0
}
看看这个能不能满足你的要求:#include"stdio.h"
void main()
{float a[12][7],b[12],t
int i,j,k
float avr(float (*x)[7])
void arry(float px[])
printf("评委请打分:\n")/*按选手编号打行型分,如,一号选手得分,分别有7个评委打分,然后是二号选手;*/
for(i=0i<12i++)
{ for(j=0j<7j++)
scanf("%d",&a[i][j])
b[i]=avr(a+i)/*计算每个选手的平均成绩*/
printf("%d号选手最终得分:%d\n",i+1,b[i])
}
for(i=11i>=0i--)
{k=i
for(j=ij<12j++)
{if(b[j]<b[k])
k=j
}
if(b[k]!=b[i])
{t=b[i]b[i]=b[k]b[k]=t}
}
for(i=0i<12i++)
{switch(i)
{case 0: printf("一等奖的获得者是:%d\n",i+1)break
case 1: printf("二等奖的获得者是:%d号选手\n",i+1)break
case 2: printf("二等奖的获得者是:%d号选手\n",i+1)break
case 3: printf("三等奖的获得者是:%d号选手\n",i+1)break
case 4: printf("三等奖的获得乎带握者是:岁庆%d号选手\n",i+1)break
case 5: printf("三等奖的获得者是:%d号选手\n",i+1)break
case 6: printf("三等奖的获得者是:%d号选手\n",i+1)break
default: break
}
}
}
float avr(float (*x)[7])
{int i,m,n,t,j,k
float sum=0
for(i=0i<7i++)
{m=(*x)[0]
n=(*x)[0]
if((*x)[i]>m)
j=i
if((*x)[i]<n)
k=i
}
{t=(*x)[6](*x)[6]=(*x)[j](*x)[j]=t}
{t=(*x)[5](*x)[5]=(*x)[k](*x)[k]=t}
for(i=0i<5i++)
sum+=(*x)[i]
return sum/5
}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)