首页 > 电脑

单分支控制的条件语句中为什么总输出第一个或第二个

更新时间2018-11-01 21:07:25

#include<stdio.h>

#include<math.h>

int main()

{

int n;

double C,R,D,F,G;

char a;

printf("Input rate, year, capital:");

scanf("%lf,%d,%lf",&R,&n,&C);

printf("Compound interest (Y/N)?");

scanf(" %c",&a);

if ('a=y')

{

     F=C*pow((1+R),n);

     G = F;

 

}

 

else

    {

D=C*(1+R*n);

G = D;

 

}

printf("deposit = %.4f ",G);

 

}


你的程序中:字符比较有错:if ('a=y');另外把两个scanf合为一次输入。改后的程序如下:

#include<stdio.h>
#include<math.h>
int main()
{
int n;
double C,R,D,F,G;
char a;
printf("Input rate, year, capital,Compound interest (y/n):");
scanf("%lf,%d,%lf,%c",&R,&n,&C,&a);
if (a=='y')
   {
    F=C*pow((1+R),n);
    G = F;
   }
else
   {
       D=C*(1+R*n);
       G = D;
   }
printf("deposit = %.4f ",G);
}

程序的两种运行结果:

单分支控制的条件语句中为什么总输出第一个或第二个


相关标签:控制

上一篇:帮我做个那些游戏解说视频的开头啊?发给我qq,必采纳特效开头写上咸鱼yeo谢谢

下一篇:C++洛谷P1909买铅笔