面向对象程序设计语言 试卷A评分标准
面向对象程序设计(2013)A_答案与评分

2012─2013学年第一学期《面向对象程序设计》课程考试试卷(A卷)考试方式:上机学分:4 考试时间:150分钟班级:序号:姓名:1.定义类【15分,完善题,已有项目UseOOP】:定义一个计算类MyClass,包括一个整数Num,完善MyClass类计算从1到Num的累加和与累乘积,以整数10为例,测试应用程序,输出结果参照下图。
注意:本题有4个待完善点。
结果贴图:2.显示素数【15分,编程题,建议项目Timer】:使用一个定时器,按下“开始”按钮后开始输出从2开始的10个素数,结果显示在多行文本框中。
输出结果参照下图。
结果贴图:3.字符图形【15分,编程题,建议项目CharGraph】:编写一个程序输出九九乘法表(使用Label控件输出,要示输出样式与参考结果完全相同),参考结果图如下。
结果贴图:4.读文件【15分,编程题,建议项目ReadFile】:从测井数据文件DataIn.txt(该文件在提供的解决方案中)中读入数据,计算电阻率与声波的均值显示在列表框(ListBox)中,均值保留二位小数,参考结果图如下。
结果贴图:5.GDI绘图【15分,完善题,已有项目GdiGraph】:参照参考结果图和程序中的提示完成程序,电阻率曲线的数据使用程序中深度数据_depth和电阻率数据_rt,声波曲线的数据使用程序中深度数据_depth和声波数据_ac。
参照结果图如下。
注意:本题有4个待完善点,图中的曲线为折线,先水平绘线,再垂直绘线。
结果贴图:6.创建TreeView视图【15分,编程题,建议项目UseControl】:完全使用C#代码创建有三个节点的TreeView树,并展开所有树形节点,参考结果如下图。
注意:使用可视化方法添加节点无效。
结果贴图:。
C# 程序设计基础A卷评分标准 上机考试

C#程序设计语言期末试题上机考试(A卷)评分标准第一题:(20分)新建一个网页,命名为姓名计算机器的简拼,如王虹所创建的该网页的文件名为whjsq.aspx,在浏览器中查看后的效果核心部分如图4所示:具体要求如下:图4 测试结果1.该网页整体上有上中下三个1*1的表格组成,各表格的样式不同,最上面表格的背景图是images文件夹下的BG1.jpg,最下面表格的背景图是images 文件夹下的BG150.jpg(5分);2.在whjsq.aspx网页中间的表格中添加两个TextBox控件、一个ListBox控件、一个Button控件和一个Lable控件;Button控件的Text属性设置为“=”,ListBox控件需要能够实现加、减、乘和除四种运算符的选择功能(5分);3.为命令按钮“=”控件的Click事件编写代码,使得选中各运算符,点击=命令按钮,能够在右侧的Lable控件中显示运算结果,需要自拟数据,对各运算符进行测试,把测试结果抓图,存放到WORD文档中(10分);第二题:(30分)新建一个网页,命名为Default.aspx,在浏览器中查看后的效果如图5所示:具体要求如下:图5 第一题Default.aspx网页浏览效果1.该网页整体上有上中下三个1*1的表格组成,各表格的样式不同,最上面表格的背景图是images文件夹下的BG1.jpg,最下面表格的背景图是images 文件夹下的BG150.jpg,XX为自己的姓名;(10分)2.性别用RadioButtonList控件实现,专业用DropDownList控件实现,其它输入控件用TextBox控件实现,网上报名和重置用Button控件实现,提示信息实现方式任意,各控件的ID均需要使用自己姓名的简拼进行标记,如王虹的“用户名”控件ID的命名规则是whyhm;(10分)3.*标注的项要求为必填项,用相应的验证控件实现,设置验证控件的属性使得密码的长度不小于8位,手机号、身份证号和电子邮件符合国家标准,确认密码不仅需要必填,而且需要与密码一致。
面向对象程序设计试卷A答案及评分标准

