代码改变世界

函数

2017-12-29 17:22  工班  阅读(146)  评论(0编辑  收藏  举报

一、PTA实验作业。

题目1:7-40 多项式求和

1.本题PTA实验结果

2·设计思路

 

2.设计思路

int i,x,m;
double sum;
scanf("%d\n",&m);
if(m<100){
for(i=1;i<=m;i++){
scanf("%d",&x);
sum=result(x);
printf("%.2f\n",sum);}}
return 0;
}
float result(float x)
{
int i,flag,de,m,num;
double item,sum,result;
sum=0;
de=1;flag=1;num=1;
for(i=1;i<=x;i++){
item=(flag*1.0*num)/de;
sum=sum+item;
flag=-flag;
de=de+1;}

程序图

3.代码截图

4.本题调试过程碰到的问题及解决办法

a、答案错误

 

错误点:子函数以后的都是错误的,没有循环,变为

flag fox(float x)

{

int i,flag=de=1,

double sum=0;

for(i=i;i<=n;i++){

sum=sum+flag*1/m;

de=de+i;

flag=-flag;

}

return sum;

b.编译错误

#include<stdio.h>
float fox(float x);
int main()
{
int i,m,n;
double sum;
scanf("%d\n",&m);
if(m<100){
for(i=1;i<=m;i++){
scanf("%d",&x);
sum=fox(x);
printf("%.2f\n",sum);}}
return 0;}
float fox(float x)
{
int i,flag,de,m,num;
double item,sum,fox;
sum=0;
i=1;
de=1;
flag=1;
num=1;
for(i=1;i<=x;i++)
item=(flag*1.0*num)/de;
sum=sum+item;
de=de+1;
flag=-flag;
return sum;
}

错误点:去掉num,改de=d+为de=de+i;

题目2:7-41 判断数字字符

 1、本题PTA实验结果

2·设计思路

先定义主函数,输出ch,大于等于0和小于等于9,就输出Yes,其他就输出No。

流程图

 

3.代码截图

4.本题调试过程碰到问题及解决办法

a、部分正确

错误点:答案(“Yes”);改为printf(“yes”);

 

题目3:7-42 函数编程-分段函数

1、本题PTA实验结果

2、设计思路

流程图

3.代码截图

4.本题调试过程碰到的问题及解决问题

a.编译错误

错误点:输出printf("y=%.6f",y);改为printf(“y = %f”,y);

还有把y=(-eps(2*x-1)+3改为y=(-eps(2*x+1)+3;

b.部分正确

错误点:把y=(-eps(2*x-1)+3改为y=(-eps(2*x+1)+3;

二、截图本次题目集的PTA最后排名

 

 三 阅读代码

7-42

对比赵秋霞     

不同点 我的用了float,她用了void,她的代码简洁,我的易读懂。最后输出也不同,我的是%f,她的是%。6f。

四、本周学习总结

1、函数分主函数与子函数。

2、函数的形式有两种,分为void还有int,float,double,两种。

3、函数的传递有一定的规律。

4、可以在一个函数中在调用一个函数,函数镶嵌调用。