Nagativo 2015-04-14 13:40 采纳率: 100%
浏览 1903
已采纳

error C2143 和 error C2065

这是一个随机出10道四则运算题的程序,
正不正确现在还不清楚,
但在编译时出现了大量的缺少“;”和“未声明变量”的提示,
编译环境 是VS2012,
求助。

#include <stdio.h>
#include <stdlib.h>
#include <time.h>
int Compute(int a,int b,int op);
void Print(int flag);
int main()
{
    srand((unsigned)time(NULL));
    int x,y,z;
    int i,j=0;
    int flag;
    x=rand()%10+1;
    y=rand()%10+1;
    if(x%y==0)
        z=rand()%4;
    else z=rand()%3;
    for(i=1;i<=10;i++)
    {
        flag=Compute(x,y,z);
        Print(flag);
        j=j+flag;
    }
    printf("Total score:%d\n",j*10);
    printf("Wrong answer(s):%d\n",10-j);
    return 0;
}
int Compute(int a,int b,int op)
{
    char op2;
    int temp1,temp2,input,answer;
    switch(op)
    {
    case 0:op2='+';
        answer=a+b;
        break;
    case 1:op2='-';
        temp1=(a>b?a:b);
        temp2=(a>b?b:a);
        a=temp1;
        b=temp2;
        answer=a-b;
        break;
    case 2:op2='*';
        answer=a*b;
        break;
    case 3:op2='/';
        answer=a/b;
        break;
    }
    printf("%d%c%d=",a,op2,b);
    scanf("%d",&input);
    if(input==answer)
        return 1;
    else return 0;
}
void Print(int flag)
{
    if(flag==1)
        printf("Right!");
    else printf("Not correct!");
    return;
} 
  • 写回答

2条回答 默认 最新

  • 阿姨戏太露 2015-04-15 02:48
    关注

    这个是C语言的程序,需要将定义和实现分开来写,先将所需要的变量定义,在执行操作语句。
    这个是改过后的代码

     int main()
    {
        int x;
        int y;
        int z;
        int i = 0;
        int j = 0;
        int flag;
        srand((unsigned)time(NULL));
       /* 将变量的声明写在前面
         int x;
        int y;
        int z;
        int i = 0;
        int j = 0;
        int flag;
            */
        x=rand()%10+1;
        y=rand()%10+1;
        if(x%y==0)
            z=rand()%4;
        else z=rand()%3;
        for(i=1;i<=10;i++)
        {
            flag=Compute(x,y,z);
            Print(flag);
            j=j+flag;
        }
        printf("Total score:%d\n",j*10);
        printf("Wrong answer(s):%d\n",10-j);
        return 0;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 2020长安杯与连接网探
  • ¥15 关于#matlab#的问题:在模糊控制器中选出线路信息,在simulink中根据线路信息生成速度时间目标曲线(初速度为20m/s,15秒后减为0的速度时间图像)我想问线路信息是什么
  • ¥15 banner广告展示设置多少时间不怎么会消耗用户价值
  • ¥16 mybatis的代理对象无法通过@Autowired装填
  • ¥15 可见光定位matlab仿真
  • ¥15 arduino 四自由度机械臂
  • ¥15 wordpress 产品图片 GIF 没法显示
  • ¥15 求三国群英传pl国战时间的修改方法
  • ¥15 matlab代码代写,需写出详细代码,代价私
  • ¥15 ROS系统搭建请教(跨境电商用途)