不用调用函数的情况下 作次方运算

本文探讨了如何在C语言中不调用函数进行次方运算。最初尝试将2赋值给i直接运算,结果得到的是2的4次方。问题在于for循环的迭代方式,通过修改循环条件解决了这个问题,确保正确计算2的3次方。程序经过完善,运行得到预期结果,但遇到1的0次方运算时,编译未通过。
摘要由CSDN通过智能技术生成
#include <stdio.h>
int main()
{
    int i = 2,N=3,n=1;
    for(;n<=N;n++)
    i = i * i;
    printf("%d", i);
    return 0;
}

一开始脑子中是这么构思的,为了方便,直接把2赋值给i,然后做3轮运算

但是执行语句后,得到运算结果是256。

所以我改了一下程序。

#include <stdio.h>
int main()
{
	int i = 2,N=3,n=1,t;
	t = i;

	for(;n<=N;n++)
	i = t* i;
	printf("%d", i);
	return 0;
}

在for语句中跑了三轮 但是结果并不是2的三次方=8 ; 而是2的4次方=16

不难发现第一次的i=t*1 就已经是2的2次方是4了,所以我们可以让n的初始值为2/或者让n的初始值还是为1 但是for循环的循环条件改为n<=(N-1)

 让我们完善一下这个程序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值