c语言一个数据计算上的问题,求大佬解答。
好像输入的在计算的时候发生了错误
#include <stdio.h>
#include<math.h>
void m1();
int main()
{
system("color f1");
m1();
return 0;
}
void m1()
{
int flag = 1;
long double x,y;
long double X,Y,Z;
long double R,G,B;
while(flag == 1)
{
printf("请输入Y,x,y:(输入格式:1 2 3\n");
scanf("%Lf %Lf %Lf",&Y,&x,&y);
printf("%Lf",Y);
X = (x*(Y/y))/100;
Z = ((1-x-y)*(Y/y))/100;
printf("0 %Lf ",X);
R = X*2.04137-Y*0.56495-Z*0.34469;
G = Y*1.87601-X*0.96927+Z*0.04156;
B = X*0.01345-Y*0.11839+Z*1.01541;
printf("1 %Lf ",R);
R = pow(R,(1/2.09921875));
G = pow(G,(1/2.09921875));
B = pow(B,(1/2.09921875));
printf("2 %Lf ",R);
R = R*255;
G = G*255;
B = B*255;
printf("3 %Lf ",R);
printf("R=%Lf G=%Lf B=%Lf\n",R,G,B);
printf("\n-------------------------------\n");
getchar();
}
}

我看你那个flag循环好像是个死循环