liulunlife 发表于 2014-4-27 17:30:44

输入输出问题

#include<stdio.h>

int main(void)
{
    int x, n;
    printf("请输入X的n次幂中X的值 X=");
    scanf("%d",x);
    printf("请输入X的n次幂中n的值 n=");
    scanf("%d",n);
    return 0;
}

编译:求1到x的n次幂之和.exe - 0 error(s), 0 warning(s)
当我运行输入任意一个数字回车之后,就报错求1到x的n次幂之和.exe已停止工作
然后有两个选择:
                           关闭程序
                           调试程序
什么会出错。。

向往青莲 发表于 2014-4-27 17:30:45

scanf("%d",x);
scanf("%d",n);

scanf("%d",&x);
scanf("%d",&n);

sidfate 发表于 2014-4-27 18:37:29

学好C语言就是要关注细节

风雪幻林 发表于 2014-4-27 19:44:35

你的源程序修改好后也只是分别给x,n赋初值;求x的y次方:应该用pow函数:
#include <math.h>
#include <stdio.h>

int main(void)
{
   double x = 1.0, y = 3.0;

   printf("%lf raised to %lf is %lf\n", x, y, pow(x, y));
   return 0;
}

呵123 发表于 2014-4-27 19:57:46

scanf()函数后面的参数是一个地址。。。应该是scanf("%d",&x),你少了一个&

青玄 发表于 2014-4-27 20:43:57

恩恩!楼上回答的已经很好了,应该没问题了吧!

风之残月 发表于 2014-4-30 09:32:06

scanf("%d", &x)
scanf("%d", &n)

chenguwen003210 发表于 2014-4-30 15:31:36

scanf("%d",x);
    printf("请输入X的n次幂中n的值 n=");
    scanf("%d",n);
应该是
scanf("%d",&x);//取地址符号,注意细节
    printf("请输入X的n次幂中n的值 n=");
    scanf("%d",&n);

爱玩小伙伴 发表于 2014-5-7 16:14:26

你那个scanf("%d",x);scanf("%d",n);要加取地址符scanf("%d",&x);scanf("%d",&n);
页: [1]
查看完整版本: 输入输出问题