我刚开始进行C编程,并且正在使用Eclipse Mars环境和MinGW编译器。编写一个添加两个整数并输出总和的程序时遇到了问题。
我收到了"警告:格式"以下语句的对话框:
printf("Sum of %d ", integer1," and %d", integer2," is: %d\n", sum);
任何人都可以解释为什么这是不正确的以及我如何纠正它?
(完整的程序如下):
#include <stdio.h>
#include <stdlib.h>
int main(){
int integer1;
int integer2;
printf("Enter first integer \n");
scanf("%d\n", &integer1);
printf("Enter second integer \n");
scanf("%d", &integer2);
int sum;
sum = integer1 + integer2;
printf("Sum of %d ", integer1," and %d\a", integer2," is: %d\n", sum);
system("pause");
return 0;
}
任何人都可以解释如何重写不正确的陈述吗?
答案 0 :(得分:4)
printf()
获取一个字符串,其中可能包含格式说明符,然后是参数列表:
printf("Sum of %d and %d\a is: %d\n", integer1, integer2, sum);
答案 1 :(得分:3)
函数printf
具有以下声明
int printf(const char * restrict format, ...);
因此你应该写
printf("Sum of %d and %d\a is: %d\n", integer1, integer2, sum);