当前位置:文档之家› 编程复习题

编程复习题

编程复习题
编程复习题

1.打开proj1.cpp,按照以下要求,完成操作:(1)编写程序,求1-1/(2*2)-1/(3*3)-….-/(m*m)的值,其中m的值由健盘输入(当输入m的值小于2时,输出值为1 );

(2)请按注释的要求在程序的“____________”部分填入适当的内容并去掉程序中的“____________”,使程序能正确运行,使程序能正确运行,保存文件。

# include

void main()

{

int m,i;

cout<<"请输入m的值"<

cin>>m;

double s=_______;//#1定义单精度变量s,

i=_______;//#2

while(_______)//#3

{

s=_______;//#4求多项式的值

_______;//#5

}

cout<

}

2打开proj1.cpp,按照以下要求,完成操作:(1)编写程序,

求1/2+1/(2*4)…+1/(2*4*..*2m)的值,其中m的值由健盘输入;

(2)请按注释的要求在程序的“____________”部分填入适当的内容并去掉程序中的“____________”,使程序能正确运行,使程序能正确运行,保存文件。(15分)

# include

void main()

{

int m,i,s1; //#1定义整型变量s1,表示分母;

cout<<"请输入m的值"<

cin>>m;

double s=_______;//#2定义单精度变量s,

i=1;

while(i<=m)

{

S1=_______;//#3求每一项分母

S=_______;//#4求多项式的值

_______;//#5

}

sout<

}

3打开proj1.cpp,按照以下要求,完成操作:(1)编写程序,

求1+1/1!+1/2!…+1/m!的值,其中m的值由健盘输入(当m的值小于1时,输出1),提示:m!=1*2*3*….*m;

(2)请按注释的要求在程序的“____________”部分填入适当的内容并去掉程序中的“____________”,使程序能正确运行,使程序能正确运行,保存文件。(15分)

# include

void main()

{

int m,i;

long s1=_______; //#1定义求阶变量s1,

cout<<"请输入m的值"<

cin>>m;

double s=_______;//#2定义单精度变量s,

i=1;

while(_______)//#3以下实现求1+1/1!+1/2!…+1/m!

{

s1=_______; //#4

s=_______;//#5

i++;

}

cout<

}

4打开proj1.cpp,按照以下要求,完成操作:(1)编写程序,

求1/+1/(1*3)+1/(1*3*5)…+1/(1*3*5..*(2m-1))的值,其中m的值由健盘输入;

(2)请按注释的要求在程序的“____________”部分填入适当的内容并去掉程序中的“____________”,使程序能正确运行,保存文件。(15分)

# include

void main()

{

int m,i;

long s1=_______; //#1

cout<<"请输入m的值"<

cin>>m;

double s=_______;//#2定义单精度变量s,

i=1;

while(_______)//#3以下实现求1+1/1*3+1/1*3*5…+1/(1*3*5*….*(2m-1))

{

s1=_______; //#4

s=_______;//#5

i++;

}

cout<

}

5 打开proj1.cpp,按照以下要求,完成操作:(1)编写程序,

求1/+1/(1+2)+1/(1+2+3)…+1/(1+2+3…+m)的值,其中m的值由健盘输入(提示:当m 的值小于1时,输出值为0);

(2)请按注释的要求在程序的“____________”部分填入适当的内容并去掉程序中的“____________”,使程序能正确运行,保存文件。(15分)

# include

void main()

{

int m,i;,s1=_______; //#1定义整型变量s1,表示分母;

cout<<"请输入m的值"<

cin>>m;

double s=_______;//#2定义单精度变量s,

i=1;

while(i<=m)

{

s1=_______; //#3求每一项分母

s=_______;//#4求多项式的值

_______;//#5

}

cout<

}

6. 打开proj2.cpp,按照以下要求,完成操作:

(1)函数fun的功能是:将所有大于1小于整数m的非素数存入xx所指的数组中,非素素的个数通过k传回;

