你的代码一个字也没错,错的是看不见空格行,你用的是vc吧?我用dev c++提示是stray '\161' in program意思应该都是一样的,有未知的字符,大多是汉字或者空格。删掉或者改掉就可以了,下面是我改过的代码。位置和一楼说的一样
#include
#include
#include
/* 函数功能:对两整型数进行加、减、乘、除四则运算
参数:整型变量a和b,分别代表参加四则运算的两个操作数
整型变量op,代表运算类型,
当op值为1,2,3,4时,分别执行加、减、乘、整除运算*/
int Compute(int a, int b, int op)
{ int c;
switch (op)
{ case 1:c=a+b;break;
case 2:c=a-b;break;
case 3:c=a*b;break;
case 4:c=a/b;break; }
return c;}
int main()
{ int a, b, answer, result,error, score, i, op;
srand(time(NULL));
error = 0;
score = 0;
for (i=0; i<10; i++)
{ a = rand()%10 + 1;
b = rand()%10 + 1;
op = rand()%4 + 1;
result = Compute(a, b, op);
scanf("%d",&answer);
if (answer == result)
{ score = score + 10;
printf("Rright!\n");
}
else
{
error++;
printf("Incorrect!\n");}
}
printf("score = %d, error numbers = %d\n", score, error);
return 0;
}
错误找到了,是因为有未知的空白行。
{ error++;
printf("Incorrect!\n");
}
}
这里,最后的括号对齐下就行了。但你的程序有点不合要求。稍微改了下。我也觉得c很难,但因为要用它,还是要学啊。
#include
#include
#include
/*
函数功能:对两整型数进行加、减、乘、除四则运算
参数:整型变量a和b,分别代表参加四则运算的两个操作数
整型变量op,代表运算类型,
当op值为1,2,3,4时,分别执行加、减、乘、整除运算
*/
int Compute(int a, int b, int op)
{
int c;
switch (op)
{
case 1:c=a+b;printf("%d + %d=\n",a,b);break;
case 2:c=a-b;printf("%d - %d=\n",a,b);break;
case 3:c=a*b;printf("%d * %d=\n",a,b);break;
case 4:c=a/b;printf("%d / %d=\n",a,b);break;
}
return c;
}
int main()
{
int a, b, answer, result,error, score, i, op;
srand(time(NULL));
error = 0;
score = 0;
for (i=0; i<10; i++)
{
a = rand()%10 + 1;
b = rand()%10 + 1;
op = rand()%4 + 1;
result = Compute(a, b, op);
printf("请输入结果:\n");
scanf("%d",&answer);
if (answer == result)
{ score = score + 10;
printf("Rright!\n");
}
else
{ error++;
printf("Incorrect!\n");
}
}
printf("score = %d, error numbers = %d\n", score, error);
return 0;
}
双击短语的错误消息,这是该行有一个错误,应该是宽字符,如果代码被接管最后删除的行,再打电话
没什么问题 你编译器错误在哪行?