最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語言實現小學生計算機輔助教學系統

 更新時間:2019年03月25日 09:36:29   作者:林世廣  
這篇文章主要為大家詳細介紹了C語言實現小學生計算機輔助教學系統,具有一定的參考價值,感興趣的小伙伴們可以參考一下

開發(fā)一個小學生計算機輔助教學系統。使用隨機書產生函數產生1~10之間的隨機數作為操作數,隨機產生一道四則運算題,配合使用switch語句和print()函數調用,來為學生輸入的正確或者錯誤的答案輸出不同的評價。若10道題做完之后正確率低于75%,則重新做10道題,直到回答正確率高于75%時才退出程序。要求用模塊化程序設計方法來編程。

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int Calculate(int x,char op,int y);/*聲明函數Calculate(),計算(x,y)的四則運算(由op定)*/
int CreateRandomNumber();   /*聲明函數CreateRandomNumber(),生成一個1-10的隨機整數*/
char CreateRandomOperator();  /*聲明函數CreateRandomOperator(),隨機生成一個運算符號(+、-、*、/)*/
void PrintRandomRightEvaluation(); /*聲明函數PrintRandomRightEvaluation(),生成一個題目做對的隨機提示*/
void PrintRandomWrongEvaluation(); /*聲明函數PrintRandomWrongEvaluation(),生成一個題目做錯的隨機提示*/
int main()
{
 int a,b,userAnswer,i,rightNumber=0,flag=0;
 /*a,b隨機整數,userAnswer是用戶答案,i是控制循環(huán)的變量,rightNumber是正確答案數,flag成績標志,當成績<75分,其值為1*/
 char opChar;         /*opChar是運算符*/
 srand(time(NULL));       /*time(NULL)的返回值作為產生隨機數的種子*/
 do{
  for(i=0;i<10;i++)      /*循環(huán)10次,做10道題*/
  {
   a=CreateRandomNumber();    /*產生一個隨機數賦值給整型變量a*/
   b=CreateRandomNumber();    /*產生一個隨機數賦值給整型變量b*/
   opChar=CreateRandomOperator();  /*產生一個隨機運算符賦值給字符變量opChar*/
   printf("%d%c%d=?\n",a,opChar,b);  /*輸出一個四則運算表達式=?*/
   scanf("%d",&userAnswer);    /*用戶輸入答案*/
   if(userAnswer==Calculate(a,opChar,b))/*如果答案正確*/
   {
    PrintRandomRightEvaluation(); /*輸出一個題目做對的隨機提示*/
    rightNumber++;     /*回答正確題數加1*/
   }
   else         /*如果回答不正確*/
   {
    PrintRandomWrongEvaluation(); /*輸出一個題目做錯的隨機提示*/
   }
  }
  printf("Total score is %d\n",rightNumber*10); 
  printf("Rate of correctness is %d%%\n",rightNumber*10);
  if(rightNumber*10<75)     /*如果成績低于75分*/
  {
   printf("Once Again!\n");
   rightNumber=0;      /*正確答案數清零*/
   flag=1;
  }
 }while(flag);
 return 0;
}
/*函數功能:計算兩個數(x,y)的四則運算(運算符由op確定?),返回計算結果值*/
int Calculate(int x,char op,int y)
{
 switch(op)
 {
 case '+': return x+y;
 case '-': return x-y;
 case '*': return x*y;
 case '/': return x/y;
 default:printf("Operator error!\n");return 0;
 }
}
/*函數功能:生成一個1-10的隨機整數*/
int CreateRandomNumber()
{
 return rand()%10+1;
}
/*函數功能:隨機生成一個運算符號(+,-,*,/)*/
char CreateRandomOperator()
{
 int op;
 op=rand()%4+1;
 switch(op)
 {
 case 1:return '+';
 case 2:return '-';
 case 3:return '*';
 case 4:return '/';
 }
 return 0;
}
/*函數功能:生成一個題目做對的隨機提示*/
void PrintRandomRightEvaluation()
{
 int i;
 i=rand()%4+1;
 switch(i)
 {
  case 1:printf("Very good!\n");
    break;
  case 2:printf("Excellent!\n");
    break;
  case 3:printf("Nice work!\n");
    break;
  case 4:printf("Keep up the good work!\n");
    break;
  default:printf("Wrong type!");
 }
}
/*函數功能:生成一個題目做錯的隨機提示*/
void PrintRandomWrongEvaluation()
{
 int i;
 i=rand()%4+1;
 switch(i)
 {
  case 1:printf("No.Please try again.\n");
    break;
  case 2:printf("Wrong.Try once more.\n");
    break;
  case 3:printf("Don't give up!\n");
    break;
  case 4:printf("Not correct.Keep trying.\n");
    break;
  default:printf("Wrong type!");
 }
}

