重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
#includeiostream
创新互联建站坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都做网站、网站制作、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的嘉善网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!
using namespace std;
double cal_power(double x,int n)
{
if(n1)return x*cal_power(x,n-1);
else return x;
}
double cal_money(double loan,double rate,int month)
{
return loan*cal_power(1+rate,month)/(double)month;
}
int main()
{
double loan,rate;
cinloanrate;
for(int i=5;i=30;i++)
couti"-"cal_money(loan,rate,i*12)endl;
return 0;
}
int fact(int n)
{
if(n1)return n*fact(n-1);
else return 1;
}
int cal(int m,int n)
{
if(n1)return n+cal(m,n-1);
else return m;
}
void main()
{
int n;
cinn;
coutcal(1,n)/(double)fact(n)endl;
}
float cal(float x, char c, float y) {
switch (c) {
case '+': return x+y;
case '-': return x-y;
case '*': return x*y;
case '/':
if (y==0.0) return 0.0; //被除数为0时,自己定义一个返回值,
return x/y;
}
return 0.0;
}
double sumcal(double e)
{
double re=0,num=1;
int i=1;
int flag=1;
while(1)
{
flag*=i;
if (num/flage)
{
return re;
}
re=re+num/flag;
i++;
}
}
int main()
{
coutsumcal(0.1)endl;
return 0;
}
首先, 你的程序有一个小错误,开头声明应该为void cal(const char *p,int num);
我试了一下,这个程序是没有固定的结果的。
cal函数传递一个常量指针和一个整型应用,在cal中首先给整数赋值为0,然后开始循环,当*p为零时结束循环,这里循环的时机就是在系统为str分配内存空间决定的,因为你没有给str赋值,所以程序会按照内存中原来存储的未知的数执行,当遇到0时就停止循环。
补充:str因为没有被赋初值,所以他里面的内容是随机的了,如果你以它里面的内容作为循环的条件,那么当遇到p所指的内容为0的时候才会结束循环。再不采纳我也没招了。