《面向对象程序设计》试卷A答案及评分标准本试卷共10个题,分别按以下标准评分,最后根据整个答题的情况,从程序设计风格的角度给予0-5分的附加分。
1、编写程序,将从键盘读入的所有大小写字母写入名为a.txt的文件中(遇EOF结束)。
(本题总分10分,fopen函数使用妥当4分,读入过程正确4分,关闭文件2分。
程序结构完整,有不妥之处,酌情扣分。
)#include <stdio.h>main ( ){FILE *fptr;fptr = fopen("a.txt","w");if (fptr==NULL)return 0;char a;a=getchar( );while(a!=EOF ){if(a>=’a’ && a<=’z’|| a>=’A’ && a<=’Z’) fputc(a,fptr);a = getchar();}fclose(fptr);return 0;}2、定义一个矩形类Rectangle,并在main函数中用它声明一个矩形对象,然后利用接口设置该矩形对象的长和宽、计算面积并输出。
(本题总分10分,类结构2分,设置矩阵对象的长与高各1分,计算面积函数2分,输出函数2分,主函数2分。
程序结构完整,有不妥之处,酌情扣分。
)#include <stdio.h>#include <iostream.h>class Rectangle{public:int getArea();void setWidth(int w);void setLength(int l);private:int Length;int Width;};int Rectangle::getArea(){return Length*Width;}void Rectangle::setLength(int l){Length=l;}void Rectangle::setWidth(int w){Width=w;}main(){int len,wid;Rectangle r1;cout<<"Input the Rectangle's Information"<<endl;cout<<"Lentgh:"<<endl;cin>>len;cout<<"Width:"<<endl;cin>>wid;r1.setLength(len);r1.setWidth(wid);cout<<"Rectangle's Area:"<<r1.getArea()<<endl;return 0;}3、定义一个整数栈类IStack,并用该类声明一个整数栈对象istack,往该对象压入整数6、7、8,然后逐一弹栈输出。
A卷参考答案及评分标准

江苏科技大学(张家港)2013 -2014 学年 2 学期计算机程序设计VC++ 课程试题 (A)卷标准答案和评分标准二、填空题(每空2分,共40分)●基本概念题(每空2分,共10分)1. (1)02. (2)个数3. (3)04. (4)撤销对象5. (5)共有访问或public●阅读程序,写出程序运行结果(每空2分,共20分)1. (6)a=2 (7)b=82. (8) 3 (9) 43. (10) 5 4 3 2 1 (11)0 2 4 6 8 104. (12)10 (13)75. (14)调用了A类中的构造函数(15)调用了A类中的构造函数●完善程序题(每空2分,共10分)1. (16)i<30 (17)i%2==1 或 i%2!=02. (18)*q=*p(19)*q='\0'(20)scopy(s1,s2)三、编程题(每题10分,共30分)四、编程题(第1题6分,第2题10分,共16分)1.参考程序:#include<iostream.h> //1' void main() {int count=0; //1'for(int m=100;m<300;m++) // 1'{for(int i=2;i<m;i++) //2{if(m%i==0)break; //2}if(i>=m) //2'{cout<<m<<'\t';count++;if(count%8==0) //1'cout<<endl;}}cout<<endl;}2.参考程序:#include<iostream.h>int GetMaxY(int m,int n) //1'{for(int i=m;i>=1;i--) //1'if(m%i==0&&n%i==0) //1'break;return i; //1'}int GetMinB(int m,int n) //1'{for(int i=m;;i++) //1'if(i%m==0&&i%n==0) //1'break;return i; //1'}void main(){int a,b;cin>>a>>b;cout<<"最大公约数为:"<<GetMaxY(a,b)<<endl; //1'cout<<"最小公倍数为:"<<GetMinB(a,b)<<endl; //1'}3.参考程序:#include<iostream.h>class shape{protected:double a,b; //0.5'public:shape(double x=0,double y=0){a=x;b=y;}//0.5'virtual double volume()=0; //0.5'};class cube:public shape //0.5'{public:cube(double x,double y=0):shape(x,y) { ;} //0.5'double volume() { return 3.14159*a*a*a*4/3; } //0.5'};class sphere:public shape //0.5'{public:sphere(double x,double y=0):shape(x,y) { } //0.5'double volume() { return a*a*a; } //0.5' };class cylinder:public shape //0.5'{public:cylinder(double x,double y):shape(x,y) { } //0.5'double volume(){ return 3.14159*a*a*b;} //0.5'};void main(){ shape *p; //0.5'cube C(0.8); sphere S(3.2); cylinder R(4.1,5); //1'p=&C; //0.5'cout<<"球体的体积是"<<p->volume()<<endl;//0.5'p=&S;//0.5'cout<<"正方体的体积是"<<p->volume()<<endl; //0.5'p=&R;//0.5'cout<<"圆柱体的体积是"<<p->volume()<<endl;}。
java面向对象程序设计试卷答案及评分标准

