C++第八章
2015-06-22 18:30
441 查看
1、
#include <iostream>
#include <cmath>
using namespace std;
double q(double,double,double);
void main()
{double a,b,c,p,x1,x2;
cout<<"please enter a,b,c:";
cin>>a>>b>>c;
p=-b/(2*a);
try
{x1=p+q(a,b,c);
x2=p-q(a,b,c);
cout<<"x1="<<x1<<endl<<"x2="<<x2<<endl;
}
catch(double d)
{cout<<"a="<<a<<",b="<<b<<",c="<<c<<",disc="<<d<<",error!"<<endl;}
cout<<"end"<<endl;
}
double q(double a,double b,double c)
{double disc;
disc=b*b-4*a*c;
if(disc<0) throw disc;
return sqrt(disc)/(2*a);
}
2、
#include <iostream>
#include <string>
using namespace std;
class Student
{public:
Student(int n,string nam)
{cout<<"constructor-"<<n<<endl;
num=n;name=nam;}
~Student(){cout<<"destructor-"<<num<<endl;}
void get_data();
private:
int num;
string name;
};
void Student::get_data()
{if(num==0) throw num;
else cout<<num<<" "<<name<<endl;
cout<<"in get_data()"<<endl;
}
void fun()
{Student stud1(1101,"tan");
stud1.get_data();
try
{Student stud2(0,"Li");
stud2.get_data();
}
catch(int n)
{cout<<"num="<<n<<",error!"<<endl;}
}
int main()
{cout<<"mainbegin"<<endl;
cout<<"callfun()"<<endl;
fun();
cout<<"main end"<<endl;
return 0;
}
3、
#include <iostream>
using namespace std;
#include "xt8-3-h1.h"
#include "xt8-3-h2.h"
using namespace std;
using namespace student1;
int main()
{Student stud1(1001,"Wang",18,"123 Beijing Road,Shanghua");
stud1.show_data();
student2::Student stud2(1102,"Li",'f',89.5);
stud2.show_data();
return 0;
}
//header1.h,文件名为xt8-3-h1.h
#include <string>
namespace student1
{classStudent
{public:
Student(int n,string nam,int a,string addr)
{num=n;name=nam;age=a;address=addr;}
void show_data();
private:
int num;
string name;
int age;
string address;
};
void Student::show_data()
{cout<<"num:"<<num<<" name:"<<name<<" age:"<<age
<<" address:"<<address<<endl;
}
}
//header2.h,文件名为xt8-3-h2.h
#include <string>
namespace student2
{class Student
{public:
Student(int n,string nam,char s,float sco)
{num=n;name=nam;sex=s;score=sco;}
void show_data();
private:
int num;
string name;
char sex;
float score;
};
void Student::show_data()
{cout<<"num:"<<num<<" name:"<<name<<"sex:"<<sex
<<" score:"<<score<<endl; }
}
#include <iostream>
#include <cmath>
using namespace std;
double q(double,double,double);
void main()
{double a,b,c,p,x1,x2;
cout<<"please enter a,b,c:";
cin>>a>>b>>c;
p=-b/(2*a);
try
{x1=p+q(a,b,c);
x2=p-q(a,b,c);
cout<<"x1="<<x1<<endl<<"x2="<<x2<<endl;
}
catch(double d)
{cout<<"a="<<a<<",b="<<b<<",c="<<c<<",disc="<<d<<",error!"<<endl;}
cout<<"end"<<endl;
}
double q(double a,double b,double c)
{double disc;
disc=b*b-4*a*c;
if(disc<0) throw disc;
return sqrt(disc)/(2*a);
}
2、
#include <iostream>
#include <string>
using namespace std;
class Student
{public:
Student(int n,string nam)
{cout<<"constructor-"<<n<<endl;
num=n;name=nam;}
~Student(){cout<<"destructor-"<<num<<endl;}
void get_data();
private:
int num;
string name;
};
void Student::get_data()
{if(num==0) throw num;
else cout<<num<<" "<<name<<endl;
cout<<"in get_data()"<<endl;
}
void fun()
{Student stud1(1101,"tan");
stud1.get_data();
try
{Student stud2(0,"Li");
stud2.get_data();
}
catch(int n)
{cout<<"num="<<n<<",error!"<<endl;}
}
int main()
{cout<<"mainbegin"<<endl;
cout<<"callfun()"<<endl;
fun();
cout<<"main end"<<endl;
return 0;
}
3、
#include <iostream>
using namespace std;
#include "xt8-3-h1.h"
#include "xt8-3-h2.h"
using namespace std;
using namespace student1;
int main()
{Student stud1(1001,"Wang",18,"123 Beijing Road,Shanghua");
stud1.show_data();
student2::Student stud2(1102,"Li",'f',89.5);
stud2.show_data();
return 0;
}
//header1.h,文件名为xt8-3-h1.h
#include <string>
namespace student1
{classStudent
{public:
Student(int n,string nam,int a,string addr)
{num=n;name=nam;age=a;address=addr;}
void show_data();
private:
int num;
string name;
int age;
string address;
};
void Student::show_data()
{cout<<"num:"<<num<<" name:"<<name<<" age:"<<age
<<" address:"<<address<<endl;
}
}
//header2.h,文件名为xt8-3-h2.h
#include <string>
namespace student2
{class Student
{public:
Student(int n,string nam,char s,float sco)
{num=n;name=nam;sex=s;score=sco;}
void show_data();
private:
int num;
string name;
char sex;
float score;
};
void Student::show_data()
{cout<<"num:"<<num<<" name:"<<name<<"sex:"<<sex
<<" score:"<<score<<endl; }
}
相关文章推荐
- C++第七章
- <Effective C++>读书笔记-4
- C++内联函数、函数模板之于头文件
- c++指针和引用
- C语言回顾(七、多重指针,argc,argv,动态内存分配,void指针,const)——iOS开发基础
- 无向图 深度优先遍历 c语言实现
- ACM输入输出--多组测试用例--C、C++、Java
- 解释int a=9;printf("%d,%d",a,a++)?输出情况
- c++中string类的详解
- c,c++,java用户自定义标识符命名规则比较
- 2 通过JNI混合使用Java和C++ -----> 访问数组
- C++静态局部对象
- C语言源字符集与执行字符集
- 两个乒乓球队进行比赛,各出3人。
- 无向图 广度优先遍历 c语言实现
- C语言回顾(六、基类型,数组指针,字符串指针,函数指针,文字常量区)——iOS开发基础
- Eclipse+CDT+Cygwin进行C&C++开发
- C++中的C_str()函数用法
- 标准C++库中的异常类
- c++操作符重载