求助教解答(●'◡'●)
四年半。 圈内达人 2016-08-04 21:43:26
2525 1 0

有以下程序
#include <stdio.h>
double f(double x);
main()
{ double a=0; int i;
  for(i=0;i<30;i+=10) a+=f((double)i);
  printf("%5.0f\n",a);
}
double f(double x)
{ return x*x+1;}
程序运行后的输出结果是 _A_____ 。

 为i什么a+=f((double)i)当i =0时,double 0 代入得1, 而此时应该是a+=f(1),难得不应该再次代入得1*1+1=2么。。。

问题来自: 形参和实参

共 1 个回答

    嘿嘿大人 一代宗师 2839天前

    看题目要看清楚,a+=f((double)i)这里面就是一个强制转化类型,没有再调用了,i=0时这个语句就等于a+=f(0),看清楚没有进行嵌套调用

您还没有登录,所以不能回复该问题
我要回复

  • 0

    点赞

  • 扫一扫分享朋友圈

    二维码

  • 分享

相关问题