偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

通過編寫一個簡單的游戲學習 C 語言

開發(fā) 后端
當你學習一門新的編程語言時,這個“猜數(shù)字”游戲是一個很好的入門程序。下面是如何用 C 語言來編寫它。

我在小學時就開始 自學編程 。我的第一個程序是在 Apple II 上編寫的,但最終,我還是通過看書和編程練習學會了 C 語言。練習編程的最佳方法是編寫示例程序,它能幫助你練習新知識。

[[375797]]

在我學習一種新的編程語言時,我喜歡編寫一個簡單的“猜數(shù)字”游戲來練習。電腦從 1 到 100 中隨機挑選一個數(shù)字,你必須通過猜測來算出來。在另一篇文章中,我展示了如何用 Bash 語言編寫這個 “猜數(shù)字”游戲 ,我的同事也寫了一些文章,介紹如何用 Java 、 Julia 和其他計算機語言編寫它。

“猜數(shù)字”游戲的偉大之處在于它踐行了幾個編程概念:如何使用變量、如何比較值、如何打印輸出以及如何讀取輸入。

整個夏天,我錄制了 一個系列視頻 ,教人們如何用 C 語言 編寫程序。從那以后,我聽到了很多人都在跟著它學習 C 語言編程的消息。所以,我想接著用 C 語言寫一個“猜數(shù)字”的游戲。

去取一個隨機數(shù)

從寫一個函數(shù)來選擇一個隨機數(shù)字來開始“猜數(shù)字”游戲。在編寫函數(shù)時,優(yōu)秀的程序員會盡量使它們具有靈活性,這樣他們就可以重用它們來解決略有不同的問題。因此,與其硬編碼函數(shù)來選擇 1 到 100 之間的一個隨機數(shù),不如編寫函數(shù)來選擇 1 到某個整數(shù) maxval 之間的一個隨機數(shù):

  1. #include <stdio.h> 
  2. #include <sys/random.h> 
  3. int 
  4. randnum(int maxval) 
  5.   /* pick a random number from 1 to maxval */ 
  6.   int randval; 
  7.   getrandom(&randval, sizeof(int), GRND_NONBLOCK); 
  8.   /* could be negative, so ensure it's positive */ 
  9.   if (randval < 0) { 
  10.     return (-1 * randval % maxval + 1); 
  11.   } 
  12.   else { 
  13.     return (randval % maxval + 1); 
  14.   } 

該函數(shù)使用 Linux 的系統(tǒng)調用 getrandom 來生成一系列隨機數(shù)。你可以在手冊頁中了解關于這個系統(tǒng)調用的更多信息,但請注意,getrandom 將用隨機的 0 和 1 填充變量。這意味著最終值可以是正的,也可以是負的,因此你需要在之后進行測試,以確保 randnum 函數(shù)的結果是正值。

編寫程序

你可以用這個函數(shù)來寫你的“猜數(shù)字”程序:

  1. #include <stdio.h> 
  2. #include <sys/random.h> 
  3.   
  4. int 
  5. randnum(int maxval) 
  6.   ... 
  7. int 
  8. main(void) 
  9.   int number; 
  10.   int guess; 
  11.   number = randnum(100); 
  12.   puts("Guess a number between 1 and 100"); 
  13.   do { 
  14.     scanf("%d", &guess); 
  15.     if (guess < number) { 
  16.       puts("Too low"); 
  17.     } 
  18.     else if (guess > number) { 
  19.       puts("Too high"); 
  20.     } 
  21.   } while (guess != number); 
  22.   puts("That's right!"); 
  23.   return 0; 

程序首先使用 randnum 函數(shù)從 1 到 100 之間選擇一個隨機數(shù)。在向用戶輸出一個提示后,程序進入一個 do-while 循環(huán),以便用戶可以猜測數(shù)字。

在循環(huán)的每次迭代中,程序測試用戶的猜測的數(shù)值。如果用戶的猜測小于隨機數(shù),程序將輸出“Too low”,如果猜測大于隨機數(shù),程序將輸出“Too high”。循環(huán)繼續(xù),直到用戶的猜測與隨機數(shù)相同。

當循環(huán)退出時,程序輸出 “That's right!”,然后立即結束:

  1. $ gcc -o guess -Wall guess.c 
  2. $ ./guess 
  3. Guess a number between 1 and 100 
  4. 50 
  5. Too high 
  6. 30 
  7. Too low 
  8. 40 
  9. Too low 
  10. 45 
  11. Too high 
  12. 42 
  13. Too low 
  14. 43 
  15. Too low 
  16. 44 
  17. That's right! 

嘗試動手

在學習一門新的編程語言時,這個“猜數(shù)字”游戲是一個很好的入門程序,因為它以一種非常直接的方式練習了幾個常見的編程概念。通過用不同的編程語言實現(xiàn)這個簡單的游戲,你可以演示一些核心概念,并比較每種語言的細節(jié)。

 

責任編輯:趙寧寧 來源: Linux中國
相關推薦

2021-01-03 16:30:34

Rust編程語言

2021-02-05 16:03:48

JavaScript游戲學習前端

2021-01-01 19:30:21

Python編程語言

2021-01-05 12:38:53

C++編程語言軟件開發(fā)

2021-04-13 06:35:13

Elixir語言編程語言軟件開發(fā)

2009-09-11 09:11:09

2017-11-23 08:30:26

編程Python擲骰子游戲

2020-11-30 13:16:29

Python編程語言

2023-01-13 18:55:09

游戲Ada編程語言

2020-12-28 06:29:31

Bash互動游戲Linux

2009-09-11 09:10:30

C#編寫游戲

2021-01-12 06:42:50

Lua腳本語言編程語言

2022-06-03 16:59:13

編程語言Awk

2021-12-30 11:26:31

語言編譯器腳本

2013-12-13 08:59:15

C++游戲

2019-09-23 09:11:02

Python文本編輯器操作系統(tǒng)

2015-03-24 19:48:24

2023-09-08 10:50:24

Tcl/TkWish

2009-08-25 01:46:00

C# WINDOWS服

2021-09-08 08:36:50

ncursesLinux猜謎游戲
點贊
收藏

51CTO技術棧公眾號