Java面向对象程序设计试卷(三)参考答案一、填空题(每空2分,共40分)(1) __C_____________________________(2) __D_____________________________(3) __C_____________________________(4) __num3=(byte)(num1+num2)_______(5) __3th season______________________(6) __20_____________________________(7) __D______________________________(8) __3____2_________________________(9) __start() _________________(10) __C______________________________(11) __Transfer Control Protocol______________(12) _ 连接__________(13) __A(14) __B _______(15) __A__C____________________________(16) __D______________________________(17) __try______________________________(18) __ NumberFormatException e ___ _(19) _ _调用了该线程的sleep()休眠方法_______ __(20) __装载JDBC驱动程序并连接数据库______二、编程题(共60分)1.(15分)评分标准:属性定义:3分;构造器方法:6分;方法实现:6分;参考程序:class Rect{protected double width,height;public Rect(double width,double height){this.width=width;this.height=height;}public Rect(){width=10;height=10;}public double area(){return width*height;}public double perimeter(){return 2*(width+height);}}2.(15分)评分标准:extends关键字的使用:3分;属性定义:2分;构造器方法:6分;方法实现:4分参考程序:class PlainRect extends Rect{private double startX,startY;public PlainRect(double startX,double startY,double width,double height){ super(width,height);this.startX=startX;this.startY=startY;}public PlainRect(){super();startX=0;startY=0;}public boolean inInside(double pointX,double pointY){if(pointX>=startX&&pointX<=(startX+width)&&pointY>=startY&&pointY<=(startY+height)) return true;else return false;}}3.(10分)评分标准:程序框架:2分;对象创建:2分;面积与周长计算机打印:4分;判断点是否在矩形内并打印信息:2分参考程序:class Test{public static void main(String args[]){PlainRect pr=new PlainRect(10,10,10,10);System.out.println("面积为:"+pr.area());if(pr.inInside(23,13))System.out.println("在矩形内");elseSystem.out.println("不在矩形内");}}4.(20分)评分标准:程序包的导入:3分;程序窗体:3分;组件与添加:5分;事件监听器的添加:2分;实现ActionLister接口:2分;事件处理代码:5分;参考程序:import javax.swing.*;import java.awt.*;import java.awt.event.*;class FrameTest extends JFrame implements ActionListener{JLabel label;public FrameTest(){super("图形界面与事件处理");setSize(250,150);Container con=getContentPane();con.setLayout(null);label=new JLabel("0");label.setBounds(100,30,50,30);con.add(label);JButton button=new JButton("按钮(+5)");button.setBounds(60,60,120,30);button.addActionListener(this);con.add(button);setVisible(true);}public static void main(String args[]){FrameTest t=new FrameTest();}public void actionPerformed(ActionEvent e){String str=label.getText();int i=Integer.parseInt(str)+5;label.setText(String.valueOf(i));}}。
2010-2011第1学期面向对象试题A卷答案及其评分标准

