阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。[说明]以下程序的功能是统计学生成绩,包括输入学生的姓名和成绩,按成绩从高到低排列打印输出,对前百分之七十的学生定为合格(PASS),而后百分之三十的学生定为不合格(FAIL)。例如,当输入4名学生的姓名和成绩“Alice 67 Mary 90 Tom 56 John 88”后,程序的执行结果如下:姓名 成绩 合格否Mary 90 PASSJohn 88 PASSAlice 67 FAILTom 56 FAIL[C++程序]include <stdio.h>include <string.h>define N 10class 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();}

阅读以下说明和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();

}


相关考题:

阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。【C++程序】include include 阅读以下说明和C++程序,将应填入(n)处的字句写在对应栏内。【C++程序】include < stdio. h >include < string. h >define Max 1000class Bank{int index;char date [Max] [10]; // 记录交易日iht amount[Max]; // 记录每次交易金额,以符号区分存钱和取钱int rest[ Max]; // 记录每次交易后余额static iht sum; // 账户累计余额public:Bank( ) {index =0;}void deposit( char d[ ] , int m) //存入交易{strcpy ( date [ index ], d);amount[ index] = m;(1);rest[ index] = sum;index++;}void withdraw (char d[ ], int m) //取出交易{strcpy( date[ index] ,d);(2);(3);rest[ index] = sum;index++;}void display( );};int Bank:: sum = 0;void Bank:: display ( ) //输出流水{int i;printf("日期 存入 取出 余额\n");for (4){printf(" %8s" ,date[i] );if (5)printf(" %6d" , -amount[i] );elseprintf( "%6d ",amount[i] );printf( "% 6d\n" ,rest[i] );} }void main( ){Bank object;object. deposit ( "2006.2.5", 1 00 );object. deposit( "2006.3.2" , 200);object. withdraw( "2006.4.1", 50);object. withdraw( "2006.4.5", 80);object. display ( );}本程序的执行结果如下:日期 存入 取出 余额 2006.2.5 100 1002006.3.2 200 3002006.4.1 50 2502006.4.5 80 170

阅读以下说明和流程图,将应填入(n)处的字句写在对应栏内。【说明】已知头指针分别为La和lb的有序单链表,其数据元素都是按值非递减排列。现要归并La和Lb得到单链表Lc,使得Lc中的元素按值非递减排列。程序流程图如下所示:

阅读以下说明及Visual Basic程序代码,将应填入(n)处的字句写在对应栏内。【说明】以下程序为求行列式X(5,5)的值S。【Visual Basic代码】Private Function col ( byval x ( 5,5 ) as integer ) as longdim fesult as longdim temp as longdim I as integerdim j as integerdim k as imegerresult = 0for I = to 5(1)for j = 1 to 5if I+j>6 thenk= ( 1+j ) mod 5elsek=1endiftemp=temp*x ( k,j )(2)result=(3)(4)(5)End function

阅读以下说明和流程图,将应填入(n)处的字句写在对应栏内。[说明]设学生某次考试的成绩按学号顺序逐行存放于某文件中,文件以单行句点“.”为结束符。下面的流程图读取该文件,统计出全部成绩中的最高分max和最低分min。

阅读以下说明和c++码,将应填入(n)处的字名写在的对应栏内。[说明] 以下函数完成求表达式的值,请填空使之完成此功能。float sum ( float x ){ float s=0.0;int sign = 1;(1);for(inti=1;(2); i+ +){t=t*x;s=s+(3);sign = - sign;(4);}

阅读以下说明,以及用C++在开发过程中所编写的程序代码,将应填入(n)处的字句写在对应栏内。【说明】在下面函数横线处填上适当的字句,使其输出结果为:构造函数.构造函数.1,25,6析构函数析构函数.【C++代码】include "iostream.h"class AA{ public;AA(int i,int j){A=i; B=j;cout<<"构造函数.\n";}~AA(){(1);}void print();private:int A, B;};void AA∷print(){cout<<A<<","<<B<<endl;}void main(){AA *a1, *a2;(2)=new AA(1, 2);a2=new AA(5, 6);(3);a2->print();(4) a1;(5) a2;}

阅读下列程序说明和C++程序,把应填入其中(n)处的字句,写在对应栏内。【说明】阅读下面几段C++程序回答相应问题。比较下面两段程序的优缺点。①for (i=0; i<N; i++ ){if (condition)//DoSomething…else//DoOtherthing…}②if (condition) {for (i =0; i<N; i++ )//DoSomething}else {for (i=0; i <N; i++ )//DoOtherthing…}

试题三(共 15 分)阅读以下说明和 C 程序,将应填入 (n) 处的字句写在答题纸的对应栏内。

阅读下列说明和C++-代码,将应填入(n)处的字句写在答题纸的对应栏内。 【说明】 某发票(lnvoice)由抬头(Head)部分、正文部分和脚注(Foot)部分构成。现采用装饰(Decorator)模式实现打印发票的功能,得到如图5-1所示的类图。【C++代码】 #include using namespace std; class invoice{ public: (1){ cout

阅读下列说明和?C++代码,将应填入(n)处的字句写在答题纸的对应栏内。【说明】阅读下列说明和?Java代码,将应填入?(n)?处的字句写在答题纸的对应栏内。【说明】某快餐厅主要制作并出售儿童套餐,一般包括主餐(各类比萨)、饮料和玩具,其餐品种类可能不同,但其制作过程相同。前台服务员?(Waiter)?调度厨师制作套餐。现采用生成器?(Builder)?模式实现制作过程,得到如图?6-1?所示的类图。