C語言:一個能自動生成小學四則運算題目的程式

Kaci發表於2015-03-26

完成這個程式,半個小時內完成了,這個程式,可以自動生成小學簡易的四則運算,提供選單讓使用者選擇,然後判斷加減乘除,判斷答對答錯的題目個數,使用者同時也可以重新選擇繼續答題或重新選擇或退出程式。

源程式:

#include<stdio.h>
#include<math.h>
#include<windows.h>
int right=0;
int wrong=0;
void add()
{
 int a,b,c;
 a=rand()%100;
 b=rand()%100;
 printf("請回答:\n\t\t %d + %d = ",a,b);
 scanf("%d",&c);
 if(a+b==c)
 {
  printf("回答正確!\n");
  right++;
 }
 else
 {
  printf("回答錯誤!\n");
  wrong++;
 }
}
void minu()
{
 int a,b,c;
 a=rand()%100;
 b=rand()%100;
 printf("請回答:\n\t\t %d - %d = ",a,b);
 scanf("%d",&c);
 if(a-b==c)
 {
  printf("回答正確!\n");
  right++;
 }
 else
 {
  printf("回答錯誤!\n");
  wrong++;
 }
}
void mul()
{
 int a,b,c;
 a=rand()%100;
 b=rand()%100;
 printf("請回答:\n\t\t %d * %d = ",a,b);
 scanf("%d",&c);
 if(a*b==c)
 {
  printf("回答正確!\n");
  right++;
 }
 else
 {
  printf("回答錯誤!\n");
  wrong++;
 }
}
void di()
{
 int a,b,c;
 a=rand()%100;
 b=rand()%100;
 printf("請回答:\n\t\t %d / %d = ",a,b);
 scanf("%d",&c);
 if(a/b==c)
 {
  printf("回答正確!\n");
  right++;
 }
 else
 {
  printf("回答錯誤!\n");
  wrong++;
 }
}
void main()
{
 int choise;
 int con=0;
 printf("\n\t\t\t歡迎進入小學簡易四則運算\n\n");
 while(1)
 {
  printf("請選擇:\n");
  printf("\t\t\t  加法運算(請輸入1)\n");
  printf("\t\t\t  減法運算(請輸入2)\n");
  printf("\t\t\t  乘法運算(請輸入3)\n");
  printf("\t\t\t  除法運算(請輸入4)\n");
  printf("\t\t\t  退出運算(請輸入5)\n");
  if(con==0)
   scanf("%d",&choise);
  switch(choise)
  {
  case 1:
   add();
   break;
  case 2:
   minu();
   break;
  case 3:
   mul();
   break;
  case 4:
   di();
   break;
  case 5:
   return;
  }
  printf("\n\t\t\t繼續運算?(請輸入1)\n");
  printf("\n\t\t\t重新選擇?(請輸入2)\n");
  printf("\n\t\t\t退出運算?(請輸入3)\n");
  scanf("%d",&con);
  if(con==1)
   con=1;
  else if(con==2)
   con=0;
  else if(con==3)
   break;
  else
   printf("抱歉!,你輸入的指令有誤!請重新輸入!\n");
 }
 printf("您總共完成了 %d 道題\n正確 %d 道\n錯誤 %d 道\n",right+wrong,right,wrong);
}

相關文章