#include <stdio.h>
using namespace std;
int main(){
int n;
scanf("%d",&n);
int result=0;
for(int i=0;i<n;i++){
int w,score;
scanf("%d%d",&w,&score);
result+=w*score;
}
if(result<0)
printf("0\n");
else
printf("%d\n",result);
return 0;
}
为什么同样的代码用C++就过了,用C语言就会编译出错大家知道么?
using namespace std;在上面代码是多余的。
.c文件,变量声明要放花括号内开头的地方。
#include <stdio.h>
int main() {
int n,i;
int result = 0;
scanf("%d", &n);
for (i = 0; i<n; i++) {
int w, score;
scanf("%d%d", &w, &score);
result += w*score;
}
if (result<0)
printf("0\n");
else
printf("%d\n", result);
return 0;
}
使用C语言编译的情况下:
使用C++语言编译的情况下:
你这段程序如果改成如下这样,就可以在C++和C语言下都编译通过啦
#include <stdio.h>
int main(){
int n;
scanf("%d",&n);
int result=0;
for(int i=0;i<n;i++){
int w,score;
scanf("%d%d",&w,&score);
result+=w*score;
}
if(result<0)
printf("0\n");
else
printf("%d\n",result);
return 0;
}
欢迎采纳本答案呀
很简单,虽然stdio.h是c语言的头文件但是后面的using namespace std;只有c++可以用。