A. 用C语言编一个程序,计算学生奖学金的等级,以三门功课成绩M1,M2,M3为评奖依据。奖学金评定标准如下:
这个考察分支结构使用,不会可以帮你写!
B. 用VB编制程序,计算某个学生奖学金的等级,以三门课程成绩为评奖依据。
建立:一个文本框:TEXT1
一个标签框:LABEL1
三个命令按钮:COMMAND1、COMMAND2、COMMAND3
全部程序如下(已经运行过):
Dim a(2), b As Single
Dim nam, jj As String
Dim i, j As Integer
Dim ur As Boolean
Private Sub Command1_Click()
Call csh
nam = InputBox("请输入考生姓名,退出直接回车:", "输入名字")
If nam = "" Then Exit Sub
For i = 0 To 2
b = 0
ur = True
Call urij
a(i) = b
Next
Text1.Text = "考生姓名:" & nam & Chr(10) & "第一科成绩:" & a(0) & Chr(10) & "第二科成绩:" & a(1) & Chr$(13) & "第三科成绩:" & a(2)
Label1.Caption = "请检查输入是否正确,若不正确,请重新输入!"
End Sub
Private Sub Command2_Click()
If nam = "" Then
Call csh
Exit Sub
End If
For i = 0 To 1
For j = i + 1 To 2
If a(i) < a(j) Then
b = a(i)
a(i) = a(j)
a(j) = b
End If
Next
Next
b = 0
For i = 0 To 2
b = b + a(i)
Next
b = b / 3
If b > 95 Or (a(0) = 100 And a(1) = 100 And a(2) > 80) Then
jj = "一等奖"
ElseIf b > 90 Or (a(0) = 100 And a(1) > 75 And a(2) > 75) Then
jj = "二等奖"
ElseIf a(0) > 70 And a(1) > 70 And a(2) > 70 Then
jj = "三等奖"
Else
jj = ""
End If
If jj <> "" Then
Label1.Caption = "该考生获得 " & jj & "! :)"""
Else
Label1.Caption = "该考生没有获奖:( "
End If
End Sub
Private Sub Command3_Click()
End
End Sub
Private Sub form_load()
Text1.Text = ""
Text1.Locked = True
Label1.Caption = ""
Command1.Caption = "输入信息"
Command2.Caption = "分析成绩"
Command3.Caption = "退 出"
End Sub
Sub csh()
nam = ""
a(0) = 0
a(1) = 0
a(2) = 0
b = 0
Text1.Text = ""
jj = ""
Label1.Caption = ""
End Sub
Sub urij()
Do While ur
jj = InputBox("请输入" & nam & "的第" & Str$(i + 1) & " 科成绩:", nam & "输入成绩")
For j = 1 To Len(jj)
If Asc(Mid(jj, j, 1)) < 48 Or Asc(Mid(jj, j, 1)) > 57 Then
ur = True
Exit For
End If
ur = False
Next
If ur = False Then
b = Val(jj)
If b > 100 Then
ur = True
b = 0
End If
End If
Loop
End Sub
C. 3、从键盘上输入一个学生的三门课程语文、数学、英语的成绩,判定该生获得几等奖学金。 一等奖学金:
一等
D. 用VB编制程序,计算某个学生奖学金的等级,以三门课程成绩为评奖依据
Option Explicit
Private Sub Command1_Click()
Dim m1 As Single, m2 As Single, m3 As Single, avg As Single, sum As Single
Dim flag As Integer
On Error GoTo ERR
m1 = InputBox("请输入第一科成绩:")
If m1 = 100 Then flag = flag + 1
m2 = InputBox("请输入第二科成绩:")
If m2 = 100 Then flag = flag + 1
m3 = InputBox("请输入第三科成绩:")
If m3 = 100 Then flag = flag + 1
sum = m1 + m2 + m3
avg = sum / 3
If avg >= 95 Or flag = 2 And sum - 200 >= 80 Then MsgBox "一等奖", 0 + 64, "恭喜": Exit Sub
If avg >= 90 Or flag = 1 And Not (m1 < 75 Or m2 < 75 Or m3 < 75) Then MsgBox "二等奖", 0 + 64, "恭喜": Exit Sub
If m1 >= 70 And m2 >= 70 And m3 >= 70 Then MsgBox "三等奖", 0 + 64, "恭喜": Exit Sub
MsgBox "没有获奖", 0 + 64, "提示"
Exit Sub
ERR:
MsgBox "数据有误", 16 + 0, "错误"
End Sub
E. 现有一个班级,共10人,本学期共学习三门课程,设计一个学生成绩管理系统,要求如下:
/*
现有一个班级,共10人,本学期共学习三门课程,设计一个学生成绩管理系统,要求如下:
1、完成三门课程成绩输入;或单门课程录入、或同时录入三门课
2、完成成绩排序:按单科成绩排序、按平均分排序
3、完成成绩统计:按单科分段统计人数、按平均分分段统计(60分以下,60-79分,80以上)
4、用结构体完成学生姓名和成绩的输入
5、完成成绩查询:单科查询、平均分查询、按姓名查询、分段查询等;
6、完成奖学金统计:三门课均高于90分,一等奖学金;三门课均高于80分,二等奖学金,统计获奖学金人数
7、完成成绩输出:按单科输出、输出所有成绩、按平均分由高到低输出,输出奖学金名单等
*/
#include <stdio.h>
#include <string.h>
#define N 1
struct student //定义结构变量体
{
char name[10];
int english,math,computer;
float avg;
}std[N];
void input();
void sort();
void count();
void inquire();
void scholarship_inq();
void output();
int main()
{
int flag;
printf(" 学生成绩管理系统\n");
while(1)
{
if(std[0].name[0]!='\0') //检测是否存有数据
printf("1.信息录入(已输入数据)\n");
else printf("1.信息录入(未输入数据)\n");
printf("2.成绩排序\n");
printf("3.成绩统计\n");
printf("4.成绩查询\n");
printf("5.奖学金统计\n");
printf("6.成绩输出\n");
printf("7.退出\n");
printf("请选择:\n");
scanf("%d",&flag);
switch(flag)
{
case 0:
return 0;
break;
case 1:
input();
break;
case 2:
sort();
break;
case 3:
count();
break;
case 4:
inquire();
break;
case 5:
scholarship_inq();
break;
case 6:
output();
break;
case 7:
exit();
break;
default:
printf("输入错误,请重新输入!\n");
}
}
return 0;
}
/*1、完成三门课程成绩输入;或单门课程录入、或同时录入三门课*/
void input()
{
int i;
for(i=0;i<N;i++)
{
printf("请输入第%d个学生的姓名:\n",i+1);
scanf("%s",std[i].name);
printf("请输入第%d个学生的三科成绩,空格分隔,如xx xx xx:\n",i+1);
scanf("%d%d%d",&std[i].english,&std[i].math,&std[i].computer);
std[i].avg=(std[i].english+std[i].math+std[i].computer)/3.0; //求平均值
}
}
/*2、完成成绩排序:按单科成绩排序、按平均分排序*/
void sort() //排序
{
int flag,i,j,key=0;
struct student t;
while(1)
{
d: printf("1.按单科成绩排序\n");
printf("2.按平均分排序\n");
printf("3.返回\n");
printf("请选择:\n");
scanf("%d",&flag);
switch(flag)
{
case 3:
return ;
case 1:
{
printf("请选择:1.english,2.math,3.computer,4.other:返回\n");
scanf("%d",&key);
if (1==key)
{
for (i=0;i<N-1;i++)
for (j=0;j<N-1;j++)
{
if (std[i].english>std[i+1].english)
{
t=std[i];std[i]=std[i+1];std[i+1]=t;
}
}
for (i=0;i<N;i++)
{
printf("%s的english成绩为:%d\n",std[i].name,std[i].english);
printf("%s的math成绩为:%d\n",std[i].name,std[i].math);
printf("%s的computer成绩为:%d\n",std[i].name,std[i].computer);
}
printf("排序结束\n\n");
}
if (2==key)
{
for(i=0;i<N-1;i++)
{
for(j=0;j<N-1;j++)
{
if(std[i].math>std[i+1].math)
{
t=std[i];std[i]=std[i+1];std[i+1]=t;
}
}
for (i=0;i<N;i++)
{
printf("%s的english成绩为:%d\n",std[i].name,std[i].english);
printf("%s的math成绩为:%d\n",std[i].name,std[i].math);
printf("%s的computer成绩为:%d\n",std[i].name,std[i].computer);
}
printf("排序结束\n\n");
}
}
if (3==key)
{
for (i=0;i<N-1;i++)
for (j=0;j<N-1;j++)
{
if (std[i].computer>std[i+1].computer)
{
t=std[i];std[i]=std[i+1];std[i+1]=t;
}
}
for(i=0;i<N;i++)
{
printf("%s的english成绩为:%d\n",std[i].name,std[i].english);
printf("%s的math成绩为:%d\n",std[i].name,std[i].math);
printf("%s的computer成绩为:%d\n",std[i].name,std[i].computer);
}
printf("排序结束\n\n");
}
else break;
if (4==key)
{
goto d;
}
break;
}
case 2:
{
{
for(i=0;i<N-1;i++)
{
for(j=0;j<N-1;j++)
{
if(std[i].avg>std[i+1].avg)
{
t=std[i];std[i]=std[i+1];std[i+1]=t;
}
}
}
}
for(i=0;i<N;i++)
{
printf("%s的english成绩为:%d\n",std[i].name,std[i].english);
printf("%s的math成绩为:%d\n",std[i].name,std[i].math);
printf("%s的computer成绩为:%d\n",std[i].name,std[i].computer);
printf("%s的平均成绩为:%f\n",std[i].name,std[i].avg);
}
printf("排序结束\n\n");
}
}
}
}
/*3、完成成绩统计:按单科分段统计人数、按平均分分段统计(60分以下,60-79分,80以上)*/
void count()
{
int flag,i,sum1=0,sum2=0,sum3=0,key;
while(1)
{
s: printf("1.按单科分段统计人数\n");
printf("2.按平均分分段统计\n");
printf("3.返回\n");
printf("请输入:\n");
scanf("%d",&flag);
switch (flag)
{
case 3:
return;
case 1:
{
printf("请选择:1.english,2.math,3.computer,4.other:返回\n");
scanf("%d",&key);
if (1==key)
{
sum1=0,sum2=0,sum3=0;
for (i=0;i<N;i++)
{
if (std[i].english<60)
sum1++;
else if ((std[i].english>=60) && (std[i].english<80))
sum2++;
else if (std[i].english>=80)
sum3++;
}
printf("english科目统计结果:60分以下%d人,60-79分%d人,80以上%d人\n",sum1,sum2,sum3);
for (i=0;i<N;i++)
{
printf("%s的english成绩为:%d\n",std[i].name,std[i].english);
}
}
if (2==key)
{
sum1=0,sum2=0,sum3=0;
for(i=0;i<N;i++)
{
if (std[i].math<60)
sum1++;
else if ((std[i].math>=60) && (std[i].math<80))
sum2++;
else if(std[i].math>=80 )
sum3++;
}
printf("math科目统计结果:60分以下%d人,60-79分%d人,80以上%d人\n",sum1,sum2,sum3);
}
if (3==key)
{
sum1=0,sum2=0,sum3=0;
for(i=0;i<N;i++)
{
if (std[i].computer<60)
sum1++;
else if ((std[i].computer>=60) && (std[i].computer<80))
sum2++;
else if (std[i].computer>=80)
sum3++;
}
printf("computer科目统计结果:60分以下%d人,60-79分%d人,80以上%d人\n",sum1,sum2,sum3);
}
else break;
if (4==key)
goto s;
break;
}
case 2:
{ sum1=0,sum2=0,sum3=0;
for(i=0;i<N;i++)
{
if (std[i].avg<60)
sum1++;
else if ((std[i].avg>=60) && (std[i].avg<80))
sum2++;
else if (std[i].avg>=80 )
sum3++;
}
printf("平均分统计结果:60分以下%d人,60-79分%d人,80以上%d人\n",sum1,sum2,sum3);
}
}
}
}
/*完成成绩查询:单科查询、平均分查询、按姓名查询、分段查询等;*/
void inquire()
{
int flag,i,key;
char str[10];
while(1)
{
f: printf("1.单科查询\n");
printf("2.平均分查询\n");
printf("3.按姓名查询\n");
printf("4.分段查询\n");
printf("5.返回\n");
printf("请选择:\n");
scanf("%d",&flag);
switch(flag)
{
case 5:
return;
break;
case 1 :
{
printf("请选择:1.english,2.math,3.computer,4.other:返回\n");
scanf("%d",&key);
if (1==key)
for(i=0;i<N;i++)
printf("%s的english成绩为:%d\n",std[i].name,std[i].english);
if (2==key)
for(i=0;i<N;i++)
printf("%s的math成绩为:%d\n",std[i].name,std[i].math);
if (3==key)
for(i=0;i<N;i++)
printf("%s的computer成绩为:%d\n",std[i].name,std[i].computer);
if (4==key)
goto f;
break;
}
case 2 :
{
for(i=0;i<N;i++)
printf("%s的平均分成绩为:%f\n",std[i].name,std[i].avg);
break;
}
case 3 :
{
printf("要查询的姓名\n");
scanf("%s",str);
for (i=0;i<N;i++)
if (strcmp(std[i].name,str)==0)
{
printf("%s的english,math,computer的成绩分别为%d,%d,%d\n",std[i].name,std[i].english,std[i].math,std[i].computer);
break;
}
printf("没有找到这个名字,请重新选择\n");
break;
}
case 4 :
{
printf("输入查询分段,1:<60分以下,2:60-79分,3:80以上,other:返回\n");
scanf("%d",&key);
if (1==key)
for(i=0;i<N;i++)
{
if(std[i].english<60)
printf("%s的english成绩为:%d\n",std[i].name,std[i].english);
if(std[i].math<60)
printf("%s的math成绩为:%d\n",std[i].name,std[i].math);
if(std[i].computer<60)
printf("%s的computer成绩为:%d\n",std[i].name,std[i].computer);
}
if (2==key)
for(i=0;i<N;i++)
{
if(std[i].english>=60 && std[i].english<80)
printf("%s的english成绩为:%d\n",std[i].name,std[i].english);
if(std[i].math>=60 && std[i].math<80)
printf("%s的math成绩为:%d\n",std[i].name,std[i].math);
if(std[i].computer>=60 && std[i].computer<80)
printf("%s的computer成绩为:%d\n",std[i].name,std[i].computer);
}
if(3==key)
for(i=0;i<N;i++)
{
if(std[i].english>80)
printf("%s的english成绩为:%d\n",std[i].name,std[i].english);
if(std[i].math>80)
printf("%s的math成绩为:%d\n",std[i].name,std[i].math);
if(std[i].computer>80)
printf("%s的computer成绩为:%d\n",std[i].name,std[i].computer);
}
if (4==key)
goto f;
}
}
}
}
/*完成奖学金统计:三门课均高于90分,一等奖学金;三门课均高于80分,二等奖学金,统计获奖学金人数*/
void scholarship_inq()
{
int i,sum1=0,sum2=0;
for (i=0;i<N;i++)
{
if (std[i].english>=90 && std[i].math>=90 && std[i].computer>=90)
sum1++;
if (std[i].english>=80 && std[i].english<90)
if(std[i].math>=80 && std[i].math<90)
if (std[i].computer>=80 && std[i].computer<90)
sum2++;
}
printf("获得一等奖学金人数是:%d,获得二等奖学金人数是:%d,奖学金总数是:%d\n",sum1,sum2,sum1+sum2);
}
/*完成成绩输出:按单科输出、输出所有成绩、按平均分由高到低输出,输出奖学金名单等*/
void output()
{
int flag,i,j,key;
struct student t;
char str[10];
while(1)
{
L: printf("1.按单科输出\n");
printf("2.输出所有成绩\n");
printf("3.按平均分由高到低输出\n");
printf("4.输出奖学金名单\n");
printf("5.返回\n");
printf("请输入:\n");
scanf("%d",&flag);
switch(flag)
{
case 5:
return ;
case 1:
{
printf("请选择:1.english,2.math,3.computer,4.other:返回\n");
scanf("%d",&key);
if (1==key)
for(i=0;i<N;i++)
printf("%s的english成绩为:%d\n",std[i].name,std[i].english);
if (2==key)
for(i=0;i<N;i++)
printf("%s的math成绩为:%d\n",std[i].name,std[i].math);
if (3==key)
for(i=0;i<N;i++)
printf("%s的computer成绩为:%d\n",std[i].name,std[i].computer);
if (4==key)
goto L;
break;
}
case 2:
{
for (i=0;i<N;i++)
printf("%s的english,math,compouter成绩分别为:%d,%d,%d\n",std[i].name,std[i].english,std[i].math,std[i].computer);
break;
}
case 3:
{
for (i=0;i<N-1;i++)
for (j=0;j<N-1;j++)
{
if (std[i].avg>std[i+1].avg)
{
t=std[i];std[i]=std[i+1];std[i+1]=t;
}
}
for(i=0;i<N;i++)
{
printf("%f\n",std[i].name,std[i].avg);
break;
}
}
case 4:
{
printf("获得奖学金的有:\n");
for(i=0;i<N;i++)
{
if (std[i].english>=80 && std[i].math>=80 && std[i].computer>=80) //统计奖学金人数
printf("%s\t",std[i].name);
break;
}
}
}
}
}
F. C语言:现有一个班级,共10人,本学期共学习三门课程,设计一个学生成绩管理系统
代码很长 发你邮箱?
#include<stdio.h>
struct Student
{
char name[20];
int score1;
int score2;
int score3;
int aver;
}stu[10],t[10];//用结构体完成学生姓名和成绩的输入://
int i;
int main()
{
void fun1();//完成三门课程成绩输入;或单门课程录入、或同时录入三门课//
void fun2();//完成成绩排序:按单科成绩排序、按平均分排序//
void fun3();//完成成绩统计:按单科分段统计人数、按平均分分段统计(60分以下,60-79分,80以上)//
void fun5();//完成成绩查询:单科查询、平均分查询、按姓名查询、分段查询等//
void fun6();//完成奖学金统计:三门课均高于90分,一等奖学金;三门课均高于80分,二等奖学金,统计获奖学金//
fun1();
fun2();
fun3();
fun5();
fun6();
return 0;
}
void fun1()
{
printf("输入姓名,成绩\n");
for(i=0;i<10;i++)
{
scanf("%s %d %d %d",stu[i].name,&stu[i].score1,&stu[i].score2,&stu[i].score3);
stu[i].aver=(stu[i].score1+stu[i].score2+stu[i].score3)/3;
}
printf("输入完成\n");
}
void fun2()
{
for(i=0;i<10;i++)
{
if(stu[i].score1<stu[i+1].score1)
{
t[i].score1=stu[i].score1;
stu[i].score1=stu[i+1].score1;
stu[i+1].score1=t[i].score1;
}
if(stu[i].score2<stu[i+1].score2)
{
t[i].score2=stu[i].score2;
stu[i].score2=stu[i+1].score2;
stu[i+1].score2=t[i].score2;
}
if(stu[i].score3<stu[i+1].score1)
{
t[i].score3=stu[i].score3;
stu[i].score3=stu[i+1].score3;
stu[i+1].score3=t[i].score3;
}
}
for(i=0;i<10;i++)
{
printf("第一门学科排序结果:\n");
printf("%s %d\n",stu[i].name,stu[i].score1);
printf("第二门学科排序结果:\n");
printf("%s %d\n",stu[i].name,stu[i].score2);
printf("第三门学科排序结果:\n");
printf("%s %d\n",stu[i].name,stu[i].score3);
}
}
void fun3()
{
int a[4],b[4],c[4]; //60分以下,60-79分,80以上//
for(i=0;i<10;i++)
{
if(stu[i].score1<60) a[i]++;
else if(stu[i].score1<70) b[i]++;
else c[i]++;
if(stu[i].score2<60) a[i]++;
else if(stu[i].score2<70) b[i]++;
else c[i]++;
if(stu[i].score3<60) a[i]++;
else if(stu[i].score3<70) b[i]++;
else c[i]++;
if(stu[i].aver<60) a[i]++;
else if(stu[i].aver<70) b[i]++;
else c[i]++;
}
printf("第一门学科分数段统计结果:\n");
printf("%d %d %d\n",a[0],b[0],c[0]);
printf("第二门学科分数段统计结果:\n");
printf("%d %d %d\n",a[1],b[1],c[1]);
printf("第三门学科分数段统计结果:\n");
printf("%d %d %d\n",a[2],b[2],c[2]);
printf("平均分分数段统计结果:\n");
printf("%d %d %d\n",a[3],b[3],c[3]);
}
void fun5()
{
}
void fun6()
{
for(i=0;i<10;i++)
{
if(stu[i].score1>90&&stu[i].score2>90&&stu[i].score3>90) printf("一等奖学金%s\n",stu[i].name);
else if(stu[i].score1>80&&stu[i].score2>80&&stu[i].score3>80) printf("二等奖学金%s\n",stu[i].name);
}
}
G. 我班级排名第一,三门课全系第一,但只拿过学校一等奖学金,每年都是,但是没有其他奖,拿中职国家奖学金
这个都是要二年级的才有,另外多参加一些活动,国家奖学金都蛮难的,看全面发展,光成绩好还不够
H. C语言:现有一个班级,共10人,本学期共学习三门课程,设计一个学生成绩管理系统!
没人答,自己得分