1.请编写程序定义和使用枚举变量
2.下面三段程序,如果有错就指出,没有错就写出运行结果
1) #include<iostream>
Using namespace std;
void main()
{for(inti=0;i<8;i++){
if( i%2==0 ) cout<< i+1 <<endl;
if( i%3==0 ) continue;
if( i%5==0 ) break;
cout<<"End of Program.\n";
}
cout<<"End of Program.\n";
}
2) #include <iostream>
using namespace std;
void main(){ int c;
if( (c=cin.get())!=EOF ) {
main();cout<< c;
}
}
3) #include <iostream>
using namespace std;
void func(int b[],intcur,int s){ //这个函数不太记得了,但是就是递归反序显示数组元素,希望复试的同学纠正下,但是这个函数本身就错的....
{ if( cur < s )
func(c,cur+1,s);
cout<< b[cur] <<" "; }
}
void main(){
int a[10] = {1,2,3,4,5,6,7,8,9,10};
cout<<func(a,0,10) <<endl;
}
3.一个函数模板和一个模板函数有什么区别?
4.为什么说继承是面向对象编程的最主要特征之一?请简要说明原因
5.如何定义和使用虚函数?虚函数对多态有什么作用和意义
二.编程题
1.编写程序实现求最小公倍数.
2.编写程序实现求输入一些列整数的和,例如输入第一个数字n,代表整数的个数,后面输入n个数字.[要求每个输入语句只输入一个整数].
3.输入一行文本,输出一张表.统计文本中单词出现的次数.例如输入" Welcome come to C++! ....is convince, and ....."//具体的记不清了,
其中"welcome"出现1次...等等 // 可能需要考虑大小写转换和标点符号的过滤..因为示例文本的符号都是紧跟在最后一个单词后面!!!!
4.实现两个类,一个Name类,有三个数据成员(first,middle,last)和两个成员函数(构造函数和printName()),一个Person类,里面有三个数据成员name,nationality,sex和三个成员函数(构造函数,printName(),printNationality()),编写程序测试这两个类和他们的接口.
1、 指出错误并改正
#include<iostream>
using namespace std;
void f(int *p)
{
*p *= 100;
cout<<*p<<endl;
}
void main()
{
int p = 10; int * ptr;
f(ptr);
}
第一题少了一点东西
1、指出错误并改正
#include<iostream> using namespace std;
void f(int *p)
{ if(p) //就是如果p不为空,是不是这么写的记不清了
*p *= 100;
cout<<*p<<endl;
}
void main()
{
int p = 10;
int * ptr;
f(ptr);
}
2、说出下面程序输出什么
#include<iostream>
using namespace std;
void main()
{ char* str="THIS IS PROGRAMMING.";
int length = (忘了具体的但是这个length就是字符串的长度);
int j = 0;
for(int k = 0; k < length; k++)
{
if(str[j] <str[k]) j = k; }
int temp = j; str[j] = str[7];
str[7] = str[13]; str[13] str[length];
cout<<str<<endl;
}
我来补充一下。。第2题是
int fun(inti,intj,int*a) {
a=j-i; }
void main() {
inta,b,c; fun(20,9,&a);
fun(9,a,&b); fun(a,b,&c);
cout<<a<<","<<b<<","<<c<<endl;
}
3、记不得了
4、记不得了
5.是问输出什么
class A { public:
virtual void print() {
cout<<"A::print"<<endl;
}
}
class B: public A
{ public:
void print() {
cout<<"B::print"<<endl;
} }
class C: public B
{ public:
void print() {
cout<<"C::print"<<endl;
}
}
void main() {
B b(); C c();
A* a;
a = c;
a->print();
a = b;
a->print();
}
【编程题】
第一题:用递归编程
求ack(int m, int n),定义似乎是 ack(0,n) = n+1;
ack(m,0)=m+1
ack(m,n) = ack(ack(m-1),ack(n-1))
第二题是写一个IntToStr(int a)函数
将一个整形数转换为字符串
第三题是写一个swap(int a[], int m, int n )
使得数组的前m项和后n项交换位置
第四题:
(1)写一个日期Date类
成员有年月日,成员函数有无参数构造函数、设置年月日的函数setDate
还有一个打印函数display
3个
(2)第二个类是员工类Employee,成员有工号、姓名、身份证号、出生日期、受聘日期、聘用年限、月薪
成员函数要有构造函数、改变出生日期函数、改变聘用年限函数、改变月薪函数、续聘函数(要求当续聘后的年龄大于60时给提示不能续聘)
还有展示函数display,需要有工号、姓名、身份证号、出生日期、聘用【到期】时间、聘用年限、【年】薪
注意第二个类会有Date类或其指针作为成员
一共150分,分值分布忘记了,下面记忆版~
欢迎补充!
1.(和计算机部分相似)求函数值,|xn-xn-1|<10的-8,公式就是e=。。。(和计算机的一样)
2.写函数完成int数组前m项与后n项换位置
3.对一副扑克抽取1000次,写出函数计算并打印每个牌值得概率
4.(和计算机部分相似)编写一个Teacher类,要求类含有教师编号,姓名,性别,出生年月,入职年月。以及以下成员函数:(1)带有默认参数的构造函数(默认出生年月为1900-00-00),拷贝构造函数。
(2)女教师满55岁,则到退休年龄,如果是女教师,就输出姓名编号和受聘年龄,写出完成该功能的函数
(3)写出main函数测试
笔试:今年5道编程题 150分,分值从20到40 跟历年相比变化比较大
1.写一个多项式求和函数:
1+x/1!+x/2!+... 要求第n-1项和第n项差值小于1e-8
2.写一个递归函数,实现输入空格相隔的字符并且逆序输出其中的数字,
如输入:"a 2 x 4 b 3 c 5" 输出:5342
3.写一个函数 1)掷两次骰子,把两次面数的和存到二维数组里,行表示第一次骰子面数,列表示第二次骰子面数2) 掷1000次,用二位数组b记录每两次掷骰子的情况出现的个数,最后输出b的所有信息.
4.写一个函数 void replace(char str[],const char findStr[],const char replaceStr[]); 实现将str中的子字符串findStr替换为replaceStr并输出 (可以用c标准库函数,不能用string类)
5.教师类,有一些属性等等。1)写构造函数(有几个参数要求有默认值),拷贝构造函数 2) ,
3)是要求写两个成员函数4)写main对接口进行测试这道题一共40分,不过是分了四问。
您需要 登录账户 后才能发表评论