我正在用C ++编写一个基本程序。我以前没有用C编程,所以我似乎得到了一些基本的错误。 该计划是一个小测验。这是:
#include <stdio.h>
int main(void)
int correct = 0
{
int q1;
printf("What is 24/(6-3)-7?\n ");
scanf("%d",&q1)
}
{
int q2;
printf("What is -3x4+16?\n ");
scanf("%d",&q12)
}{
int q3;
printf("What is 9²(1/27)?\n ");
scanf("%d",&q1)
}
if(q1 == 1){
correct == correct + 1
}
if(){
} else if
if(q2 == 4){
correct == correct + 1
}
if(q3 == 3){
correct == correct + 1
}
请记住,我已经从互联网上挑选了一些零碎的东西。任何建议,将不胜感激。谢谢
答案 0 :(得分:1)
您需要在函数体周围放置大括号。并且你不应该在每个块周围都有问题 - 这会使q1
这样的变量成为该块的本地变量,因此您不能在函数中使用它们。
每个声明必须以;
结尾。
if()
完全没有意义 - 你必须在()
内放置一些东西;但在检查问题2的答案之前,我没有看到做额外检查的重点。
要更新correct
,您必须使用=
,而不是==
;后者用于比较,而非作业。顺便说一句,写correct = correct + 1
的惯用方法是correct++
。
由于main()
被声明为返回int
,因此您最后应该有一个return
语句。
你有一堆拼写错误。例如,当您在&q12
来电中使用&q1
和&q2
时,您使用了&q3
和scanf()
。
#include <stdio.h>
int main(void) {
int correct = 0;
int q1;
printf("What is 24/(6-3)-7?\n ");
scanf("%d",&q1);
int q2;
printf("What is -3x4+16?\n ");
scanf("%d",&q2);
int q3;
printf("What is 9^(1/2)?\n ");
scanf("%d",&q3);
if(q1 == 1){
correct = correct + 1;
}
if(q2 == 4){
correct = correct + 1;
}
if(q3 == 3){
correct = correct + 1;
}
printf("You got %d answers correct!\n", correct);
return 0;
}