2010-2011学年第1学期面向对象程序设计试题(A)卷答案及其评分标准1.(20分)这只是参考,只要相近都可以#include <iostream.h>#include <math.h>class Point //Point类定义{public:Point(int xx=0, int yy=0) {X=xx;Y=yy;}Point(Point &p);int GetX() {return X;}int GetY() {return Y;}private:int X,Y;};……………………….5分Point::Point(Point &p) //拷贝构造函数的实现{X=p.X;Y=p.Y;cout<<"Point拷贝构造函数被调用"<<endl;}class Distance //Distance类的定义{public: //外部接口Distance(Point xp1, Point xp2);double GetDis(){return dist;}private: //私有数据成员Point p1,p2; //Point类的对象p1,p2double dist;};……………………….5分Distance::Distance(Point xp1, Point xp2):p1(xp1),p2(xp2){cout<<"Distance构造函数被调用"<<endl;double x=double(p1.GetX()-p2.GetX());double y=double(p1.GetY()-p2.GetY());dist=sqrt(x*x+y*y);}……………………….5分void main(){Point myp1(1,1),myp2(4,5); //定义Point类的对象Distance myd(myp1,myp2); //定义Distance类的对象cout<<"The distance is:";cout<<myd.GetDis()<<endl;}……………………….5分2. (10分)#include <iostream.h>const float PI = (float)3.14159; //给出p的值const float ConcretePrice = 20.; //过道水泥单价class Circle //定义类Circle 及其数据和方法{public: //外部接口Circle(float r); //构造函数float Area(); //计算圆面积private: //私有数据成员float radius;}; ……………………….3分// 类的实现Circle::Circle(float r) { radius=r; } // 构造函数初始化数据成员radiusfloat Circle::Area() // 计算圆的面积{return PI * radius * radius;} ……………………….3分//主函数实现void main (){float radius, ConcreteCost;Circle Pool(5); // 定义Circle 对象Circle PoolRim(10);ConcreteCost = (PoolRim.Area() - Pool.Area())*ConcretePrice;cout << "Concrete Cost is $" << ConcreteCost << endl; ……………………….4分}3.(10分)常属性:是指该类的对象的属性被初始化后不再发生变化,如人的性别。
C++面向对象编程技术试卷A

private:
intx;
int y ;
}
voidf()
{
Point *ptr = new Point(4,5);
__________________
}
A Point(5,6) B ptr->Point(5,6) C ptr->SetPosition(5,6) D ABC都可以。
………………………………密………………………………封…………………………………线………………………………
14.对于下面定义的类Point,在函数f()中将对象成员x,y的值修改为5,6的语句应该是c:
Point(int x1=0, int y1=0) {x = x1; y = y1}
9.不能实现函数之间数据传递的是_________。
A全局变量B局部变量C静态变量D函数返回值
10.假定Cat为一个类,则该类的拷贝初始化构造函数的声明语句为_________。
A Cat &(Cat x); B Cat (Cat &x) C Cat (Cat x); D Cat (Cat *x)
11.为了使类中的某个成员不能被类的对象通过成员操作符访问,则不能把该成员的访问权限定义为_________。
C. float (*fp)[25][9]=new float[10][25][9]; D. float *fp=new float[25][9];
………………………………装………………………………订…………………………………线………………………………
课程________________________班级________________________姓名__________________________学号________________________
C语言程序设计(A卷)-参考答案及评分细则

