定义一个函数,计算m的n次方;调用该函数,输出m的n次方。注意:m和n从键盘输入。
#include<stdio.h>ints(intm,intn){inta=1;for(;n>0;n--){m=a*m;}}voidmain(){intm,n,temp=...
#include<stdio.h>
int s(int m,int n)
{
int a=1;
for(;n>0;n--)
{
m=a*m;
}
}
void main()
{
int m,n,temp=1;
printf("请输入一个数m:\n");
scanf("%d",&m);
printf("请输入该数的n次方:\n");
scanf("%d",&n);
temp=temp*m;
printf("%d的%d次方=%d",m,n,s);
}
麻烦看下哪里错了,运行结果一直为4198405 展开
int s(int m,int n)
{
int a=1;
for(;n>0;n--)
{
m=a*m;
}
}
void main()
{
int m,n,temp=1;
printf("请输入一个数m:\n");
scanf("%d",&m);
printf("请输入该数的n次方:\n");
scanf("%d",&n);
temp=temp*m;
printf("%d的%d次方=%d",m,n,s);
}
麻烦看下哪里错了,运行结果一直为4198405 展开
2个回答
展开全部
int s(int m,int n)
{
int a=1;
for(;n>0;n--){a=a*m;}; //累乘
return a; //返回
}
int main()
{
int m,n;
printf("m\n");
scanf("%d",&m);
printf("n\n");
scanf("%d",&n);
printf("%d %d =%d",m,n,s(m,n)); // 注意函数调用
return 0;
}
===
如果 数比较大,方次多,要用 double 型。
double s(int m,int n) { double a=1; 其它不变...}
主函数里输出格式变一下 printf("%d %d =%lf",m,n,s(m,n));
{
int a=1;
for(;n>0;n--){a=a*m;}; //累乘
return a; //返回
}
int main()
{
int m,n;
printf("m\n");
scanf("%d",&m);
printf("n\n");
scanf("%d",&n);
printf("%d %d =%d",m,n,s(m,n)); // 注意函数调用
return 0;
}
===
如果 数比较大,方次多,要用 double 型。
double s(int m,int n) { double a=1; 其它不变...}
主函数里输出格式变一下 printf("%d %d =%lf",m,n,s(m,n));
2017-12-08 · 知道合伙人互联网行家
关注
展开全部
|f(x)|<10^-5 f(x)=2x^3-4x^2+3x-6
#include"iostream"
#include"stdio.h"
#include"math.h"
#define null 0
double fx(double); //f(x)函数
void main()
{
double xa(null),xb(null),xc(null);
do
{
printf("请输入一个范围x0 x1:");
std::cin>>xa>>xb; //输入xa xb的值
printf("%f %f",xa,xb);
}
while(fx(xa)*fx(xb)>=0); //判断输入范围内是否包含函数值0
do
{
if(fx((xc=(xa+xb)/2))*fx(xb)<0) //二分法判断函数值包含0的X取值区间
{
xa=xc;
}
else
{
xb=xc;
}
}
while(fx(xc)>pow(10.0,-5)||fx(xc)<-1*pow(10.0,-5));//判断x根是否在接近函数值0的精确范围内
printf("\n 得数为:%f",xc);
}
double fx(double x)
{
return(2.0*pow(x,3)-4.0*pow(x,2)+3*x-6.0);
}
#include"iostream"
#include"stdio.h"
#include"math.h"
#define null 0
double fx(double); //f(x)函数
void main()
{
double xa(null),xb(null),xc(null);
do
{
printf("请输入一个范围x0 x1:");
std::cin>>xa>>xb; //输入xa xb的值
printf("%f %f",xa,xb);
}
while(fx(xa)*fx(xb)>=0); //判断输入范围内是否包含函数值0
do
{
if(fx((xc=(xa+xb)/2))*fx(xb)<0) //二分法判断函数值包含0的X取值区间
{
xa=xc;
}
else
{
xb=xc;
}
}
while(fx(xc)>pow(10.0,-5)||fx(xc)<-1*pow(10.0,-5));//判断x根是否在接近函数值0的精确范围内
printf("\n 得数为:%f",xc);
}
double fx(double x)
{
return(2.0*pow(x,3)-4.0*pow(x,2)+3*x-6.0);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询