在C语言中用函数调用计算多项式

在C语言中用函数调用计算多项式,c,C,我正在尝试编写一个程序,它依赖于函数调用来计算3x^5+2x^4-5x^3-x^2+7x-6。但是,它一直为我的函数返回值0 #include <stdio.h> int function(int x, int polynomial) { polynomial = (3 * x * x * x * x * x) + (2 * x * x * x * x) - (5 * x * x * x) - (2 * x * x) + (7 * x) - 6; return polynomial

我正在尝试编写一个程序,它依赖于函数调用来计算3x^5+2x^4-5x^3-x^2+7x-6。但是,它一直为我的函数返回值0

#include <stdio.h>

int function(int x, int polynomial)
{
polynomial = (3 * x * x * x * x * x) + (2 * x * x * x * x) - (5 * x * x * x) - (2 * x * x) + (7 * x) - 6;
return polynomial; 
}

int main(void)
{
int x, polynomial;

printf("The program will compute the following polynomial: \n");
printf("3x^5 + 2x^4 - 5x^3 - x^2 + 7x - 6 \n");
printf("Please enter a value for x: ");
scanf("%d", &x);

function(x, polynomial);

return 0;
#包括
int函数(int x,int多项式)
{
多项式=(3*x*x*x*x*x)+(2*x*x*x*x)-(5*x*x*x)-(2*x*x)+(7*x)-6;
返回多项式;
}
内部主(空)
{
int x,多项式;
printf(“程序将计算以下多项式:\n”);
printf(“3x^5+2x^4-5x^3-x^2+7x-6\n”);
printf(“请输入x:”的值);
scanf(“%d”和&x);
函数(x,多项式);
返回0;
}


为什么要这样做?如何将函数中的值返回到main中?

将变量的值赋给函数调用的
函数
返回的值:

#include <stdio.h>

int function(int x)
{
    polynomial = (3 * x * x * x * x * x) + (2 * x * x * x * x) - (5 * x * x * x) - (2 * x * x) + (7 * x) - 6;
    return polynomial; 
}

int main(void)
{
    int x, result;

    printf("The program will compute the following polynomial: \n");
    printf("3x^5 + 2x^4 - 5x^3 - x^2 + 7x - 6 \n");
    printf("Please enter a value for x: ");
    scanf("%d", &x);

    result = function(x);

    /* do something with result, like print it */

    return 0;
}
在这种情况下,
函数
是一个
void
,因此不返回任何内容。将值
x
result
的内存地址传递给它。该内存地址在
函数
中被解除引用,然后解除引用的地址可以将其值设置为任何
多项式


离开
函数
并返回
后,
结果
的值包含在
函数
中执行的计算

将变量的值分配给称为
函数
的函数返回的值:

#include <stdio.h>

int function(int x)
{
    polynomial = (3 * x * x * x * x * x) + (2 * x * x * x * x) - (5 * x * x * x) - (2 * x * x) + (7 * x) - 6;
    return polynomial; 
}

int main(void)
{
    int x, result;

    printf("The program will compute the following polynomial: \n");
    printf("3x^5 + 2x^4 - 5x^3 - x^2 + 7x - 6 \n");
    printf("Please enter a value for x: ");
    scanf("%d", &x);

    result = function(x);

    /* do something with result, like print it */

    return 0;
}
在这种情况下,
函数
是一个
void
,因此不返回任何内容。将值
x
result
的内存地址传递给它。该内存地址在
函数
中被解除引用,然后解除引用的地址可以将其值设置为任何
多项式


离开
函数
并返回
后,
结果
的值包含在
函数
中执行的计算

将变量的值分配给称为
函数
的函数返回的值:

#include <stdio.h>

int function(int x)
{
    polynomial = (3 * x * x * x * x * x) + (2 * x * x * x * x) - (5 * x * x * x) - (2 * x * x) + (7 * x) - 6;
    return polynomial; 
}

int main(void)
{
    int x, result;

    printf("The program will compute the following polynomial: \n");
    printf("3x^5 + 2x^4 - 5x^3 - x^2 + 7x - 6 \n");
    printf("Please enter a value for x: ");
    scanf("%d", &x);

    result = function(x);

    /* do something with result, like print it */

    return 0;
}
在这种情况下,
函数
是一个
void
,因此不返回任何内容。将值
x
result
的内存地址传递给它。该内存地址在
函数
中被解除引用,然后解除引用的地址可以将其值设置为任何
多项式


离开
函数
并返回
后,
结果
的值包含在
函数
中执行的计算

将变量的值分配给称为
函数
的函数返回的值:

#include <stdio.h>

int function(int x)
{
    polynomial = (3 * x * x * x * x * x) + (2 * x * x * x * x) - (5 * x * x * x) - (2 * x * x) + (7 * x) - 6;
    return polynomial; 
}

int main(void)
{
    int x, result;

    printf("The program will compute the following polynomial: \n");
    printf("3x^5 + 2x^4 - 5x^3 - x^2 + 7x - 6 \n");
    printf("Please enter a value for x: ");
    scanf("%d", &x);

    result = function(x);

    /* do something with result, like print it */

    return 0;
}
在这种情况下,
函数
是一个
void
,因此不返回任何内容。将值
x
result
的内存地址传递给它。该内存地址在
函数
中被解除引用,然后解除引用的地址可以将其值设置为任何
多项式


离开
函数
并返回
main
后,
结果
的值包含在
函数
中执行的计算

我通过为函数分配一个变量使其正常工作。谢谢。你为什么不使用内置的数学函数呢?如果我给函数赋值一个变量,它就可以正常工作了。谢谢。你为什么不使用内置的数学函数呢?如果我给函数赋值一个变量,它就可以正常工作了。谢谢。你为什么不使用内置的数学函数呢?如果我给函数赋值一个变量,它就可以正常工作了。谢谢。你为什么不使用内置的数学函数呢?这样看起来就不会那么混乱了