#include<stdio.h>
#include<math.h>
int main()
{
int n,k;
double x,y;
scanf("%d%d",&x,&y);
k=pow(10,n);
x=(int)(ka+0.5)/k;
y=(int)(ka+0.5)/k;
if(x>y)
printf("x>y");
if(x<y)
printf("x<y");
if(x=y)
printf("x=y");
return 0;
}
代码中的a和n没有赋值,变量k没有声明。if(x=y)应该是if(x==y)
给你修改了一下,你看看是不是你想要的吧。如有帮助,请帮忙采纳一下吧,谢谢。
#include<stdio.h>
#include<math.h>
int main()
{
int n,a;
double x,y,k; //添加 k的声明
scanf("%d%d",&n,&a);//这里应该是给n和a赋值,n和a的先后顺序你自己调整一下,这里是先输入n再输入a
k=pow((double)10,n);
x=(int)(k*a+0.5)/k;
y=(int)(k*a+0.5)/k;
if(x>y)
printf("x>y");
if(x<y)
printf("x<y");
if(x==y) //这里是==
printf("x=y");
return 0;
}
a从哪里来的啊?n也没有输入,你就算pow(10,n)啊
x和y明明是后面算出来的,为啥scanf输入x和y呢?应该输入n和k吧
scanf("%d%d",&n,&k);
if(x=y)改成 if(x==y)