C:printf中的额外输出

时间:2016-09-09 17:50:58

标签: c

我上周刚开始学习C编程,并且我已经了解了一些关于它的基础知识。所以现在我正在尝试制作一个可以加起来两个数字并显示结果的程序。 这是我的代码:

#include <stdio.h>

int main (void)
{
    int a;
    int b;
    int result;

    printf("Insert a number:%d\n");
    scanf ("%d",&a);

    printf ("Insert the next number:%d\n");
    scanf ("%d",&b);

    result = a + b;

    printf ("Result is:%d\n",result);
    return 0;

}

可以编译并运行,但会显示以下结果。  [1] http://i.stack.imgur.com/4Xjdv.png

有人可以帮助我摆脱4200612,它是在第一个printf声明中输出的吗?谢谢你的帮助,抱歉我的英语不好。

2 个答案:

答案 0 :(得分:1)

前两个%d声明中不需要printf

printf("Insert a number: ");
scanf ("%d",&a);
printf ("Insert the next number: ");
scanf ("%d",&b);

由于没有相应的论点。它会打印一些随机值。

答案 1 :(得分:1)

尝试删除printfs中的额外%d。

#include <stdio.h>

int main (void)
{
    int a;
    int b;
    int result;

    printf("Insert a number:\n");
    scanf ("%d",&a);

    printf ("Insert the next number:\n");
    scanf ("%d",&b);

    result = a + b;

    printf ("Result is:%d\n",result);
    return 0;

}