提问者:小点点

子程序,不使用pow,带参数和返回


我不明白我的代码有什么问题它需要有参数和返回,在C++中

    #include <bits/stdc++.h>

int p(int,int);

int main() {
  int a,b,c;
  scanf("%d",&a);
  scanf("%d",&b);
  printf("%d\n",c);
  return 0;
}

int p(int a,int b){
  int t,i,c=1;
  for(i=1;i<=b;i++){
    t=a;
    c=c*t;
    return t;
  }
}

输入:2 4

输出:16


共1个答案

匿名用户

我想你是有意写这段代码的

int p(int a,int b){
  int t,i,c=1;
  for(i=1;i<=b;i++){
    t=a;
    c=c*t;
  }
  return t;
}

在您的版本中,return语句位于for循环中。

正如已经指出的,你可能是这个意思

printf("%d\n",p(a,b));

而不是这个

printf("%d\n",c);