chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何用C語言實現(xiàn)打字練習(xí)系統(tǒng)

C語言編程學(xué)習(xí)基地 ? 來源:C語言編程學(xué)習(xí)基地 ? 作者:C語言編程學(xué)習(xí)基地 ? 2021-11-17 17:48 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

這篇文章主要為大家詳細介紹了C語言實現(xiàn)——《打字練習(xí)系統(tǒng)》,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下!

90ccb3ac-44ec-11ec-b939-dac502259ad0.png

游戲介紹:

字母游戲》是一款敏捷打字小游戲,游戲大小為468K。背景設(shè)定 《字母游戲》是一款有趣的打字游戲,可以提高你的打字速度。操作指南 根據(jù)出現(xiàn)的字母,按鍵盤A-Z鍵對應(yīng)的按鍵即可。游戲加載完畢點擊[開始游戲]即可開始游戲。在限定時間內(nèi),盡可能地輸入正確的字母,挑戰(zhàn)高分!

本項目針對C語言學(xué)習(xí)者,將我們打字母的“字母”置換成了C語言關(guān)鍵字,記在一定時間內(nèi)及時輸出C語言關(guān)鍵字就可以得分!我們一起來看看吧!

本項目編譯環(huán)境:VS2019/VS2013;

插件:圖形庫插件easyX,涉及圖片素材可以自行百度找也可以關(guān)注文末領(lǐng)??;

效果圖展示

配套講解教程:程序員打字練習(xí)系統(tǒng)教程——嗶哩嗶哩

源代碼示例:

#define _CRT_SECURE_NO_WARNINGS#include     #include #include #include #include   //報錯,請先安裝#include #pragma comment(lib,"winmm.lib")//數(shù)據(jù)設(shè)計設(shè)計//窗口屬性:const int WIDTH = 640;const int HEIGHT = 500;//游戲正確率和錯誤率int right = 0;int error = 0;//下墜文字的結(jié)構(gòu)體struct TARGET{  //每一個字符串的x,y坐標  int x;  int y;  char *str;  //保存字符串};//用戶輸入的值struct USRKEY{  int x;  int y;  char str[20];}userkey = {320,500-30,""};
//在指定位置輸出整數(shù)void outtextxy_int(int x, int y, char *format, int num){  char str[20] = "";  //printf;  sprintf(str, format, num);  outtextxy(x, y, str);}//在指定位置輸出浮點數(shù)void outtextxy_double(int x, int y, char *format, double num){  char str[20] = "";  sprintf(str, format, num);  outtextxy(x, y, str);}
void divWindow(){  line(WIDTH - 100, 0, WIDTH - 100, HEIGHT - 40);  line(0, HEIGHT - 40, WIDTH + 50, HEIGHT - 40);  line(WIDTH - 100, 130, WIDTH + 50, 130);}
void initTarget(struct TARGET words[], int n){  static char str[29][10] = { "main", "include", "void", "while", "for",    "true", "false", "break", "int", "char", "float", "double", "switch", "case",    "static", "if", "else", "short", "unsigned", "signed", "sizeof", "continue", "struct", "union", "enum",  "register","default","long","return"};  //0-28  //隨機產(chǎn)生  words[n].str = str[rand() % 29];  //0 1 2   //判斷重復(fù),如果重復(fù),就重新生成  while (words[n].str == words[(n + 1) % 3].str || words[n].str == words[(n + 2) % 3].str)  {    words[n].str = str[rand() % 29];  }  words[n].x = rand() % (WIDTH-200);  words[n].y = -20;}void drawScore(){  settextcolor(LIGHTBLUE);  settextstyle(25, 0, "字魂24號-鎮(zhèn)魂手書"); 
  //軟件信息輸出  outtextxy(WIDTH - 90, 25, "頓開教育");  outtextxy(WIDTH - 90, 25+25, "程序員專屬");  outtextxy(WIDTH - 90, 25 +25+25, "打字游戲");
  //游戲狀態(tài)欄輸出  outtextxy(WIDTH - 90, 225, "正確數(shù)");   outtextxy_int(WIDTH - 90, 225 + 25,"%d", right);
  outtextxy(WIDTH - 90, 285, "錯誤數(shù)");  outtextxy_int(WIDTH - 90, 285 + 25, "%d", error);
  outtextxy(WIDTH - 90, 285+285-225, "正確率");  //分類討論  if (right + error == 0)  {    outtextxy_double(WIDTH - 90, 285 + 285 - 225 + 25, "%.2lf%%", 0.00);  }  else  {    //C語言 除法會取整    double sum = right + error;    outtextxy_double(WIDTH - 90, 285 + 285 - 225 + 25, "%.2lf%%", right / sum * 100);  }
}int main(){  srand((unsigned int)time(NULL));  mciSendString("open 1.mp3 alias music", 0, 0, 0);  initgraph(WIDTH+50, HEIGHT);  struct TARGET words[3];  //隨機產(chǎn)生掉落的字符串  for (int n = 0; n < 3; n++)  {    initTarget(words, n);    words[n].y = -15 - n * 30; //形成不登高  }  BeginBatchDraw();  int i = 0;  while (1)  {    cleardevice();    divWindow();    //碰線處理    for (int n = 0; n < 3; n++)    {      words[n].y += 2;      if (words[n].y>(HEIGHT - 40 - textheight(words[n].str)))      {        initTarget(words, n);      }    }    //打印文字    for (int n = 0; n < 3; n++)    {      settextcolor(RED);       outtextxy(words[n].x, words[n].y, words[n].str);
    }    if (_kbhit())  //kbhit 檢測鍵盤,有按鍵返回非零    {      //字符串變?yōu)樽址幚?/span>      char target;    //接受用戶的值      if ((target = _getch()) != '
')      {        userkey.str[i++] = target;      }      else      {
        int flagError = 0;        //干掉輸入正確的字符        for (i = 0; i < 3; i++)        {          if (strcmp(userkey.str, words[i].str) == 0)          {            initTarget(words, i);            right++;            flagError = 1;            mciSendString("play music", 0, 0, 0);           }        }        if (flagError == 0)        {          error++;        }        //習(xí)慣很重要:邊寫邊測試        i = 0;        userkey.x = 320;        memset(userkey.str, 0, 20);      }      }    outtextxy(userkey.x, userkey.y, userkey.str);    drawScore();    FlushBatchDraw();    Sleep(100);  }  getchar();  closegraph();  return 0;}

寫在最后:對于準備學(xué)習(xí)C/C++編程的小伙伴,如果你想更好的提升你的編程核心能力(內(nèi)功)不妨從現(xiàn)在開始!

責(zé)任編輯:haq


聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • C語言
    +關(guān)注

    關(guān)注

    183

    文章

    7642

    瀏覽量

    144619
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4941

    瀏覽量

    73151

原文標題:C語言項目實戰(zhàn):《打字母游戲》零基礎(chǔ)項目!183 行源代碼示例

文章出處:【微信號:cyuyanxuexi,微信公眾號:C語言編程學(xué)習(xí)基地】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關(guān)推薦
    熱點推薦

    為什么單片機還在用C語言編程?

    的缺陷 高級語言存在的目的是可以實現(xiàn)更為優(yōu)化的算法,更多的是為了方便的執(zhí)行方案,但是,高級語言對程序存儲空間的占用要比匯編和C語言多很多。
    發(fā)表于 11-28 07:37

    C語言的編程技巧

    一個成員是一個未知大小的數(shù)組,適用于動態(tài)分配內(nèi)存并關(guān)聯(lián)一個可變長度的數(shù)組。? ?3、匿名結(jié)構(gòu)體和聯(lián)合體?:C語言允許在結(jié)構(gòu)體或聯(lián)合體中定義不帶標簽的內(nèi)部結(jié)構(gòu)體或聯(lián)合體,簡化代碼結(jié)構(gòu)。 ?4
    發(fā)表于 11-27 06:46

    請問如何用C語言列舉當(dāng)前所有網(wǎng)口?

    何用C語言列舉當(dāng)前所有網(wǎng)口?
    發(fā)表于 11-25 07:23

    C語言特性

    數(shù)據(jù),實現(xiàn)對設(shè)備的精準控制,同時降低功耗,延長設(shè)備的使用壽命。 2、可移植性:跨平臺的通行證 C 語言具有良好的可移植性,這意味著用 C 語言
    發(fā)表于 11-24 07:01

    C語言在嵌入式開發(fā)中的應(yīng)用

    穩(wěn)定性控制系統(tǒng)(VSC)等關(guān)鍵部件的開發(fā),C 語言都發(fā)揮著至關(guān)重要的作用。 以工業(yè)自動化生產(chǎn)線中的運動控制系統(tǒng)為例,C
    發(fā)表于 11-21 08:09

    C語言和單片機C語言有什么差異

    單片機c語言相對于普通C語言增加了一些基本的指令,還有變量的賦值是16進制,當(dāng)然單片機c語言只牽
    發(fā)表于 11-14 07:55

    單片機C語言實例(350+例)

    350+單片機C語言實例! 純分享帖,需要者可點擊附件免費獲取完整資料~~~【免責(zé)聲明】本文系網(wǎng)絡(luò)轉(zhuǎn)載,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問題,請第一時間告知,刪除內(nèi)容!
    發(fā)表于 05-22 21:47

    深入理解C語言C語言循環(huán)控制

    C語言編程中,循環(huán)結(jié)構(gòu)是至關(guān)重要的,它可以讓程序重復(fù)執(zhí)行特定的代碼塊,從而提高編程效率。然而,為了避免程序進入無限循環(huán),C語言提供了多種循環(huán)控制語句,如break、continue和
    的頭像 發(fā)表于 04-29 18:49 ?1736次閱讀
    深入理解<b class='flag-5'>C</b><b class='flag-5'>語言</b>:<b class='flag-5'>C</b><b class='flag-5'>語言</b>循環(huán)控制

    C語言的歷史及程序介紹

    電子發(fā)燒友網(wǎng)站提供《C語言的歷史及程序介紹.pdf》資料免費下載
    發(fā)表于 04-09 16:10 ?0次下載

    單片機C語言編程寶典大全,初學(xué)必備【強推下載!】

    資料介紹:包含 1. 51單片機入門教程 2. 初學(xué)者適用:單片機C語言實例100例(代碼及釋義) 3. 51單片機C語言快速上手 4. 51單片機
    發(fā)表于 03-14 11:03

    限時免積分下載:增量式與位置式PID算法的C語言實現(xiàn)分享

    前面咱們有分享對PID算法離散化和增量式PID算法原理進行來探索,之后又使用Matlab進行了仿真實驗,對PID三個參數(shù)又有了更深入的認識,接下來我們來使用C語言進行PID算法實現(xiàn),并且結(jié)合控制電機的項目來深入學(xué)習(xí)。 今天限時免
    發(fā)表于 03-05 18:32

    PID控制算法的C語言實現(xiàn):PID算法原理

    在工業(yè)應(yīng)用中 PID 及其衍生算法是應(yīng)用最廣泛的算法之一,是當(dāng)之無愧的萬能算法,如果能夠熟練掌握 PID 算法的設(shè)計與實現(xiàn)過程,對于一般的研發(fā)人員來講,應(yīng)該是足夠應(yīng)對一般研發(fā)問題了,而難能可貴
    發(fā)表于 02-26 15:24

    EE-188:使用C語言在ADSP-219x DSP上實現(xiàn)中斷驅(qū)動系統(tǒng)

    電子發(fā)燒友網(wǎng)站提供《EE-188:使用C語言在ADSP-219x DSP上實現(xiàn)中斷驅(qū)動系統(tǒng).pdf》資料免費下載
    發(fā)表于 01-15 16:06 ?0次下載
    EE-188:使用<b class='flag-5'>C</b><b class='flag-5'>語言</b>在ADSP-219x DSP上<b class='flag-5'>實現(xiàn)</b>中斷驅(qū)動<b class='flag-5'>系統(tǒng)</b>

    EE-192:使用C語言在Blackfin處理器上創(chuàng)建中斷驅(qū)動系統(tǒng)

    電子發(fā)燒友網(wǎng)站提供《EE-192:使用C語言在Blackfin處理器上創(chuàng)建中斷驅(qū)動系統(tǒng).pdf》資料免費下載
    發(fā)表于 01-03 15:03 ?0次下載
    EE-192:使用<b class='flag-5'>C</b><b class='flag-5'>語言</b>在Blackfin處理器上創(chuàng)建中斷驅(qū)動<b class='flag-5'>系統(tǒng)</b>

    基于FPGA實現(xiàn)圖像直方圖設(shè)計

    直方圖統(tǒng)計的原理 直方圖統(tǒng)計從數(shù)學(xué)上來說,是對圖像中的像素點進行統(tǒng)計。圖像直方圖統(tǒng)計常用于統(tǒng)計灰度圖像,表示圖像中各個灰度級出現(xiàn)的次數(shù)或者概率。統(tǒng)計直方圖的實現(xiàn)采用C/C++或者其他高級語言實
    的頭像 發(fā)表于 12-24 10:24 ?1205次閱讀
    基于FPGA<b class='flag-5'>實現(xiàn)</b>圖像直方圖設(shè)計