c-计算一个数字N次幂的疑问。关于if语句。

问题描述

计算一个数字N次幂的疑问。关于if语句。

这段代码是为了求数字的P次幂,N为数值,P为幂。
但是我调用power函数后,每次计算结果都为1。如果把标记星号的这几行删除,那么就可以正常计算,这里有个疑问,我的想法就是if为假,应该就直接跳过这段代码,但是实际好像不是这样。求解答。
代码如下:
double power(double n,int p)
{
double pow;
int i;
if(n=0) * * * * * *
pow=0; * * * * * *
if(p=0) * * * * * *
pow=1; * * * * * *
for(pow=1,i=1;i<=p;i++)
pow*=n;
return pow;
}

解决方案

 double power(double n,int p)
{
    double pow;
    int i;
    if(n=0) * * * * * *  // 判断是否相等用n==0, 不是n=0
        pow=0; * * * * * *
        if(p=0) * * * * * *// 判断是否相等用n==0, 不是n=0
            pow=1; * * * * * *
            for(pow=1,i=1;i<=p;i++)
                pow*=n;
    return pow;
}

解决方案二:

删掉即可

解决方案三:

谢谢,新人没有悬赏分。。只能表示感谢了。 刚开始碰编程。低级错误。

解决方案四:

友情提醒题主,在c的math.h头文件中,已经自带了pow函数。

解决方案五:

学习了

时间: 2024-11-08 19:02:38

c-计算一个数字N次幂的疑问。关于if语句。的相关文章

c++-C++使用while for do...while分别计算一个数字的阶乘

问题描述 C++使用while for do...while分别计算一个数字的阶乘 C++使用while for do...while分别计算一个数字的阶乘 要求编写三个程序,用三种循环分别实现 解决方案 while: #include<iostream> using namespace std; int main() { unsigned long long result=1,n; cin>>n; while(n)result*=n--; cout<<result&l

【编程错误求指教】计算一个数字前的所有数字中1出现的次数

问题描述 [编程错误求指教]计算一个数字前的所有数字中1出现的次数 function deal(m) { var n = 0, i = 0,h = 0; for (; n < m + 1; n++) { i = n; while (i > 0) { if ((i % 10) == 1) { h++; }; i /= 10; }; }; alert(h); }; deal(11); 计算11之前包括11数字中1出现的次数 错在哪里 11的结果是3 谢谢 解决方案 直接用正则表达式就可以了. va

求s=a+aa+aaa+aaaa+aa...a的值(其中a是一个数字)

查看全套"c语言习题集" 题目: 求s=a+aa+aaa+aaaa+aa...a的值,其中a是一个数字.例如2+22+222+2222+22222(此时共有5个数相加),几个数相加有键盘控制. 1.程序分析:关键是计算出每一项的值. 2.程序源代码: #include "stdio.h"#include "conio.h"main(){ int a,n,count=1; long int sn=0,tn=0; printf("pleas

c语言-从键盘输入一个数字(不限位数),用循环语句编程判断并输出这个数字的位数

问题描述 从键盘输入一个数字(不限位数),用循环语句编程判断并输出这个数字的位数 从键盘输入一个数字(不限位数),用循环语句编程判断并输出这个数字的位数 解决方案 我用java不过逻辑都一样 int n = 987878976;//正是是从键盘接收的数字,处理后的数字. int count = 0;//保存数字的位数 while(n>=1){ count++; n = n/10; } //输出count就可以了 解决方案二: #include <iostream> using names

如:你希望此任务多长时间完成呀?()天,当你在前面的括号中填入一个数字时,后面会自动出现这个任务的结束时间。请问这个功能怎么实现呀。谢

问题描述 我在建任务数据表时有个想法,开始时间,结束时间,还有任务开发周期,我认为有开始时间和结束时间就行了,没有必要再建任务开发周期了,不过这个开始周期可以算出来的.这个功能是怎么实现的呀?如:你希望此任务多长时间完成呀?()天,当你在前面的括号中填入一个数字时,后面会自动出现这个任务的结束时间.请问这个功能怎么实现呀.谢谢 解决方案 解决方案二:没看明白,你想计算时间吗?可以看看COleDatetimeCOleDatetimeSpan解决方案三:就是你希望此任务多长时间完成呀?()天,后面会

问题求助 数据结构-使用双栈实现中缀表达式求值一个字符栈一个数字栈

问题描述 使用双栈实现中缀表达式求值一个字符栈一个数字栈 程序写好没输出啊,急求啊......主要BUG 在Nibolansuanfa()这个自定义函数里面前面的可以忽略..... /*核心函数*/ double Nibolansuanfa(char *str,stack *s) { initstack(&s);//初始化栈 char st[20],tc,xy;//st[20]里面放数字字符串 int j=0,i=0,yxcount=0; double d; while(str[j]!='')

问个从集合中计算指定数字并分组的方法

问题描述 有一个集合如idmoney133333244444355555466666输入了一个88888的数字要计算出所有小于等于这个数字的记录.并分组归类...一组有多条记录..但这几条记录的money的合要小于等于我输入的数字..需要把所有的分组都列出来... 解决方案 解决方案二:自己顶一下....解决方案三:比较好的办法是linq拉...类似sql的语法来查询集合...但是这个linq要你自己写,要求有的高.还有个方法是,放入内存数据库,使用sql查询,easy..推荐这个解决方案四:给

numbers-如何让用户输入一个数字,然后分辨是比array里面的数字大还是小

问题描述 如何让用户输入一个数字,然后分辨是比array里面的数字大还是小 import java.util.Scanner; public class Arrays13 { public static void main(String[] args) { Scanner reader = new Scanner(System.in); int number; int[] numbersArray = new int[]{11,8,4,9,22,30,24,23,35,0}; System.ou

Python计算一个文件里字数的方法

 本文实例讲述了Python计算一个文件里字数的方法.分享给大家供大家参考.具体如下: 这段程序从所给文件中找出字数来. ? 1 2 3 4 5 6 7 8 9 10 11 12 from string import * def countWords(s): words=split(s) return len(words) #returns the number of words filename=open("welcome.txt",'r') #open an file in rea