编程c语言用512够吗,麻烦你用C语言编程,谢谢!

该程序使用C语言实现递归计算阶乘和指数函数。在`main`函数中,用户输入`x`和`n`,程序将计算并显示`x`的`n`次方以及阶乘的每一项,同时显示正负号。程序会检查输入是否为非负整数,若不满足条件则提示重新输入。最后输出计算结果。
摘要由CSDN通过智能技术生成

8cedbdfaa03fa41b2845999ea2cc9a61.png

FreeAngeles

2014.05.22

8cedbdfaa03fa41b2845999ea2cc9a61.png

采纳率:45%    等级:15

已帮助:8100人

#include

//不懂的可以问我

double fact( unsigned int n )

{

return 1 == n ? 1 : n * fact( n - 1 );

}

double pow( unsigned int x, unsigned int n )

{

return 0 == n ? 1 : 1 == n ? x : x * pow( x, n - 1 );

}

int main()

{

int x = 0;

int n = 0;

printf( "请输入x和n:" );

while( true )

{

scanf( "%d%d", &x, &n );

if( x < 0 || n < 0 )

{

printf( "输入错误请重新输入x和n!\n" );

continue;

}

break;

}

double ret = .0f;

int Sign = 1;

for( unsigned int i = 1; i <= n; ++i )

{

ret += pow( x, i ) / fact( i ) * Sign;

printf( "%d^%d/%d!", x, i, i );

if( i < n )

{

printf( "\n%s\n", Sign > 0 ?"+":"-" );

Sign = -Sign;

}

else

{

printf( "\n结果为:%f\n", ret );

}

}

return 0;

}追答:不好意思

if( i 0 ?"+":"-" );

Sign = -Sign;

}

改成

if( i 0 ?"+":"-" );

}

只是显示有问题,结果是对的

追答:Sign = -Sign;

放到

printf( "\n%s\n", Sign > 0 ?"+":"-" );

前面

00分享举报

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值