首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。 [说明] 以下程序的功能是统计学生成绩,包括输入学生的姓名和成绩,按成绩从高到低排列打印输出,对前百分之七十的学生定为合格(PASS),而后百分之三十的学生定为不合格(FAIL)。例如,
阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。 [说明] 以下程序的功能是统计学生成绩,包括输入学生的姓名和成绩,按成绩从高到低排列打印输出,对前百分之七十的学生定为合格(PASS),而后百分之三十的学生定为不合格(FAIL)。例如,
admin
2009-02-15
15
问题
阅读以下说明和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
.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
;
na
=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();
}
选项
答案
(1) na[i].setname(tname) (2) student temp (3) pick=j (4) na[i].getname(),na[i].getdeg() (5) i<=cutoff
解析
本程序定义了两个类student和compute,另有三个公共成员函数getdata()、sort()和disp(),它们分别用于获取数据、按成绩排序和输出数据。
(1)此处获取扑更新学生对象na
的姓名属性;
(2)sort()函数后半部分使用了student类型的变量 temp,应该在此处声明;
(3)sort()函数的功能是将数组na[]按成绩降序排列,这里使用的是简单选择排序算法,pick和i都是数组下标,且pick记录了自第i个位置起最大元素的下标;
(4)根据程序输出的示例,此处应依次输出na
的姓名和成绩,分别需使用getname()和getdeg()方法获得;
(5)cutoff是前百分之七十学生的序号。
转载请注明原文地址:https://jikaoti.com/ti/vvW7FFFM
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
某年级有甲乙两班,在最近举行的全年级数学考试中,甲班平均成绩为P,乙班平均成绩为Q,甲班人数占全年级的比例为α,则全年级的平均成绩为()。
Windows多窗口的排列方式不包括()。
一条内存不常见的容量是(1)。
以下关于Excel单元格操作的叙述,(52)是错误的。
在使用计算机的过程中应增强的安全意识中不包括________________。
鼠标指针的形状取决于它所在的位置以及与其他屏幕元素的相互关系。在文字处理的文本区域,指针就像(),指向当前待插入字符的位置。
数据分析经常需要把复杂的数据分组,并选取代表,将大量数据压缩或合并得到一个较小的数据集。这个过程称为()。
数据属性有业务属性、技术属性(与技术实现相关的属性)和管理属性三大类。以下属性中,()属于业务属性。
要使Word能自动提醒英文单词的字母拼写是否正确,应设置Word的(47)选项功能。
在浏览网页时,当鼠标指针移至某些文字或某些图片时,会出现手形状,通常是由于网页在这个地方做了(17)。
随机试题
_____sheislivingnowisnotknowntoanybody.
根尖周肉芽肿的典型X线表现是
A.卡马西平 B.丙戊酸钠 C.苯妥英钠 D.乙琥胺 E.地西泮癫痫精神运动性发作首选
急性腹膜炎腹痛的特点是( )。【历年考试真题】
在一类区内,除()外,禁止新建各种工业炉窑,原有的工业炉窑改建时不得增加污染负荷。
发行人应根据交易的性质和频率,按照偶发性和经常性分类披露关联交易及关联交易对经营成果的影响。( )
以修改其他债务条件进行债务重组涉及的或有应付金额在以后期间没有发生的,债务人应当冲销前期已确认的预计负债,同时冲减营业外支出。()
f(2)代表的短路类型是()。
Hcnestm6bighouse
从所给的四个选项中,选择最合适的一个填入问号处,使之呈现一定的规律性:
最新回复
(
0
)