我对这段代码有几个问题。我在代码的最后列出了错误。编译C代码时出错
#include <stdio.h>
int main()
{
void addition(double number1, double number2); /* create the functions */
void subtraction(double number1, double number2);
void division(double number1, double number2);
void multiplication(double number1, double number2);
int inputfunc=1;
double inputnum1=0;
double inputnum2=0;
int number1;
int number2;
int answer;
while (inputfunc >= 1 && inputfunc <= 4) /* If function to be performed are those below then continue performing loop */
{
printf("Press 1 to add two numbers.\n");
printf("Press 2 to subtract two numbers.\n");
printf("Press 3 to multiply two numbers.\n");
printf("Press 4 to divide two numbers.\n");
printf("Press 5 to exit.\n");
printf("Enter your choice\n");
scanf_s("%d", &inputfunc);
if(inputfunc == 5) /* Exit program if requested via 5 function */
return(0);
printf("Enter both numbers with a space in between.");
scanf_s("%lf %lf", &inputnum1, &inputnum2);
void(*func[4])(double, double)={&addition, &subtraction, &division, &multiplication};
(*func[inputfunc-1])(inputnum1, inputnum2);
return(0);
}
}
void addition(double number1, double number2)
{
double answer;
answer=number1+number2;
printf("Addition of the two numbers = %lf + %lf = %lf\n", number1, number2, answer);
return;
}
void subtraction(double number1, double number2)
{
double answer;
answer=number1-number2;
printf("By subtracting the two numbers results are %lf - %lf = %lf\n", number1,
number2, answer);
return;
}
void multiplication(double number1, double number2)
{
double answer;
answer=number1*number2;
printf("By multiplying the two numbers results are %lf * %lf = %lf\n", number1,
number2, answer);
return;
}
void division(double number1, double number2)
{
double answer;
answer=number1/number2;
printf("By dividing the two numbers results are %lf/%lf = %lf\n", number1,
number2, answer);
return ;
}
错误C2143:语法错误:缺少 ';'之前的“type” 错误C2065:FUNC':未声明的标识符 错误C2109:下标要求数组或指针类型
请缩进你的代码,因为如果你用脚写代码就会发生类似这样的错误。 – bitcell 2014-11-24 07:13:51
搞笑:-)顺便说一句,@DonCarter,你可以请upvote那些谁帮助你?这是标准做法,不仅要奖励他们,而且要向其他人表明实际解决问题的同样的问题。你可以upvote,也可以接受一个答案, – Mawg 2014-11-24 09:15:39
与一些UniCell不同,我没有天生的编写代码的能力。我发布的代码是Word中的复制和粘贴,它并不总是在写入时进行转置。初学者应该有更多的耐心。我只在这里待了三个星期! – 2014-11-25 01:29:08