运行错误,求看看help,怎么回事

#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)(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没有赋值,变量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)