还是类型不太明白!!!!
幻灭心 资深达人 2017-03-15 01:32:04
1184 2 0

#include <stdio.h>

#include <stdlib.h>

#define  N  5

double fun ( int w[][N] )

{

int i,j;

double sum=0.0,a=0.0,ave;

for(i=0;i<N;i++)

{

for(j=0;j<N;j++)

sum+=w[i][j];

}


for(i=1;i<N-1;i++)

{

for(j=1;j<N-1;j++)

a+=w[i][j];

}

sum-=a;

ave=double(sum)/double(4*N-4);

return ave;



}


最后总是提示ave那里类型错误,改了好几遍还是对不上,请问老师我这个应该怎么改?

问题来自: 编程题真题

共 2 个回答

    最佳答案

    qqq 资深元老 助教 3043天前

    ave=double(sum)/double(4*N-4);

    这一句啊,sum本来就是double类型了,不需要强制类型转换了,而且既然分子sum已经是double类型了,那么分母4*N-4是什么类型已经不重要了,因为相除的结果一定是double类型了。

    而且,强制类型转换是(double)sum,你的括号加错了。

    幻灭心 资深达人 3043天前

    回复 qqq:哦哦,谢谢老师。

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

  • 0

    点赞

  • 扫一扫分享朋友圈

    二维码

  • 分享

相关问题