- 1、本文档共5页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
实验7用函数实现模块化程序设计.
实验7 用函数实现模块化程序设计
班级 电信132 学号 201315100209 姓名 许春欢
一、实验目的
① 掌握定义函数的方法;
② 掌握函数实参与形参的对应关系以及“值传递”的方式;
③ 掌握函数的嵌套调用和递归调用的方法;
④ 掌握全局变量和局部变量动态变量、静态变量的概念和使用方法。
⑤ 学习对多文件程序的编译和运行。
二、实验内容
用函数实现以下程序并调试。
1、写一个函数,求10个学生的平均成绩。
#include stdio.h
#define N 10
void main( )
{float a(float y[ ],int M);
int i;float cj[N],pjcj;
printf(输入%d个学生的成绩:\n,N);
for(i=0;iN;i++)
scanf(%f,cj[i]);
pjcj=a(cj,N);
printf(平均成绩是%5.2f\n,pjcj);
}
float a(float y[ ],int M)
{
int i;float pj,sum=0;
for(i=0;i10;i++)
sum=sum+y[i];
pj=sum/M;
return(pj);
}
2、写一个函数,用“起泡法”对输入的10个数字由小到大排序。
#includestdio.h
#includestring.h
int str[10];
int main()
{ void sort(int str[]);
int i,str[10];
printf(input 10 nubers:\n);
for(i=0;i10;i++)
scanf(%d,str[i]);
printf(\n);
sort(str);
printf(string sorted:\n);
for(i=0;i10;i++)
printf(%3d,str[i]);
printf(\n);
return 0;
}
void sort(int str[])
{int i,j,t;
for(j=0;j9;j++)
for(i=0;i9-j;i++)
if(str[i]str[i+1])
{t=str[i];
str[i]=str[i+1];
str[i+1]=t;
}
}
3、求方程ax2+bx+c=0的根,用三个函数分别求当b2-4ac大于0、等于0和小于0时的根,并输出结果。从主函数输入a、b、c的值。
#includestdio.h
#includemath.h
float x1,x2,dt,p,q;
int main()
{void s1(float,float);
void s2(float,float);
void s3(float,float);
float a,b,c;
printf(请输入a,b,c的值:);
scanf(%f,%f,%f,a,b,c);
printf(组成方程:%5.2f*x*x+%5.2f*x+%5.2f\n,a,b,c);
dt=b*b-4*a*c;
printf(方程的根为:);
if(dt0)
{s1(a,b);
printf(x1=%5.2f,x2=%5.2f\n,x1,x2);
}
else if(dt==0)
{s2(a,b);
printf(x1=x2=%5.2f\n,x1);
}
else
{s3(a,b);
printf(x1=%5.2f+%5.2f,x2=%5.2f-%5.2f\n,p,q,p,q);
}
return 0;
}
void s1(float a,float b)
{x2=(-b-sqrt(dt))/(2*a);
x1=(-b+sqrt(dt))/(2*a);
}
void s2(float a,float b)
{x1=x2=-b/(2*a);
}
void s3(float a,float b)
{p=-b/(2*a);
q=sqrt(-dt)/(2*a);
}
4、编写一个判素数的函数,在主函数中输入一个整数,输出是否是素数的信息。
#includestdio.h
int main()
{int q(int);
int n;
printf(请输入一个数:);
scanf(%d,n);
if(q(n))
printf(%d不是素数。\n,n);
else
printf(%d是素数。\n,n);
return 0;
}
int q(int n)
{int f=1,i;
fo
文档评论(0)