重庆邮电大学2014-2015学年1学期C语言程序设计试卷(期末)(A卷)(闭卷)参考答案及评分细则(计算机科学与技术、信息安全卓越工程师班)一、基础知识测试题(本大题共15小题,每小题4分,共60分)二、编程题(本大题共3小题,共40分)1 (8分)#include <stdio.h>void main() (1分) { int i,j,k,count=0; (1分) for(i=1;i<=10;i++) (1分)for(j=1;j<=20;j++) (1分){ k=50-i-j; (1分)if(i*10+j*5+k==100) (1分){ count++; printf("10元%d张,5元%d张,1元%d张\n",i,j,k); (1分)}}printf("总共有%d种方案\n",count); (1分) }C语言程序设计试卷参考答案及评分细则第1页(共2页)2(12分,自定义函数8分,主函数4分)#include <stdio.h>int BePalindrome(char *str) (1分) { char *p,*q; (1分) p=q=str;while(*q) q++; (1分)q--;while(p<q) (2分){ if(*p!=*q) (1分)return 0;p++; (1分)q--;}return 1; (1分) }void main() (1分) { char a[80]; (1分) printf("Input a string:");gets(a); (1分)if(BePalindrome(a)) (1分)printf("是回文!\n");elseprintf("不是回文!\n");}3(20分)#include <stdio.h>#include <stdlib.h>#define N 30#define M 10typedef struct Player (2分){ int id;char name[10];float score;}PLAYER;void main() (1分){ PLAYER users[N]; (1分)int i,j;float m,s;FILE *fp; (1分)//输入评委打分printf("Please input user's score:\n");for(i=0;i<N;i++) (2分){ printf("Input id and name:"); (1分)scanf("%d%s",&users[i].id,users[i].name);printf("Input %d scores:",M);for(j=0,s=0;j<M;j++) (1分){ scanf("%f",&m);s+=m;}users[i].score=s/M; (1分)}//排序for(i=0;i<N-1;i++) (2分)for(j=i;j<N;j++) (2分)if(users[i].score<users[j].score) (1分){ PLAYER t;t=users[i];users[i]=users[j];users[j]=t;}//输出前三名到文件fp=fopen("result.txt","w"); (1分)if(fp==NULL) (1分){printf("error!\n");exit(0);}for(i=0;i<3;i++) (2分){fprintf(fp,"No.%d:%d %s %.2f\n",i+1,users[i] .id,users[i].name,users[i].score);}fclose(fp); (1分)}C语言程序设计试卷参考答案及评分细则第2页(共2页)C语言程序设计试卷参考答案及评分细则第3页(共2页)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《面向对象程序设计语言》试卷A评分标准
一、判断题。
(本题共10小题,每题1分,满分10分)
1、√
2、√
3、√
4、×
5、×
6、×
7、√8.√9.√10.×
二、简答题。
(本题共3 小题,满分30分)
1、(10分,只要用自己的话说出主要内容即可的满分)
对象是现实世界中一个实际存在的事物,它可以是有形的,也可以是无形的。
对象是构成世界的一个独立单位,它具有自己的静态特征和动态特征。
面向对象方法中的对象,是系统中用来描述客观事物的一个实体,它是用来构成系统的一个基本单位,由一组属性和一组行为构成。
面向对象的方法将数据及对数据的操作方法放在一起,作为一个相互依存、不可分离的整体--对象。
对同类型对象抽象出其共性,形成类。
类中的大多数数据,只能用本类的方法进行处理。
类通过一个简单的外部接口,与外界发生关系,对象与对象之间通过消息进行通讯。
这样,程序模块间的关系更为简单,程序模块的独立性、数据的安全性就有了良好的保障。
通过实现继承与多态性,还可以大大提高程序的可重用性,使得软件的开发和维护都更为方便。
面向对象方法的基本原则是直接面对客观存在的事物来进行软件开发,将人们在日常生活中习惯的思维方式和表达方式应用在软件开发中,使软件开发从过分专业化的方法、规则和技巧中回到客观世界,回到人们通常的思维。
2、(10分,只要用自己的话说出主要内容即可的满分)
当某类的部分或全部直接基类是从另一个基类派生而来,这些直接基类中,从上一级基类继承来的成员就拥有相同的名称,派生类的对象的这些同名成员在内存中同时拥有多个拷贝,此时可以使用作用域分辨符来唯一标识并分别访问它们,也可以将直接基类的共同基类设置为虚基类,这时从不同的路径继承过来的该类成员在内存中只拥有一个拷贝,这样就解决了同名成员的唯一标识问题。
虚基类的声明是在派生类的定义过程,语法格式为:class 派生类名:virtual 继承方式基类名在多继承情况下,虚基类关键字的作用范围和继承方式关键字相同,只对紧跟其后的基类起作用。
声明了虚基类之后,虚基类的成员在进一步派生过程中,和派生类一起维护一个内存数据拷贝。
3、(10分,只要用自己的话说出主要内容即可的满分)
多态是指同样的消息被不同类型的对象接收时导致完全不同的行为,是对类的特定成员函数的再抽象。
C++支持的多态有多种类型,重载(包括函数重载和运算符重载)和虚函数是其中主要的方式。
三、阅读程序写出程序执行结果。
(本题共3小题,满分30分)
1、(10分)
The result is: 60
The result is: 33
The result is: 15
The result is: 6
2、(10分)
Constructing Base2 2
Constructing Base1 1
Constructing Base3*
Constructing Base1 3
1。