资源预览内容
第1页 / 共20页
第2页 / 共20页
第3页 / 共20页
第4页 / 共20页
第5页 / 共20页
第6页 / 共20页
第7页 / 共20页
第8页 / 共20页
第9页 / 共20页
第10页 / 共20页
亲,该文档总共20页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
电子评阅系统程序集合电子评阅系统程序集合试题查看标题: 4、链表操作 时 限: 1000 ms 内存限制: 10000 K 总时限: 3000 ms 描述: 建立一个链表,每个节点包括学生的学号、姓名、性别、年龄。先输入 5 个学生的数据,再输入一个年龄,如果链表中有年龄等于此年龄的记录,则删除所有年龄等于此年龄的记录,否则在链表的最后增加一个新节点,学号为 180 姓名为“aaa“,性别为“male“。 。 输入: 创建链表时输入 5 个职工的职工号和工资,学号为大于100 且小于 200 的整数,姓名为长度小于 20 的字符串,性别为长度小于 10 的字符串,年龄为大于等于 0 且小于 200 的整数。 输出: 按顺序输出链表中的所有数据,每个数据占一行。 输入样例: 101 zhangsan male 30103 lisi female 18105 wangwu male 25107 maliu male 28109 niuqi female 2228 输出样例: 101zhangsanmale30103lisifemale18105wangwumale25109niuqifemale22提示: 要求用动态内存分配实现,注意 new 和 delete 的使用。 来源: 返回 #include using namespace std;class nodeprivate:int _num,_age;string _name,_sexy;public:node(int num,int age,string name,string sexy)_num=num;_age=age;_name=name;_sexy=sexy; void display(void)coutnumnamesexyage;LinkedList head(num,age,name,sexy);LinkedList *p=for(int i=1;inumnamesexyage;p-next=new LinkedList(num,age,name,sexy);p=p-next; cinage;LinkedList *pp=int flag=0;while(pp!=NULL)if(pp-Node-same(age)flag+;else pp-Node-display();pp=pp-next;if(!flag)node n(180,age,“aaa“,“male“);n.display(); return 0; 试题查看标题: 1、虚函数 时 限: 1000 ms 内存限制: 10000 K 总时限: 3000 ms 描述: 1.设计 Person 类。保护成员:姓名 string Name; 公有成员函数:void Print(); 构造函数。2.从 Person 类派生 Student 类。保护成员:学号 int Number;公有成员函数:void Print(); 构造函数。3.从 Person 类派生 Teacher 类。保护成员:教龄 int Year;公有成员函数:void Print();构造函数。4.从 Student 类派生 Graduate 类。保护成员:研究方向 string Research;公有成员函数:void Print();构造函数。在主程序中定义一个 Person 类的对象指针数组,长度由用户输入。而后,用户依次输入对象信息(对象类别及其包含的成员)。全部录入后,由用户输入要显示的对象信息在数组中的位置,并在屏幕上打印,如果用户输入”exit”则退出。输入: 指针数组长度;对象信息(输入方式见输入样例);要显示的对象在数组中的位置;exit。输出: 用户要求显示的对象信息。输入样例: 4Person ZhangStudent Zhao 200905Graduate Li 200905 DataMiningTeacher Luo 1002exit输出样例: Person ZhangGraduate Li 200905 DataMining提示: 基类的成员函数 Print()定义成虚函数。来源: 返回 #include #include using namespace std;class Personprotected :string _name;public:Person(string name)_name=name;void print()coutn;Person *datan;for(int i=0;is;if(s=“Person“)cinname;datai=new Person(name);continue;if(s=“Student“)cinnamenumber;datai=new Student(name,number);continue;if(s=“Teacher“)cinnameyear;datai=new Teacher(name,year);continue;if(s=“Graduate“)cinnamenumberresearch;datai=new Graduate(name,number,research);continue;int t,len;char ss10;cinss;while(1)if(ss0=e)break;t=0;len=strlen(ss);for(int i=0;ishow();coutss;for(int i=0;iusing namespace std;class student protected: static int totalcount;string _name;int _num,_score; public: student(string name,int num,int score)_name=name;_num=num;_score=score; totalcount+; student()_name=“;_num=0;_score=0; totalcount+; student()coutn;student *stun;for(i=0;inamenumscore;stui=new student(name,num,score); cinm;for(i=1;ia;delete stua; return 0; 试题查看标题: 2、操作符重载 时 限: 1000 ms 内存限制: 10000 K 总时限: 3000 ms 描述: 定义有理数 Rational 类。成员变量:分子 int Up; 分母 int Down。完成成员函数:Rational operator + (int num);Rational operator + (Rational r);Rational operator * (int num);Rational operator * (Rational r);完成友元函数:friend Rational operator + (int num, Rational r);friend Rational operator * (int num, Rational r);用户输入操作,可以为双操作数的加、乘运算,或多操作数的连加、连乘运算,由屏幕返回运算结果。exit 退出输入: 运算操作;exit。输出: 运算结果。输入样例: 1/3+1/3+1/32+1/31/3+22*1/31/3*2*1/3exit输出样例: 17/37/32/32/9提示: 设计 Rational 类的成员函数 Reduce(),使其能够对输入的有理数约分。计算结果的输出要求:若为整数,不以分数形式输出。例如,结果为 1,输出为 1,而非 1/1。来源: 返回 #include using namespace std;class fractionprivate:int element,denominator;int gcd(int a,int b)if(b=0)return a;return gcd(b,a%b); void yf()int a=element;int b=denominator;if(a=s.length()return one; int i=a,tflag=0,symbol;int t2;t0=0;t1=0;while(si!=+while(s!=“exit“)fraction ans=calc(0,s);ans.display();cins; return 0;
收藏 下载该资源
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号