在定义函数时为什么会出现函数未定义的情况

问题遇到的现象和发生背景

定义函数出现报错,第十行显示问题是“未找到power的函数定义

问题相关代码,请勿粘贴截图

#include<stdio.h>
main()
{
int power(int x, int n);
int x, y, n;
scanf_s("%d,%d", &x, &n);
y = power(x, n);
printf("%d", y);
}
int power(int x, int n);
{
int t = 1, i;
for (i = 1; i <= n; i++)
t = t * x;
return t;
}

运行结果及报错内容

结果不能运行,有报错的未找到power的定义

我的解答思路和尝试过的方法

尝试重新输入不可以

我想要达到的结果

不知道怎么会出现这样的情况

你定义的函数如果放在main函数之后,必须在main函数前声明。int power(int x, int n);

或者你把power函数定义放在main函数上面。

另外你的函数定义时,不需要分号

#include<stdio.h>

int power(int x, int n);

void main()
{
  int x, y, n;
  scanf_s("%d,%d", &x, &n);
  y = power(x, n);
  printf("%d", y);
}

int power(int x, int n)
{
  int t = 1, i;
  for (i = 1; i <= n; i++)
    t = t * x;
  return t;
}

img

没有打错的话,在前面进行一次函数声明就可以了吧