java的简单的实验题 ~~~~急

2.2.2程序设计部分1.试设计一个复数类,该类有实部和虚部两个成员数据,成员数据采用私有访问权限,同时该类有两个共有成员函数,分别用来设置成员数据和输出成员数据,在主函... 2.2.2 程序设计部分
1 .试设计一个复数类,该类有实部和虚部两个成员数据,成员数据采用私有访问权限,同时该类有两个共有成员函数,分别用来设置成员数据和输出成员数据,在主函数中分别采用对象方式,指针方式和引用方式来调用该类的公有函数设置和输出成员数据。

2 .设计实现一个 CPoint 类,满足以下要求:
a . 该类包含两个整型成员变量 x (横坐标)和 y (纵坐标),以及一个输出函数 Print() 用来输出横坐标和纵坐标,要求不可以在类的外部直接访问成员变量;
b .可以采用没有参数的构造函数初始化对象,此时的成员变量采用默认值 0 ;
c .可以采用直接输入参数的方式来初始化该类的成员变量;
d .可以采用其它的 CPoint 对象来初始化该类的成员变量;
e .设计一个主函数来测试以上功能。

3 .设计一个 CStudent (学生)类,并使 CStudent 类具有以下特点:
a .该类具有学生姓名、学号、程序设计、信号处理、数据结构三门课程的成绩;
b .学生全部信息由键盘输入,以提高程序的适应性;
c .通过成员函数统计学生平均成绩,当课程数量增加时,成员函数无须修改仍可以求取平均成绩;
d .输出学生的基本信息、各科成绩与平均成绩;
e .学生对象的定义采用对象数组实现;
f .统计不及格学生人数。

4 .设计一个用于人事管理的员工类(employee),包含的成员变量有:编号、性别、出生日期、身份证号码等,成员函数有:构造函数、析构函数、拷贝构造函数、员工基本信息输出函数等。其中,编号用字符数组,身份证号码用字符指针,出生日期为日期类的对象

如果能完全按照速度回答,我还会追加的!!谢谢
展开
 我来答
longhua828
2009-03-29 · TA获得超过114个赞
知道小有建树答主
回答量:170
采纳率:0%
帮助的人:144万
展开全部
1.Java里边对象只能以引用方式使用
public class Test {
public static void main(String[] args) {
FuShu f = new FuShu();
f.setValue(5, 6);
System.out.println(f.toString());
}
}

class FuShu {
private int shi;//实部
private int xu;//虚部

public void setValue(int shi, int xu) {
this.shi = shi;
this.xu = xu;
}

public String toString() {
return "z=" + shi + "+" + xu + "i";
}
}

2.其实CPoint空的构造方法没有必要,因为类的成员变量肢丛孙自动初始化
public class Test {
public static void main(String[] args) {
CPoint c1 = new CPoint();
c1.Print();

CPoint c2 = new CPoint(5, 6);
c2.Print();

CPoint c3 = new CPoint(c2);
c3.Print();
}
}

class CPoint {
private int x;
private int y;

public CPoint() {
this.x = 0;
this.y = 0;
}

public CPoint(int x, int y) {
this.x = x;
this.y = y;
}

public CPoint(CPoint c) {
this.x = c.x;
this.y = c.y;
}

public void Print() {
System.out.println("(" + x + "," + y +")");
}
}

3.通过一个内部类来保证CStudent的独立性
public class Test {
public static void main(String[] args) {
int total = 50;//总人数
CStudent[] cs = new CStudent[total];

for(int i=0; i<total; i++) {//输入学生的信息
cs[i] = new CStudent();
}

for(int i=0; i<total; i++) {//输出学生的信息
cs[i].print();
}

int count = 0;//不及格的人数
for(int i=0; i<total; i++) {
if(cs[i].average()<60.0)count++;
}

System.out.println("\n不及格人数:" + count);
}
}

class CStudent {

String name;//姓名
String num;//学号
Score score;//各科成绩

public CStudent() {
System.out.println("请输入学生的信息:");
System.out.print("学号:");
this.num = System.console().readLine();
System.out.print("姓名:");
this.name = System.console().readLine();
score = new Score();
}

public double average() {
return score.average();
}

public void print() {
System.out.println("姓名:" + name);
System.out.println("学号:" + num);
score.print();
}

/郑祥*成绩类,管理有关的历链成绩东西*/
class Score {
int cxsj;//程序设计
int xhcl;//信号处理
int sjjg;//数据结构

public Score() {
System.out.println("请输入成绩:");
System.out.print("程序设计:");
this.cxsj = Integer.parseInt(System.console().readLine());
System.out.print("信号处理:");
this.xhcl = Integer.parseInt(System.console().readLine());
System.out.print("数据结构:");
this.sjjg = Integer.parseInt(System.console().readLine());
}

public double average() {//平均成绩
return (cxsj+xhcl+sjjg)/3;
}

public void print() {
System.out.println("程序设计:" + cxsj);
System.out.println("信号处理:" + xhcl);
System.out.println("数据结构:" + sjjg);
System.out.println("平均成绩:" + average());
}
}
}
4.你好像问错地方了,你应该去C++专区问,Java没有析构函数!
import java.util.*;
class Employee {
String bianhao;//编号
String sex;//性别
Date birthday;//出生日期
String id;//身份证号码

public Employee(String bianhao, String sex, Date birthday, String id?) {
this.bianhao = bianhao;
this.sex = sex;
this.birthday = birthday;
this.id = id;
}

public Employee(Employee e) {//这个算是拷贝构造函数吧
this.bianhao = e.bianhao;
this.sex = e.sex;
this.birthday = e.birthday;
this.id = e.id;
}

public void print() {//输出员工信息
System.out.println("编号:" + bianhao);
System.out.println("性别:" + sex);
System.out.println("出生日期:" + birthday);
System.out.println("身份证号码:" + id);
}
}

希望你能及时给分,我写这个用了一个小时的时间呢,完全手写,累死了!
卡丁车①号f725adc
2009-03-29 · TA获得超过174个赞
知道小有建树答主
回答量:249
采纳率:0%
帮助的人:156万
展开全部
最后那个,析陆辩液构函数跟指灶者针java里都没有吧,早物只能用c++了好像!!

前面的都挺简单的。。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
zhangxu1216
2009-03-27 · 超过41用户采纳过TA的回答
知道小有建树答主
回答量:173
采纳率:0%
帮助的人:82.6万
展开全部
里面有指针的问题,Java是做不了的,你用C做吧,我看了,应该不怎么难的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
battle3000
2009-03-27 · TA获得超过321个赞
知道小有建树答主
回答量:247
采纳率:0%
帮助的人:205万
展开全部
嗯,是挺简单,适合初学者,选题不错
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
爱不会客串cL
2009-03-26
知道答主
回答量:16
采纳率:0%
帮助的人:0
展开全部
初学者,指针方式是什么?麻烦讲解下,满意,给分.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 4条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式