效果圖:

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 解析OpenSSL1.1.1?centos7安裝編譯aes的c++調用

    解析OpenSSL1.1.1?centos7安裝編譯aes的c++調用

    這篇文章主要介紹了OpenSSL1.1.1?centos7安裝編譯aes的c++調用,實現方法也很簡單,主要是在該文檔內加入openssl的lib路徑,感興趣的朋友跟隨小編一起看看吧
    2022-03-03
  • C++ 內存分配處理函數set_new_handler的使用

    C++ 內存分配處理函數set_new_handler的使用

    這篇文章主要介紹了C++ 內存分配處理函數set_new_handler的使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-02-02
  • C語言實現簡單職工信息管理系統

    C語言實現簡單職工信息管理系統

    這篇文章主要為大家詳細介紹了C語言實現簡單職工信息管理系統,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07
  • C++ Boost PointerContainer智能指針詳解

    C++ Boost PointerContainer智能指針詳解

    智能指針是一種像指針的C++對象,但它能夠在對象不使用的時候自己銷毀掉。雖然STL提供了auto_ptr,但是由于不能同容器一起使用(不支持拷貝和賦值操作),因此很少有人使用。它是Boost各組件中,應用最為廣泛的一個
    2022-11-11
  • C++11獲取線程返回值的實現代碼

    C++11獲取線程返回值的實現代碼

    這篇文章主要介紹了C++11獲取線程返回值的實現代碼,需要的朋友可以參考下
    2019-04-04
  • Qt實現蘋果狀態(tài)切換按鈕

    Qt實現蘋果狀態(tài)切換按鈕

    這篇文章主要為大家詳細介紹了Qt實現蘋果狀態(tài)切換按鈕,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-08-08
  • .h和.cpp文件的區(qū)別(zt)詳細介紹

    .h和.cpp文件的區(qū)別(zt)詳細介紹

    特別是對源文件和頭文件的概念,需要深入對它了解,本文將詳細介紹,需要了解的朋友可以參考下
    2012-11-11
  • 基于C++中覆蓋,重載,隱藏的一點重要說明

    基于C++中覆蓋,重載,隱藏的一點重要說明

    下面小編就為大家?guī)硪黄贑++中覆蓋,重載,隱藏的一點重要說明。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-12-12
  • C語言詳解實現猜數字游戲步驟

    C語言詳解實現猜數字游戲步驟

    猜數字是興起于英國的益智類小游戲,起源于20世紀中期,一般由兩個人或多人玩,也可以由一個人和電腦玩。游戲規(guī)則為一方出數字,一方猜,今天我們來實現這個游戲案例
    2022-07-07
  • 基于Opencv實現雙目攝像頭拍照程序

    基于Opencv實現雙目攝像頭拍照程序

    這篇文章主要為大家詳細介紹了基于Opencv實現雙目攝像頭拍照程序,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-04-04

最新評論

巴彦淖尔市| 祥云县| 余江县| 化德县| 湄潭县| 改则县| 石屏县| 汝州市| 竹溪县| 三台县| 微山县| 安达市| 正镶白旗| 盘山县| 洛隆县| 商水县| 太和县| 玉田县| 全南县| 佛学| 海丰县| 山东省| 安西县| 张家界市| 乌鲁木齐县| 米脂县| 宜章县| 曲阳县| 香河县| 广南县| 昆明市| 台南市| 香格里拉县| 乌鲁木齐县| 山丹县| 磐安县| 松阳县| 中卫市| 讷河市| 延安市| 栖霞市|