实验7 函数
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 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)
}
请给出程序运行测试结果: