c语⾔程序三⾓形实验报告,C语⾔程序设计实验报告五C程序设计实验报告四
姓名:赖玮
实验地点:家
实验时间:2020.04.23
⼀、实验⽬的与要求
1、熟练地掌握函数的定义⽅法和调⽤规则.
2、掌握在C语⾔程序中主调函数和被调⽤函数之间进⾏数据传递的规则.
3、了解函数的返回值及其类型,并正确使⽤它.
4、了解局部变量和全局变量的作⽤域及它们与存储分类的关系,理解变量的存在性和 可见性的概念.
5、练习递归函数的使⽤.
⼆、实验内容
①、问题的简单描述:编写程序,从键盘输⼈三⾓形的3条边,调⽤三⾓形⾯积函数求出其⾯积,并输出结果。
②、实验代码:
/*已知三⾓形三边,求三⾓形⾯积*/
#include
#include
float area(float a,float b,float c)
{
float s,p,area;//s表⽰周长的⼀半,p表⽰⾯积
s=(a+b+c)/2;
p=s*(s-a)*(s-b)*(s-c);
area=sqrt(p);
return(area);}
main()
{
float a,b,c,ts;//ts表⽰三⾓形的⾯积
printf("请输⼊三⾓形的三条边长a,b,c\n");
scanf("%f%f%f",&a,&b,&c);
ts=area(a,b,c);
if(a+b>c&&a+c>b&&b+c>a)
printf("area=%f\n",ts);
else
printf("Data error!");
③、问题分析:getchar是在数据库中随机选取⼀个字符,并且要注意在使⽤字符时需要加⼊''.
①、问题的简单描述:有100匹马,要驮100担货物。其中1匹⼤马可以驮3担货物,1匹中马可以驮2担货物,2匹⼩马可以驮1担货物,求所需要的⼤马、中马和⼩马可以有多少种组合.
②、实验代码:
#include
main()
{
int m,n,k;/*m,n,k,分别表⽰⼤马,中马和⼩马的匹数*/
int sum=0;
printf("各种驮法如下:\n");
for(m=1;m<=100;m++)
{
for(n=1;n<=100-m;n++)
{
k=100-m-n;
if((k%2==0)&&(3*m+2*n+k/2==100))
{
printf("⼤马%3d匹;中马%3d匹;⼩马%3d匹.\n",m,n,k);
sum++;
}
}
}
printf("共有%d种驮法.\n",sum);}
③、问题分析:再看完⼀遍题⽬后发现漏掉k%2==0这个条件,如若在执⾏语句正确的情况下,不能够得到理想结果,需要再次检查题⽬,寻是否漏掉重要条件.
①、问题的简单描述:
②、实验代码:有⼀个整数等差数列,已知该数列前4项之和等于26,前4项之积等于880,编写程序求出该数列前6项的值及该数列前6项的和.
#include
main()
{
int a,b,c,d,i,sum=0;/*a为⾸项,d为差值,b为前四项的和,c为前四项的积*/
for(a=1;a<=26;a++)
for(d=1;d<=26;d++)
b=4*a+6*d;
c=a*(a+d)*(a+2*d)*(a+3*d);
if(b==26&&c==880)
{
printf("数列的初始值a=%d,差值为d=%d\n",a,d);
printf("\n数列的前六项值为:");
for(i=0;i<=5;i++)
{
printf("%d\t",a+i*d);
sum+=a+i*d;
}
printf("\n");
}
}
printf("\n数列的前6项的和:%d\n",sum);}
③、问题分析:需要使⽤到for语句的嵌套,编写代码前最好画好流程图.
①、问题的简单描述:有30个学⽣⼀起买⼩吃,共花费50元,其中,每个⼤学⽣花3元,每个中学⽣花2元,每个⼩学⽣花1元,求⼤中⼩学⽣的⼈数分配共有多少种不同的组合.
②、实验代码:
#include
main()
{
int x,y,z,sum;/*x代表⼤学⽣,y代表中学⽣,z代表⼩学⽣*/
sum=0;
for(x=1;x<=30;x++)
{
for(y=1;y<=30-x;y++)
{
z=30-x-y;
if(3*x+2*y+z==50)
{
printf("⼤学⽣%3d\t中学⽣%3d\t⼩学⽣%3d\n",x,y,z);
sum=sum+1;
}
}
printf("共有%d种组合.\n",sum);}
③、问题分析:同样使⽤for语句的嵌套,注意变量的注释,使读者更加容易看懂.
7、实验练习:example_6_3_3练习1计算x的y次幂
①、问题的简单描述:
②、实验代码:
③、问题分析:
8、实验练习:example_6_3_3练习2计算Ackerman函数
①、问题的简单描述:
②、实验代码:
③、问题分析:
9、实验练习:example_6_3_3练习3计算学⽣的年龄
递归函数c语言规则①、问题的简单描述:
②、实验代码:
③、问题分析:
10、实验练习:example_6_3_3练习3编写递归函数实现Ack函数
①、问题的简单描述:
②、实验代码:
③、问题分析:
三、实验⼩结
得与失
标签:float,area,练习,C语⾔,实验,程序设计,三⾓形,实验报告,example
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论