实验7 函数

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验7 函数

姓名:学号:1107082106

专业:计算机科学与技术班级:物联网

同组人:无实验日期:2011-12-05

【实验目的与要求】

⏹掌握函数声明、定义和使用的方法;

⏹掌握函数递归调用的方法;

⏹掌握全局变量、局部变量、静态局部变量的概念和使用方法;

⏹掌握定义头文件的方法,学会建立和调试多文件程序。

【实验内容与步骤】

1.程序改错题

(1) 输入并运行下面的程序,查看编译时的出错信息,分析出错的原因,然后修改这个程序使其能够正常运行。程序以文件名sy7_1.c存盘。

#include "stdio.h"

void main()

{

getFloat(9.9);

}

float getFloat(float m)

{

printf("%f",m);

retutn m;

}

请给出正确的程序:

#include "stdio.h"

void main()

{

float getFloat(float m);

getFloat(9.9);

}

float getFloat(float m)

{

printf("%f",m);

return m;

}

//没有输出语句怎么输出?

请给出程序运行测试结果:

//没有输出语句怎么输出?

(2)下列程序的功能为:求三角形面积,请纠正程序中存在的错误,使程序实现其功能,程序以文件名sy7_2.c存盘。

#include "math.h"

#include "stdio.h"

area(float,float,float);

void main()

{

float a,b,c;

printf("请输入三角形的三个边长值:\n");

scanf("%f,%f,%f",a,b,c);

if(a+b>c&&a+c>b&&b+c>a)

printf("Area=%f\n",area(a,b,c));

}

area(float a,float b,float c)

{

float s,area_s;

s=(a+b+c)/2.0;

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

return(area_s);

}

请给出正确的程序:

#include "math.h"

#include "stdio.h"

float area(float,float,float);

void main()

{

float a,b,c;

printf("请输入三角形的三个边长值:\n");

scanf("%f,%f,%f",&a,&b,&c);

if(a+b>c&&a+c>b&&b+c>a)

printf("Area=%f\n",area(a,b,c));

}

float area(float a,float b,float c)

{

float s,area_s;

s=(a+b+c)/2.0;

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

return(area_s);

}

请给出程序运行测试结果:

2.程序填空

(1)下列程序的功能为:输出如下图形, 请填写适当的符号或语句,使程序实现其

功能,程序以文件名sy7_3.c存盘。

#include "stdio.h"

void print(int i) //根据传入参数i,输出一行由2*i-1个数字i组成的字符{

int j,k;

for(j=1;j<=30-i;j++)

printf("%c",' '); //输出空格

for(k=1;k<= ;k++) //控制输出字符个数

printf( );

printf("\n");

}

void main()

{

int i;

for(i=1;i<=7;i++)

; //调用函数print(i)

for(i=6;i>=1;i--)

; //调用函数print(i)

}

请给出正确的程序:

#include "stdio.h"

void print(int i) //根据传入参数i,输出一行由2*i-1个数字i组成的字符{

int j,k;

for(j=1;j<=30-i;j++)

printf("%c",' '); //输出空格

for(k=1;k<=2*i-1;k++) //控制输出字符个数

printf("i");

printf("\n");

}

void main()

{

int i;

for(i=1;i<=7;i++)

print(i) ; //调用函数print(i)

for(i=6;i>=1;i--)

print(i) ; //调用函数print(i)

}

请给出程序运行测试结果:

相关文档
最新文档