(2)请按注释的要求在程序的“____________”部分填入适当的内容并去掉程序中的“____________”,使程序运行能得出正确的结果,保存文件。

# include

void fun(int m,int *k,int xx[])

{

int i,j,n=0;

for(i=4;i

{

for(j=2; _______;_______)//#1

if(i%j==0) _______;//#2

_______=i;//#3

}

_______;//#4返回非素数的个数

}

void main()

{

int m,n,zz[100],j;

cout<<"请输入整数m "<

cin>>m;

cout<<"输出所有的非素数"<

_______;//#5调用fun函数

for(j=0;j<=n-1;j++)

cout<

cout<

}

7. 打开proj2.cpp,按照以下要求,完成操作:

(1)请补充函数fun,该函数的功能是:根据整型参数m的值,计算如下图公式的值,在C++中可调用log(n)函数求ln(n);例如,若m的值为20,则fun函数的值为6.50658; (2)请按注释的要求在程序的“____________”部分填入适当的内容并去掉程序中的

结果,保存文件。

# include

#include

double fun(int m)

{

int i;

double s=_______;//#1

for(_______;_______;_______) //#2以下环计算ln(1)+ln(2)+…..+ln(m)的值s=_______;//#3

return _______;//#4返回s的平方根的值

}

void maia()

{

cout<

}

8. 打开proj2.cpp,按照以下要求,完成操作:

(1)函数fun的功能是:如果数组arr中的前一个元素比后一个元素小,则把此元素保存在数组b中并输出。例如:若数组中的元素为:40,68,63,33,22,78,55,34,99,102,则输出:40 22 34 99;

(2)请按注释的要求在程序的“____________”部分填入适当的内容并去掉程序中的“____________”,使程序得到正确的结果,保存文件。

#include

#define M 10

int fun(int arr[M],int b[M])

{

int n______;//#1 n中存放数组arr中,前一项元素比后一元素小的数据个数

for(int i=0; _______;i++) //#2以下循环实现如果数组arr中的前一元素小于后一元素,则将此数放入数组b中

if(_______) //#3

_______;//#4

return n;

}

void main()

{

int aa[M]={40,68,63,33,22,78,55,34,99,102},bb[M];

int k=fun(_______); //#5

for(int j=0; _______;j++)//#6

cout<

cout<

}

9. 打开proj2.cpp,按照以下要求,完成操作:

(1)函数proc的功能是:实现B=A+A的转置,存放数组B中。计算结果在main()函数中输出;

例如,输入下面矩阵: 1 1 1

4 4 4

7 7 7

其转置为: 1 4 7

1 4 7

1 4 7

(2)请按注释的要求在程序的“____________”部分填入适当的内容并去掉程序中的“____________”,使程序得到正确的结果,保存文件。

#include

void proc() //#1

{

int i,j;

for(i=0;i<=3;i++) //#2以下循环实现将矩阵A和A的转置相加

for(j=0;_____;j++) // #3

b[i][j]=________;//#4

}

void main()

{

int arr[3][3]={{1,1,1},{4,4,4},{7,7,7}},t[3][3];

int i,j;

proc(______);//#5

for(i=0;_____;i++)//#6

{

for(j=0;_____;j++)//#7

cout<

_______;//#8

}

}

10.打开proj2.cpp,按照以下要求,完成操作:

(1)在主函数中输入若干个数放入数组中,用0结束输入并放在数组最后一个元素中,下列给定程序中,函数fun的功能是:计算数组元素中值为负数的平均值(不包括0),

例如数组中元素的值依次为39,-47,21,2,-4,9,-6,0,则程序运行结果为-19; (2)请按注释的要求在程序的“____________”部分填入适当的内容并去掉程序中的结果,保存文件。

#include

double fun(int x[])

{

double sum=0.0;

int c=0,i=0;//i记录数组元素的位置

while( )//#1以下循环实现求出数组中所有负数之和,放入sum中,负数个数放入c中

{

if( )//#2

{ sum ;//#3

;//#4

}

; #5

}

sum/ =c;

return sum;

}

void main()

{

int x[100];

int i=0;

cout<<"请输入数组元素的值,以0结束输入"<

do{

cin>>x[i];

}while( ); //#6

cout<

}

11. 打开proj3.cpp,按照以下要求,完成操作:(1)下列给定程序中,函数fun(char *s,char *t)的功能是:将在字符串s中下标为偶数位置上的字符,紧随其后出现一次,放在一个新串t中,t中字符按原字符s中字符的顺序排序,(注意:0为偶数)例如:当

S中的字符串为“abcs”时,t中的字符串应为”aacc”;

(2)请将程序补充完整,但不要改变已有的程序,使程序能正确运行,保存文件,在编写程序时,不得使用C++语言提供的字符串函数。(20分)

# include

void fun(char *s,char *t)

{

int i;

//请在两条星线之间填入相应的代码,以下程序请用for循环实现

/**************************************************/

/**************************************************/

}

void main()

{

char s[100],t[100];

cout<<"请输入字符串"<

cin.getline(s,100);

fun(s,t);

cout<<"结果是:"<

}

12. 打开proj3.cpp,按照以下要求,完成操作:(1)编写一函数fun,函数fun(char *str,char ch)的功能是:判断字符ch是否与字符串str中的某个字符相同,若相同,则什么也不做,若不同,则插在字符串的最后;

(2)请将程序补充完整,但不要改变已有的程序,使程序能正确运行,保存文件,在编写程序时,不得使用C++语言提供的字符串函数。(20分)

#include

#include

void fun(char *str,char ch)

{

//请在两条星线之间填入相应的代码

/**************************************************/

/**************************************************/

}

void main()

{

char s[81],c;

cout<<"请输入字符串"<

cin.getline(s,81);

cout<<"请输入一个字符"<

cin>>c;

fun(s,c);

cout<

}

13. 打开proj3.cpp,按照以下要求,完成操作:(1)下列给定程序中,函数proc()的功能是:在字符串str中找出ASCII码值最大的字符,将其放在字符串的第一个位置上,并将该字符前的原字符依次向后顺序移动,例如,调用proc()函数之前给字符串输入Dcybkd,调用后字符串的内容修改为yDcbkd

(2)请将程序补充完整,但不要改变已有的程序,使程序能正确运行,保存文件,在编写程序时,不得使用C++语言提供的字符串函数。(20分)

# include

void proc(char *t)

{

char max,*q;;

int i=0;

max=t[i];

//请在两条星线之间填入相应的代码,以下程序请用for循环实现

/**************************************************/

/**************************************************/

while(q>t)

{

*q=*(q-1);

q--;

}

_____________;//将max的值放入字符串的最前面.

}

void main()

{

char str[80];

cout<<"请输入字符串"<

cin.getline(str,80);

cout<

cout<<”输出修改后的字符串”<

proc(str);

cout<

}

14. 打开proj3.cpp,按照以下要求,完成操作:(1)下列给定程序中,函数fun(char *str)的功能是:把str中的大写字母转换成小写字母,把其中的小写字母转换成大写字母,(提示:大写字母的ASCII码比对应小写字母的ASCII小32);

(2)请将程序补充完整,但不要改变已有的程序,使程序能正确运行,保存文件,在编写程序时,不得使用C++语言提供的字符串函数。(20分)

#include

#include

void fun(char *str)

{

//请在两条星线之间填入相应的代码

/**************************************************/

/**************************************************/

}

void main()

{

char str[1024];

cout<<"请输入字符串"<

cin.getline(str,1024);

fun(str);

cout<

}

15. 打开proj3.cpp,按照以下要求,完成操作:(1)下列给定程序中,函数fun(char *s,char *t)的功能是:把字符串s中的字符,倒序放到字符串t的末尾,再将字符串S中字符连接到字符串t中,并输出字符串t。例如字符串s为abc,则字符串t为cbaabc;

(2)请将程序补充完整,但不要改变已有的程序,使程序能正确运行,保存文件,在编写程序时,不得使用C++语言提供的字符串函数。(20分)

#include

#include

void fun(char *s,char *t)

{

int I,s1;

s1=strlen(s);

//请在两条星线之间填入相应的代码

/**************************************************/

/**************************************************/

}

void main()

{

char s[100],t[100];

cout<<"cbaabc"<

cin>>s;

fun(s,t);

cout<<"cbaabc"<

cout<

}

17. 打开proj4.cpp,按照以下要求,完成操作:已知一个源程序文件proj4.cpp,其中定义了类circle和column,column类由circle类protected派生,但是这两个类的定义并不完整,请按照以下要求将程序补充完整。程序运行结果如图所示:

(1)定义类circle的保护数据成员变量r和area,它们都是double型数据,请在注释//***1***之后添加适当语句;

(2)添加类circle的无参构造函数,使得类circle对象r的默认值为0,请在注释//***2***之后添加适当语句;

(3)添加派生类column的构造函数的定义,使得参数为double型的radius和height 分别赋给数据成员r和h,请在注释//***3***之后添加适当语句;

(4)完成派生类column的成员函数print的定义,请在注释//***4***之后添加适当语句。

# include

Const double pi=3.14159;

Class circle

{

Protected:

//***1***

Public:

//***2***

{

R=0.0;

}

Circle(double radius)

{

R=radius;

}

Void print()

{

Area=r*r*pi;

Cout<<”r=”<

}

};

Class colum:protected circle

{

Protected:

Double h;

Public:

//***3***

{

R=radius;

H=height;

}

Void print()

{

Circle::print();

//***4***

};

Void main()

{

Column col(1,02,0);

Col.print();

}

17. 打开proj4.cpp,按照以下要求,完成操作:已知一个源程序文件proj4.cpp,其中定义了类并不完整,,请按照以下要求将程序补充完整。程序运行结果如图所示:

(1)在类person中定义name为字符指针类型,age为整型,请在注释//***1***之后添加适当语句;

(2)设置类student公有继承类为person,请在注释//***2***之后添加适当语句;

(3)定义析构函数student,,请在注释//***3***之后添加适当语句;

(4)设置类teacher公有继承类为person,请在注释//***4***之后添加适当语句;

(5)在类teacher中定义major为字符指针类型,请在注释//***5***之后添加适当语

# include

Class person

{

//***1***;

Private:

Char *name;

Int age;

/****************************/

public:

Person(){ cout<<”person class constructor”<

~person(){ cout<<”person class constructor”<

};

//***2***

Class student :public person

/****************************/

{

Char *depertment;

Int level;

Public:

Student()

{ cout<<” student class constructor”<

//****3***

~ Student()

/****************************/

{ cout<<” student class constructor”<

};

//***4***

Class teacher :public person

{//***5***

Char *major;

Float salary;

Public:

teacher(){ cout<<”teacher class constructor”<

~ teacher(){ cout<<”teacher class constructor”<

};

Void main()

{

Student s1;

Teacher t1;

}

18 打开proj4.cpp,按照以下要求,完成操作:已知一个源程序文件proj4.cpp,其中定义了类并不完整,,请按照以下要求将程序补充完整。

(1)定义类的公有成员变量No,Name[32],其中No是int型,Name[32]为字符型,请在注释//***1***之后添加适当语句;

(2)完成函数set的定义,实现在函数内分别设置No和Name的值,请在注释//***2***之后添加适当语句;

(3)完成函数print(),请在注释//***3***之后添加适当语句;使得程序运行时输出结果如图所示:

(4)在student()函数内,设置No为0,Name为空,请在注释//***4***之后添加适当语句

# include

Class student

Public:

//************1*************** Int NO;

Char Name[32];

//************2*************** Void set(int no,char strName[]) {

No=no;

For(int i=0;strName[i]!=.\0.’;i++) {Name[i]=strName=[i];

Name[i+1]=’\0’;}

}

Void print()

{

//***3***

Cout<<”No=”<

Cout<<”Name=”<

Student()

{

//***4***

No=0;

Name=Null;

}

Void main()

{

Student stu;

Stu.set(125,”XiaoWang”);

Stu.print();

}

19.从键盘输入学生成绩,输出对应的等级(100分为A,90~99为B,80~89为C,70~79为D,60~69为E,小于60为F)(要求:程序运行时,能够实现从键盘输入一个学生成绩,学生成绩为整数,然后输出该成绩的等级)。

#include

void main(void)

{

int g;

cout<<”输入学生成绩”<

cin>>g;

if(g<0||g>100)

cout<<”输入成绩出错”<

else

switch(g/10)

//请在两条星线之间填入相应的代码,求出学生成绩的等绩

/*********************/

/*********************/

}

20.输入一个长整数,求各位数字的平方和。例如:输入123,输出sum=14。(10分)

#include

void main()

{

long n,sum = 0;

int i;

cout<<”请输入一个长整数n”;

cin>>n;

//请在两条星线之间填入相应的代码

/*********************/

/*********************/

cout<<”sum=”<

}

21.fun函数的功能是:先从键盘上输入一个3行3列的矩阵的各个元素的值,然后输出主对角线上元素之积。编写程序实现函数fun的功能。(15.0分)

#include

void fun()

{

int a[3][3],sum,i,j;

//请在两条星线之间填入相应的代码,实现从键盘上输入3行3列的矩阵,并求主对角线上元素之积

/*********************/

/*********************/

cout<<”sun=”<

}

void main()

{

fun( );

}

22.编写程序,输入一行字符,分别统计求出其中英文字母、空格、数字和其他字符的个数并输出结果。(15.0分)

#include

void main(void)

{

char s[80],*p;

int alpha=0,space=0, digit=0,other=0;

cout<<”请输入一行字符”<

cin.getline(s,sizeof(s));

p=s;

//请在两条星线之间填入相应的代码

/*********************/

/*********************/

cout<<"alpha="<

23.输入两个十进制整数,输出这两个数的关系。如若输入的数据为4,5;则输出结果为4<5,若输入数据为5,4;则输出结果为5>4.若输入数据为5,5;则输出结果为5=5.(10分)

#include

void main(void)

{

int a,b;

cout<<”输入两个数”<

cin>>a>>b;

//请在两条星线之间填入相应的代码,求出两个火数a,b之间的关系

/*********************/

/*********************/

}

24.编写程序计算1~100以内所有含6的数的和,在主函数中调用它们并输出结果。(10.0分)

#inclue

int fun( )

{

int i,s;

//请在两条星线之间填入相应的代码

/*********************/

/*********************/

return s;

}

void main( void )

{

cout<<”1~100以内所有含6的数的和是:”<

}

25.编写函数,求一个数组中最大值、最小值函数getmxmn,在两条星线之间填入相应的代码,使程序完成该功能。(15.0分)

#include

void getmxmn(int a[],int n,int *pmx,int *pmn)

{

int i;

//请在两条星线之间填入相应的代码

/*********************************************/

/*********************************************/

}

void main()

{

int x[10]={20,30,15,95,55,20,88,90,66,90},mx,mn;

getmxmn(x,10,&mx,&mn);

cout<<"mx="<

}

26,编写一个函数fun(),该函数的功能是:返回给定字符串中大写字母字符的个数。如字符串“Visual C++ Program”中,大写字母的个数为3.注意,部分源程序已经存在proj3.cpp 中。请勿修改主函数和其他函数中的任何内容,仅在两条星线之间填写若干语句。(10.0分)#include

int fun(char *str )

{

int num=0; //用于计录大写字母字符的个数,初始值为0

//请在两条星线之间填入相应的代码,实现计算str中大写字母的个数,提示用循环语句

/*********************/

/*********************/

}

void main()

{

char str[]=“Visual C++ Program”;

cout<<”大写字母个数:” <

}

相关主题
文本预览
相关文档 最新文档