程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> 實驗3-2,深圳中學32實驗班

實驗3-2,深圳中學32實驗班

編輯:C++入門知識

實驗3-2,深圳中學32實驗班


#include<stdio.h>
#include <stdlib.h>
#include <time.h>
main()
{
 int a,b,c,n,u,i,e=0;
 int sum2=1;
 int sum=0;
 float sum3=0;
 float answer2;
 int resultTrue=0;
 int answer;
 int time=0;
 char op,op2;
 do//產生隨機數
 {
  a=rand()%100+1;
  b=rand()%100+1;
  c=rand()%100+1;
  n=rand()%4+1;
  u=rand()%9+1;
  e=rand()%10+1;
  switch(n)
  {
  case 1://含有一個運算符
   {
       switch(u%4)//產生運算符
    {
         case 0:
       {
         op='+';
         break;
       }
         case 1:
       {
        op='-';
         break;
       }
         case 2:
       {
          op='*';
       break;
       }
         case 3:
       {
       op='/';
       break;
       }
    }
    printf("%d%c%d=\n",a,op,b);//打印
       switch(op)//通過運算符計算答案
     {
          case '+':
        {
            resultTrue=a+b;
             break;
        }
          case '-':
        {
        resultTrue=a-b;
        break;
        }
          case '*':
        {
        resultTrue=a*b;
        break;
        }
          case '/':
        {
        sum3=(float)a/b;
  printf("請輸入正確答案(時間為兩分鐘):");
  scanf("%d",&answer2);
  if(sum3==answer2)
  {
   printf("答案正確\n");
  }
  else
  {
   printf("答案錯誤\n");
   printf("正確答案為%f\n",sum3);
  }
        break;
        }
     }
     while(time<121)
     {
      printf("請輸入正確答案(時間為兩分鐘):");
   for(i=0;i<121;i++)
   {
    time++;
      scanf("%d",&answer);
        if(time==120)
  {
         printf("時間到,無法答題\n");
         time=0;
         break;
  }
         if(time<120)
   {
           if(answer==resultTrue)
    {
            printf("答案正確\n");
         printf("答題時間為%d\n",time);
         time=0;
            break;
     }
            else
   {
              printf("答案錯誤\n");
           printf("答案為%d\n",resultTrue);
              break;
   }
   }
   }
  }
   }
   case 2://產生兩個運算符
   {
    switch(u%4)//第一個運算符產生
    {
        case 0:
      {
             op='+';
              break;
      }
              case 1:
      {
             op='-';
             break;
      }
              case 2:
      {
            op='*';
            break;
      }
              case 3:
      {
            op='/';
            break;
      }
    }
    switch(u%4)//第二運算符產生
    {
      case 0:
       {
                 op2='+';
                 break;
       }
                  case 1:
       {
                op2='-';
                break;
       }
                  case 2:
       {
                op2='*';
                break;
       }
                  case 3:
       {
                op2='/';
                break;
       }
    }
        printf("%d%c%d%c%d=\n",a,op,b,op,c);//打印
    switch(op)//計算答案先通過第一個運算符計算
    {
        case '+':
      {
          sum=a+b;
          break;
      }
        case '-':
      {
      sum=a-b;
      break;
      }
        case '*':
      {
       sum=a*b;
       break;
      }
       case '/':
     {
      sum3=(float)a/b;
      break;
     }
    }
     switch(op2)//然後再根據第二運算符計算
     {
            case '+':
       {
              sum=sum+c;
              break;
       }
            case '-':
       {
           sum=sum-c;
           break;
       }
            case '*':
       {
          sum=sum*c;
          break;
       }
            case '/':
       {
           sum3=(float)sum3/c;
     printf("請輸入正確答案(時間為兩分鐘):");
  scanf("%d",&answer2);
  if(sum3==answer2)
  {
   printf("答案正確\n");
  }
  else
  {
   printf("答案錯誤\n");
   printf("正確答案為%f\n",sum3);
  }
           break;
       }
     }
     while(time<123)//時間設置
     {
        printf("請輸入正確答案(時間為兩分鐘):");
  for(i=0;i<123;i++)
  {
   time++;
        scanf("%d",&answer);
        if(time==120)
  {
          printf("時間到,無法答題\n");
          time=0;
          break;
  }
        if(time<120)
  {
         if(answer==sum)
   {
          printf("答案正確\n");
       printf("你得答題時間為%d\n",time);
       time=0;
          break;
   }
          else
    {
           printf("答案錯誤\n");
        printf("答案為%d\n",sum);
           break;
    }
  }
  }
  }
   }
     case 3:
    {
     printf("請輸入%d!=",e);
     scanf("%d",&answer);
     for(i=1;i<=e;i++)
     {
      sum2=sum2*i;
     }
     while(time<121)
     {
      if(time==120)
      {
       time=0;
       printf("已到時間\n");
       break;
      }
      if(time<120)
      {
       if(answer==sum2)
       {
        printf("答案正確\n");
        printf("用時為%d\n",time);
        sum2=1;
        break;
       }
       else
       {
        printf("答案錯誤\n");
        printf("答案為%d\n",sum2);
        sum2=1;
        break;
       }
      }
     }
    }
   }
   }while(1);
   }

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved