大一C語言第一次實驗:小學生教學系統

来源:http://www.cnblogs.com/xukaiae86/archive/2017/01/23/6344538.html
-Advertisement-
Play Games

高級語言程式設計報告 列印版報告截止上交日期:2014年11 月 15 日 電子版報告發至[email protected], 郵件標題寫明報告次數序號姓名 序號 34 姓名 許愷 照片 成績 E-MAIL及電話 18810556775 實習題目 第一次作業: 函數 任務六 一、 代碼及註釋 //編 ...


高級語言程式設計報告

 

列印版報告截止上交日期:201411 15

電子版報告發至2629610662@qq.com, 郵件標題寫明報告次數序號姓名

序號

34

姓名

許愷

照片

 

成績

 

E-MAIL及電話

18810556775

實習題目

第一次作業: 函數

  1. 七章實驗題之素數探求2-6
  2. 七章實驗題之小學生電腦輔助教學系統(用模塊化程式設計方法完成六章之任務6即可)
  3. 此2題單獨編程,即不在ACM系統中完成。
  4. 要求綜合運用本章所學內容(註釋、起名規則、縮進等)。

 

 

  1. 你的代碼、註釋及運行結果貼圖。
  2. 設計及調試過程遇到的問題及解決方案。
  3. 心得體會和自我對程式的評價。

任務六

一、 代碼及註釋

//編輯人:許愷

//編輯題目:小學生教學系統

//時間: 12月2日

 

#include <stdlib.h>

#include <stdio.h>

#include <time.h>

int Add(int a);

int jianfa(int a);

int chengfa(int a);

int chufa(int a);

double pingjia(int d);

double pingjia1(int d);

int main()

{

  int e,a,b,c,d,f,g=0;

  do

  {

    for(e=1;e<=10;e++)             //出十道題

    {

      srand(time(NULL));

      b=rand()%4+1;             //隨機加減乘除

      switch(b)

      {

        case 1:f=Add(a);

                 break;

        case 2:f=jianfa(a);

           break;

        case 3:f=chengfa(a);

           break;

        case 4:f=chufa(a);

           break;

        }

      if(f==1)   g=g+10;          //算總分和正確率

    }

    printf("%d %d%%\n",g,g);

      }while(g<=75);

  return 0;

  }

int Add(int a)     //加法運算塊

{

  int b,c,d;

  srand(time(NULL));

  b=rand()%10+1;

  c=rand()%10+1;

  d=b+c;

  printf("%d+%d=?\n",b,c);

  scanf("%d",&a);

     if(a==d)                       //判斷正誤並返回數值

    {

    pingjia(d);         

      return 1;                    

  }

  else

  {

    pingjia1(d);

    return 0;}

  }

int jianfa(int a)               //減法運算塊

{

int b,c,d;

do                           //防負數抽取

{

    srand(time(NULL));

b=rand()%10+1;

c=rand()%10+1;

}while(b<c);                   

d=b-c;     

printf("%d-%d=?\n",b,c);

scanf("%d",&a);

if(a==d)                              //判斷正誤並返回數值

{pingjia(d);

    return(1);}

else

{

pingjia1(d);

return 0;}

}

int chengfa(int a)

{

int b,c,d,e;

srand(time(NULL));

b=rand()%10+1;

c=rand()%10+1;

d=b*c;

printf("%d*%d=?\n",b,c);

scanf("%d",&a);

    if(a==d)                              //判斷正誤並返回數值

    {pingjia(d);

    return 1;

}

else

{

pingjia1(d);

return 0;}

}

int chufa(int a)

{

int b,c,d,e;

do                                //防除不盡抽取

{

srand(time(NULL));

b=rand()%10+1;

c=rand()%10+1;

    }while(b<c||b%c!=0);

d=b/c;

printf("%d/%d=?\n",b,c);

scanf("%d",&a);

    if(a==d)                             //判斷正誤並返回數值

    {pingjia(d);

    return 1;

}

else

{

pingjia1(d);

return 0;}

}

double pingjia(int d)                 //贊揚的評價系統

{

srand(time(NULL));

d=rand()%4+1;

switch(d)

{

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;

    }

}

double pingjia1(int d)                //做錯了的評價系統

{

srand(time(NULL));

d=rand()%4+1;

switch(d)

{

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;

    }

}

二、 運行結果貼圖

 

 

三、 設計及調試過程中遇到的問題及解決方案

    遇到了有關switch語句和隨機數不會使用的情況,主要是書看的少,經過看書之後已解決。另外,還犯了for語句沒有賦初值的錯誤,被波波老師糾正,也已改正。一開始在主函數中連續使用if使程式不美觀,看書後改用switch.還有函數命名方面實在噁心,由於本人英語水平有限,目前還未解決。

四、 心得體會和自我對程式的評價

        做事不要拖延,看起來很難,當走出第一步,就可以用複製粘貼去跑了,程式基本完整美觀最大缺憾就是交的時間太晚,其實說的是系統,也就那麼回事,以後幾百行的程式也不在話下,用心去編,都沒問題。但是對c的一些語句和技巧不太瞭解,需要更加努力,總的來說還行,已達到內心的標準。加油!!


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一.問題 隨著電腦革命的發展,“不安全”的編程方式已逐漸成為編程代價高昂的主因之一。 初始化和清理正是涉及安全的兩個問題。 二.java 解決方案 構造器:一種特殊的方法。java 中”初始化“和”創建“捆綁在一起,兩者不能分離。 垃圾回收器:釋放無用的對象。 三.方法重載 為什麼要在這裡講方法重 ...
  • String模塊包含大量實用常量和類,以及一些過時的遺留功能,並還可用作字元串操作。 1. 常用方法 常用方法描述 str.capitalize() 把字元串的首字母大寫 str.center(width) 將原字元串用空格填充成一個長度為width的字元串,原字元串內容居中 str.count(s ...
  • 1、表單提交,並將其提交到本頁 (1) form 屬性method為post方法,修改路由,使其接收post、get的請求 (2)LoginController.php 修改login方法,根據不同的請求返回不同的內容 如果請求方法為get ,返回登陸頁面;如果請求為post,就行驗證 刷新頁面,如 ...
  • 1、載入驗證碼類,並驗證 (1)下載定義好的code驗證碼類,放置到resources目錄下 (2) 添加路由 (3)添加方法 LoginController.php 註意: 不要忘記引入Code類,不加‘\’,會引入App\Http\Controllers\Admin\Code 驗證: 2、$_S ...
  • (1)項目下.env 是配置資料庫的文件 分別寫入資料庫伺服器地址、所連接的資料庫名、表首碼、用戶名、密碼 其中表首碼DB_PREFIX 欄位預設沒有,需要在config/database.php添加 (2)驗證是否成功 創建一個控制器 php artisan make:controller Ind ...
  • 1.時間模塊 1 import time 2 import datetime 3 4 #CPU真正運行的時間 5 #print(time.clock()) 6 7 #返回與utc時間的時間差,以秒計算 8 #print(time.altzone) 9 10 #返回時間格式"Mon Jan 23 14 ...
  • 項目發起於2015年9月,最初的需求微信公眾號預約上門洗車可線上支付和當面現金支付。之前他們都是用電話預約上門洗車。 微信預約:使用技術後臺spring+struts2+jdbc,前臺主要是jquerymobile+bootstrap。圖標使用的是阿裡的iconfont。 15年10月正式上線,後來 ...
  • 數組保存的是一組有順序的、具有相同類型的數據。 1、創建: 數組的聲明格式: int arrary[]; int [] array1, array2; //同時聲明多個數組。 上面的語句只是對數組進行了聲明,還沒有對其分配記憶體,不可存放、訪問。Java中數組可以看做是一種特殊的對象,可用new對數組 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...