純C語言版黃金點遊戲
最近花了一段時間自學TCP/IP網絡編程技術,掌握了基於TCP的C/S網絡通信模型,熟悉了服務器和客戶端軟件程序的設計流程,並且利用多線程和互斥鎖、條件變量等實現了並發機制。
項目介紹
開發環境:Visual Studio 2013
運行環境:Windows 7及以上版本
網絡模型:使用基於TCP的C/S網絡通信模型,實現黃金點遊戲框架。
語言技術:純C語言開發,支持多線程,采用互斥鎖和條件變量完成線程之間的同步和異步。
程序功能
服務器:用戶的連接和斷開都有相應的提示。一有新用戶連接,服務器自動創建新線程,用於遊戲數據的通信。具有菜單,可以隨時控制遊戲的進行以及關閉服務器。
客戶端:用戶需使用服務器的 IP 地址和端口號,連接服務器,進行遊戲。也具有菜單,可以隨時選擇數字、查看得分和退出遊戲。
缺陷:服務器只有一部分功能添加了互斥鎖和條件變量,因此當連接的客戶端較多的時候,存在運行隱患,且此程序受域的限制。
純C語言版黃金點遊戲的源代碼和發行版本下載鏈接:https://github.com/xucongandxuchong/Gold-Point
純C語言版黃金點遊戲
相關推薦
純C語言版黃金點遊戲
線程 進行 鏈接 條件 並發 window 自動創建 互斥 style 最近花了一段時間自學TCP/IP網絡編程技術,掌握了基於TCP的C/S網絡通信模型,熟悉了服務器和客戶端軟件程序的設計流程,並且利用多線程和互斥鎖、條件變量等實現了並發機制。 項目介紹 開發環境:Vis
純c語言版的打飛機遊戲出爐了^_^
我的郵箱:[email protected] 歡迎大家和我交流程式設計心得經過昨天的苦戰,終於完成了純C版的打飛機遊戲——使用微信打飛機遊戲的素材,不過玩法有些不同,下面會有詳述一、概述
連結串列排序——插入排序(純C語言版)
/* ========================== 功能:直接插入排序(由小到大) 返回:指向連結串列表 頭的指標 ========================== */ /* 直接插入排序的基本思想就是假設連結串列的前面n-1個節點是已經按鍵值 (就是
純C語言實現貪吃蛇遊戲(VC6.0)
轉自C語言網 今天筆者為大家展示C語言寫的貪吃蛇遊戲,讓大家玩一玩自己寫的遊戲~ 是純C語言哦~VC6.0開發 無問題 首先,開始介面: 遊戲介面如下: 程式碼如下: 筆者VC6.0下編寫,測試無問題,可複製程式碼直接到VC6原始檔下,字尾為.c檔案
C語言 黃金點遊戲
eof i++ 重復 size strcpy_s ++ == math 打印 今天用C語言把這個寫出來了,雖然c不是很熟,寫的還是蠻簡單,目前還想寫一個判斷輸入數字是否重復,重復就需要重新輸入,由於時間原因,還沒有寫。 代碼: #include<stdio.
使用純java 黃金點遊戲
pri art name 自己 rem 輸入 println 入參 cnblogs 最近自己使用純java寫的黃金點遊戲,寫的不是很好,希望各位度偶倒指點。本來想使用swing來做幾個按鈕的,但是對這個確實不是很懂,還是放棄了,采用了控制臺輸入的方式。主要是 使用has
C語言版——點亮LED燈,深入到棧
nand啟動 等於 halt 過程 畫出 示意圖 color 常見 defined 在上一篇進行了匯編語言的編寫之後,我們采用C語言來編寫程序,畢竟C語言才是我們使用最多的語言。 僅僅是點亮LED燈顯然太過於簡單,我們需要分析最後的反匯編,了解函數調用棧,深入C語言骨髓去分
純C語言貪吃蛇遊戲
說明 我在2018年5月8日重新更新了貪吃蛇的程式碼,現在它比以前更精簡,且未使用全域性變數 函式均使用功能命名,可以輕易明白函式功能 貪吃蛇通過連結串列實現 你可以前往我的github下載此程式碼,僅可在vs下編譯,呼叫GameE
一個好玩的小遊戲(純C語言編寫)
最近在看知乎是發現了一個這一個專欄 https://zhuanlan.zhihu.com/c2game 從中獲取的許多知識,本文中的遊戲也是從裡面學到的,不過本人又自己加了一些功能。 這是一個類似於飛機大戰的遊戲,不過目前程式碼量比較小,所以看起來非常簡陋
C語言版2048雙平臺遊戲
一、初衷 看到舍友玩這個遊戲,思考了下覺得這個遊戲可以用簡單的程式碼實現,用表格當做介面,用陣列儲存值,讀入玩家操作後重新整理介面顯示給玩家就可以了 二、遊戲特色 支援雙平臺(Windows和Linux) 可以顯示歷史最高分,可選擇重新開始或退出 可自行更改行
微信跳一跳(遊戲輔助小外掛C語言版)
相信微信跳一跳這個遊戲大家應該都或多或少聽過或者玩過,想必好多朋友看到自己好友們得高分自己卻分數老是玩不高! 之前在這個遊戲剛出來時候有人用Python寫出了一個小外掛,隨後網上各種各樣的外掛包括物理外掛層出不窮,今天就給大家分享一下如何自己用C語言寫一個小的跳一跳遊戲輔
深度學習神經網路純C語言基礎版【轉】
/* 深度學習神經網路V1.0 made by xyt 2015/7/23 使用語言:C 本程式構建多層矩陣形神經網路多輸入單輸出 學習策略:隨機梯度下降 啟用函式:sigmoid 使用前必須用srand((unsigned)time(NULL))取隨
C語言實現三子棋遊戲(意義版)
我還會再遇到ta。所以,這並不算是真正意義上得離別。雖然從近幾個月幾乎每天都跟ta走的頗近。每次得相遇都會讓我恍惚。我想躲著ta的一些,但是每次提起思緒卻總會跟ta不期而遇。遇時苦惱,別時著迷。昨日又與ta相遇,這一聚,就是六個多時辰。從正午窗外得鳴笛到回頭時到卷閘門刺耳的伸
geek青年的狀態機,查表,純C語言實現
fill south 總結 target 堅持 str 分享 接收 backward geek青年的狀態機,查表,純C語言實現 1. 問題的提出。抽象 建一,不止是他,不少人跟我討論過這種問題:怎樣才幹保證在需求變更、擴充的情況下。程序的主體部分不動呢? 這是一個
深入淺出數據結構C語言版(9)——多重表(廣義表)
不同 滿足 大學 logs 維數 我會 明顯 http 多維 在深入淺出數據結構系列前面的文章中,我們一直在討論的表其實是“線性表”,其形式如下: 由a1,a2,a3,……a(n-1)個元素組成的序列,其中每一個元素ai(0<i<n)都是一個“原子”,“
深入淺出數據結構C語言版(12)——從二分查找到二叉樹
額外 最終 匹配 應對 點數據 隨機數 普通 釋放 三種 在很多有關數據結構和算法的書籍或文章中,作者往往是介紹完了什麽是樹後就直入主題的談什麽是二叉樹balabala的。但我今天決定不按這個套路來。我個人覺得,一個東西或者說一種技術存在總該有一定的道理,不是能解決某個
深入淺出數據結構C語言版(14)——散列表
type unsigned size 表示 發現 blog 情況 減少 orb 我們知道,由於二叉樹的特性(完美情況下每次比較可以排除一半數據),對其進行查找算是比較快的了,時間復雜度為O(logN)。但是,是否存在支持時間復雜度為常數級別的查找的數據結構呢?答案是存在
深入淺出數據結構C語言版(15)——優先隊列(堆)
turn github png 操作 pri 整數 過程 不難 nbsp 在普通隊列中,元素出隊的順序是由元素入隊時間決定的,也就是誰先入隊,誰先出隊。但是有時候我們希望有這樣的一個隊列:誰先入隊不重要,重要的是誰的“優先級高”,優先級越高越先出隊。這樣的數據結構我們稱
深入淺出數據結構C語言版(19)——堆排序
-- 解決辦法 訪問 nsf 可能 bre 操作 數據塊 src 在介紹優先隊列的博文中,我們提到了數據結構二叉堆,並且說明了二叉堆的一個特殊用途——排序,同時給出了其時間復雜度O(N*logN)。這個時間界是目前我們看到最好的(使用Sedgewick序列的希爾排序時間
深入淺出數據結構C語言版(22)——排序決策樹與桶式排序
不改變 自然 只需要 都是 變種 限定 style buck oid 在(17)中我們對排序算法進行了簡單的分析,並得出了兩個結論: 1.只進行相鄰元素交換的排序算法時間復雜度為O(N2) 2.要想時間復雜度低於O(N2),算法必須進行遠距離的元素交換