几个C++的简单问题

1、C++循环中break和contiune有什么区别?
2、函数参数传递分为几种,它们之间有什么区别?
3、C++中类有哪些特点,请分别简单的描述一下。
4、#include <iostream.h>
int fun(int &i)
{
i=i*i;
return i;
}
void main()
{
int x(5);
int y=fun(x)--;
cout<<x<<y<<endl;
}
其结果是x=____①______y=_______②________。
5、用数组作为参数传递实现两个数的交换,请补充下列程序代码。
void swap(_________①_____________)
{ int t;
t=a[0];
a[0]=a[1];
a[1]=t;
}
int main()
{ int data[2]={5,8};
________②____________
cout<<x<<y;
}
6、编程实现1~100的累加求和。
7.编程打印上(下)三角九九乘法表。
8.用递归函数求1+1+4+10+28+…,前n项的和。(n由键盘输入,提示第三项等于前两项的和乘以2)
9.定义一个Box(盒子)类,在该类定义中包括数据成员:length(长)、width(宽) 和height(高)。成员函数:构造函数Box设置盒子长、宽和高三个数据;函数volume计算并输出盒子的体积。从键盘输出长、宽、高,并求盒子的体积。
做完后发到我邮箱[email protected]
如果做得好 可追加200分

1、C++循环中break和contiune有什么区别?
break直接跳出循环 执行循环后面的语句
continue是结束本次循环,但不跳出循环,继续下次循环
举个例子:
//C++ break continue 用法比较
#include<iostream.h>

void main( )
{
int radius;
double area;
for(radius = 1; radius <= 10 ; radius++)
{
area = 3.1416 * radius * radius;
/* 若圆面积超过120,则跳出for循环,不予输出 */
if(area >= 120.0)
break;
cout<<area<<endl;
}
cout<<"-------------------"<<radius-1<<endl;

for(radius = 1; radius <= 10 ; radius++)
{
area = 3.1416 * radius * radius;
/* 若圆面积没有超过60,则不输出而是从新开始循环 */
if(area < 120.0)
continue;
cout<<area<<endl;
}
cout<<"-------------------"<<radius-1<<endl;
}
//自己运行下看结果!

2、函数参数传递分为几种,它们之间有什么区别?
答:参数的传递分三种:
1)值传递
2)地址传递:指针传递和引用传递。
值传递不会改变实参本身,而地址传递就会改变实参,因为他传递过去的是存储这个变量的地址。

3、C++中类有哪些特点,请分别简单的描述一下。
答:封装、继承、多态

4、#include <iostream.h>
int fun(int &i)
{
i=i*i;
return i;
}
void main()
{
int x(5);
int y=fun(x)--;//这里改成
cout<<x<<y<<endl;
}
其结果是x=____25______y=_______25________。

5、用数组作为参数传递实现两个数的交换,请补充下列程序代码。
void swap(_________int a[]_____________)
{ int t;
t=a[0];
a[0]=a[1];
a[1]=t;
}
int main()
{ int data[2]={5,8};
________swap(data)____________
cout<<x<<y;
}

6、编程实现1~100的累加求和。
源程序如下:
#include <iostream.h>

void main()
{ int sum=0;
for(int i=1;i<=100;i++)
sum+=i;
cout<<"1+2……+100="<<sum<<endl;
}

7.编程打印上(下)三角九九乘法表。
源程序如下:
#include<iostream>
using namespace std;
int main()
{
for(int i=1;i<10;i++){
for (int j=1;j<=i;j++)
{
cout<<i<<"*"<<j<<"="<<i*j<<"\t";
}
cout<<"\n";
}
}

8.用递归函数求1+1+4+10+28+…,前n项的和。(n由键盘输入,提示第三项等于前两项的和乘以2)
源程序如下:
#include <iostream.h>

void main()
{
int n;
cout<<"输入n:";
cin>>n;
int f1=1;
int f2=1;
int sum=2;
for(int i=3;i<=n;i++)
{

f1=(f1+f2)*2;
sum+=f1;
cout<<f1<<"\tsum="<<sum<<endl;
f2=f1/2-f2;

}

}

9.定义一个Box(盒子)类,在该类定义中包括数据成员:length(长)、width(宽) 和height(高)。成员函数:

构造函数Box设置盒子长、宽和高三个数据;函数volume计算并输出盒子的体积。从键盘输出长、宽、高,并求

盒子的体积。
源程序如下:
#include <iostream.h>

class BOX{
private:
int length;
int width;
int height;
public:
BOX(int x,int y,int z){
length=x;
width=y;
height=z;
}

void volume(){
cout<<"BOX的体积:"<<length*width*height<<endl;
}
};

void main()
{
int h,w,l;
cout<<"输入BOX的长:";
cin>>h;
cout<<"输入BOX的宽:";
cin>>w;
cout<<"输入BOX的高:";
cin>>l;
BOX obj=BOX(l,h,w);
obj.volume();

}
温馨提示:答案为网友推荐,仅供参考
相似回答