辑或 发表于 2018-8-12 21:57:11

写了一个简单pow函数定义,for循环表达式有些不太懂,希望鱼油解答一下,谢谢~

#include<stdio.h>

void main()
{
double pow(double a, double b); //pow函数声明
        double x,y,product;
        printf("分别输入底数和指数:\n");
        scanf("%lf%lf",&x,&y);
        product = pow(x,y);
        printf("%lf的%lf次方等于%lf\n",x,y,product);
        return 0;
}

double pow(double a, double b) //pow函数定义
{
        double z;
        z=1;
        for(;b--;) //表达式1和表达式3不影响结果
    //for(b;b<0;b--) //结果为1
    {
      z = z*a;
    }
        return z;
}

lvvly 发表于 2018-8-12 22:06:51

函数声明要放在main函数外面
void main 哪里来的return 0 要么int main 要么不要return
被注释掉的for改成(;b>0;b--)
for里面的第一个分号前面是初始化的,第二个分号前面是判断条件,第二哥分号后面是迭代

辑或 发表于 2018-8-12 22:22:03

lvvly 发表于 2018-8-12 22:06
函数声明要放在main函数外面
void main 哪里来的return 0 要么int main 要么不要return
被注释掉的for改 ...

谢谢帅哥,刚试了下,你讲的是对的,是我自己没把定义理解透。函数声明放在里面和放在外面结果是一样的,放外面应该是更规范一些。{:10_256:}
页: [1]
查看完整版本: 写了一个简单pow函数定义,for循环表达式有些不太懂,希望鱼油解答一下,谢谢~