阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。
[说明]
以下程序的功能是统计学生成绩,包括输入学生的姓名和成绩,按成绩从高到低排列打印输出,对前百分之七十的学生定为合格(PASS),而后百分之三十的学生定为不合格(FAIL)。例如,当输入4名学生的姓名和成绩“Alice 67 Mary 90 Tom 56 John 88”后,程序的执行结果如下:
姓名 成绩 合格否
Mary 90 PASS
John 88 PASS
Alice 67 FAIL
Tom 56 FAIL
[C++程序]
include <stdio.h>
include <string.h>
define N 10
class student
{ protected:
char name[10];
int deg;
public:
void setname(charna[]) {strcpy(name,na);}
char * getname() {return name;}
void setdeg(int d) {deg= d;}
int getdeg(){return deg;}
};
class compute
{ int ns;
student na[N];
public:
void getdata();
void sort();
void disp();
};
void compute::getdata()
{ int i,tdeg;
char tname[10];
printf("输入学生人数:");
scanf("%d",&ns);
printf("输入学生姓名和成绩:\n");
for(i=0;i<ns;i+ +){
scanf("%s%d",tname,&tdeg);
(1);
na[i].setdeg(tdeg);
}
}
void compute::sort()
{ int i,j,pick;
(2);
for(i=0;i<ns-1;i+ +){
pick=i;
for(j=i+1;j<ns;j+ +)
if(na[j].getdeg()>na[pick].getdeg()) (3);
temp=na[i];
na[i]=na[pick];
na[pick]=temp;
}
}
void compute::disp()
{ int cutoff,i;
printf("RESULT\n");
printf("姓名 成绩 合格否\n");
cutoff=ns*7/10-1;
for(i=0;i<ns;i+ +) {
printf("%-6s%3d",(4));
if((5)) printf("\tPASS\n");
else printf("\tFAIL\n");
void main()
{ compute obj;
obj.getdata();
obj.sort();
obj.disp();
}
相关问题推荐
-
●某系统中一个组件的某个函数中,有一个变量没有正确初始化,在(54)阶段最可能发现问题。
(54)
A.单元测试
B.集成测试
C.确认测试
D.系统测试
-
写出下面消息对应的方法编号(如果该消息错误或者没有对应的方法调用,请填写“无”)
tr.perimeter()
-
●如果电子邮件发送后,接收者的电脑没有开机,那么电子邮件将(20)。
(20)
A.返回到发信人的邮箱里
B.保存在ISP的主机上
C.保存在POP3服务器上
D.保存在SMTP服务器上
-
●局域网交换机的某一端口工作于半双工方式时带宽为100Mbps,那么它工作于全双工方式时带宽为(16)(16)
A.50Mbps
B.100Mbps
C.200Mbps
D.400Mbps
-
下面关于以太网交换机部署方式的描述中,正确的是(36)。
(36)A.如果通过专用端口对交换机进行级连,则要使用交叉双绞线
B.同一品牌的交换机才能够使用级连模式连接
C.把各个交换机连接到高速交换中心形成菊花链堆叠的连接模式
D.多个交换机矩阵堆叠后可当成一个交换机使用和管理