最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 正文

诚毅 高级语言程序设计报告 实验三

来源:动视网 责编:小OO 时间:2025-09-29 18:55:43
文档

诚毅 高级语言程序设计报告 实验三

实验三函数重载及程序的多文件组织实验一、实验目的1.掌握内联函数、重载函数、带缺省参数函数的定义及使用;2.掌握程序的多文件组织;3.掌握作用域概念,变量的存储类型及它们之间的差别。二、实验内容1.重载函数允许不同的函数使用相同的名字,这使得完成类似任务可以使用相同函数名。编写几个计算面积的函数,分别计算圆、矩形、梯形和三角形的面积,函数原型如下:doublearea(doubleradius=0);//计算圆面积,参数为半径,缺省参数0,表示点面积doublearea(doublea,dou
推荐度:
导读实验三函数重载及程序的多文件组织实验一、实验目的1.掌握内联函数、重载函数、带缺省参数函数的定义及使用;2.掌握程序的多文件组织;3.掌握作用域概念,变量的存储类型及它们之间的差别。二、实验内容1.重载函数允许不同的函数使用相同的名字,这使得完成类似任务可以使用相同函数名。编写几个计算面积的函数,分别计算圆、矩形、梯形和三角形的面积,函数原型如下:doublearea(doubleradius=0);//计算圆面积,参数为半径,缺省参数0,表示点面积doublearea(doublea,dou
实验三  函数重载及程序的多文件组织实验

一、实验目的

1.  掌握内联函数、重载函数、带缺省参数函数的定义及使用;

2.掌握程序的多文件组织;

3.掌握作用域概念,变量的存储类型及它们之间的差别。

二、实验内容

1.重载函数允许不同的函数使用相同的名字,这使得完成类似任务可以使用相同函数名。编写几个计算面积的函数,分别计算圆、矩形、梯形和三角形的面积,函数原型如下:

double area(double radius=0); //计算圆面积,参数为半径,缺省参数0,表示点面积

double area(double a, double b); //计算矩形面积,参数为长和宽

double area(double a, double b, double h); //计算梯形面积,参数为两底和高

double area(double a, double b, double c, int); //计算三角形面积,参数为三边长,int型参数起标示作用,以区别于梯形面积函数,不参加计算

提示:

(1)常数π可以这样定义:#define  PI  3.141593

(2)计算三角形面积的海式:p=(a+b+c)/2,s=(p*(p-a)*(p-b)*(p-c))^0.5

(3)开方函数为sqrt(),在cmath.h中

编程实现上述4个重载函数,并自行设置参数对其进行调用,将结果输出到屏幕。

#include

#include

#define PI 3.141593 

using namespace std; 

double area(double r) 

{

    double s; 

    s=PI*r*r; 

    return(s); 

double area(double a,double b) 

{

    double s; 

    s=a*b;

    return(s); 

double area(double a,double b,double h) 

{

    double s; 

    s=(a+b)*h/2; 

    return(s); 

double area(double a,double b,double c,int) 

{

    double s,p; 

    p=(a+b+c)/2; 

    s=sqrt(p*(p-a)*(p-b)*(p-c)); 

    return(s); 

int main() 

{

    double a,b,c,d,e,f,g,h,i,j; 

cin>>a;

cin>>b>>c;

cin>>d>>e>>f;

cin>>g>>h>>i>>j;

    double k; 

    k=area(a); 

    double l; 

    l=area(b,c); 

    double m; 

    m=area(d,e,f); 

    double n; 

    n=area(g,h,i,j); 

cout<<"圆的面积s="< cout<<"矩形面积s="< cout<<"梯形面积s="< cout<<"三角形面积s="<    return 0; 

}

圆的半径、矩形长、矩形宽、梯形上底、梯形下底、梯形高、三角形直角边、三角形直角边、斜边均取值为1  如下图:

2.将上题以多文件方式组织,在area.h中声明4个面积函数原型,在area.cpp中定义各函数,然后在main.cpp中包含area.h并定义主函数,对4个面积函数逐一调用,各函数调用时的传入参数自行设定,将结果向屏幕输出。

注意:using namespace std; 只能说明一次,或者说只能在一个文件中说明。

编程是:

//area.h 

double area(double r); 

double area(double a, double b);  

double area(double a, double b, double h); 

double area(double a, double b, double c, int); 

//area.cpp 

#include 

#include "area.h"  

#define PI 3.141593 

double area(double r) 

{double s; 

s=PI*r*r; 

return(s); 

double area(double a,double b) 

{double s; 

s=a*b; 

return(s); 

double area(double a,double b,double h) 

{double s; 

s=(a+b)*h/2; 

return(s); 

double area(double a,double b,double c,int) 

{double s,p; 

p=(a+b+c)/2; 

s=sqrt(p*(p-a)*(p-b)*(p-c)); 

return(s); 

//main.cpp 

#include 

#include "area.h"  

using namespace std; 

int main() 

{double a,b,c,d,e,f,g,h,i,j; 

cin>>a;

cin>>b>>c;

cin>>d>>e>>f;

cin>>g>>h>>i>>j;

double k; 

k=area(a); 

double l; 

l=area(b,c); 

double m; 

m=area(d,e,f); 

double n; 

n=area(g,h,i,j); 

cout<<"s="<cout<<"s="<cout<<"s="<cout<<"s="<return 0; 

}

3.对全局变量、局部变量和静态局部变量作用域的分析应用。分析并写出下列程序的执行结果,然后输入计算机执行,比较分析结果与执行结果。

#include

using namespace std;

int a = 300, b = 400, c = 500;//全局

void funa( int  c){                //局部变量

    static int a = 5;

    a+=c;

cout<}

void funb(int a){

    a= b;

cout<}

void func(){

    int c=0;

cout<    ::c-=100; 

}

int main(){

    funa(a); funb(b); funa(b); func();

cout<    return 0;

}

int a = 300, b = 400, c = 500 //全局变量

void funa( int  c)到::c-=100;是局部变量

static int a = 5;// 是静态局部变量

三、实验要求

① 仔细阅读实验内容,编写程序;

② 运行程序,输入数据观察结果,并进行调试,最后记录实验结果;

③ 记录下程序编写和调试过程中遇到的问题,以及总结出经验。

文档

诚毅 高级语言程序设计报告 实验三

实验三函数重载及程序的多文件组织实验一、实验目的1.掌握内联函数、重载函数、带缺省参数函数的定义及使用;2.掌握程序的多文件组织;3.掌握作用域概念,变量的存储类型及它们之间的差别。二、实验内容1.重载函数允许不同的函数使用相同的名字,这使得完成类似任务可以使用相同函数名。编写几个计算面积的函数,分别计算圆、矩形、梯形和三角形的面积,函数原型如下:doublearea(doubleradius=0);//计算圆面积,参数为半径,缺省参数0,表示点面积doublearea(doublea,dou
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top