c語言獎池,C語言計算獎金

本文目錄一覽:

c語言,如何做一個非常簡易的固定獎池抽獎系統。一共1個大獎,2個中獎,3個小獎,必定中獎。

#includestdio.h

#includestdlib.h

#includetime.h

#includeconio.h

int big=1,mid=2,sma=3;

void fin()

{

srand(time(NULL));

p:switch(rand()%3)

{

case 0:if(big0){system(“cls”);printf(“[大獎] 中獎 小獎\n ↑”);sleep(1000);big–;system(“cls”);printf(“大獎:%d 中獎:%d 小獎:%d\n 按任意鍵抽獎”,big,mid,sma);return;}

case 1:if(mid0){system(“cls”);printf(“大獎 [中獎] 小獎\n ↑”);sleep(1000);mid–;system(“cls”);printf(“大獎:%d 中獎:%d 小獎:%d\n 按任意鍵抽獎”,big,mid,sma);return;}

case 2:if(sma0){system(“cls”);printf(“大獎 中獎 [小獎]\n ↑”);sleep(1000);sma–;system(“cls”);printf(“大獎:%d 中獎:%d 小獎:%d\n 按任意鍵抽獎”,big,mid,sma);return;}

}

goto p;

}

main()

{

int num=0;

printf(“大獎:%d 中獎:%d 小獎:%d\n 按任意鍵抽獎”,big,mid,sma);

while(big||mid||sma)

{

if(_kbhit()){getch();fin();}

else if(num3) {num++;putchar(‘.’);sleep(200);}

else {system(“cls”);printf(“大獎:%d 中獎:%d 小獎:%d\n 按任意鍵抽獎”,big,mid,sma);num=0;}

}

system(“cls”); printf(“獎品已發完!\n”);

system(“PAUSE”);

return 0;

}

//如果編譯錯誤,把sleep改成Sleep,把_kbhit改成kbhit

編製一個c語言程序,構建一個抽獎程序,獎項設置三等,分別為一二三等,具體獎勵自己設置

產生一個1-100的隨機數,=5就是一等獎,6 =20就是二等獎,剩下的就是三等獎咯

用c語言編寫一個簡易的抽獎程序,

用data.txt文件保存以下內容:

13725528132 李桂榮

13725528131 李二來

13725528133 張榮剛

13725528130 榮南

13725528137 王三

13725528138 吳立

13725528139 郭德綱

13725528140 周星馳

13725528141 張曼玉

13725528142 張藝謀

13725528152 秦香蓮

13725528162 潘金蓮

13725528172 李大嘴

13725528182 展堂

//源代碼如下

#include stdio.h

#include stdlib.h

#include time.h

#define MAX_NUM 9999

//定義保存人名和電話的數據結構

struct Person

{

char name[20];

char telno[15];

char award;

};

int num = 0; //統計人數

FILE *fp; //文件指針

Person persons[MAX_NUM]; //定義數組

int awarder_1[1] = {-1}; //一等獎

int awarder_2[2] = {-1, -1}; //二等獎

int awarder_3[5] = {-1, -1, -1, -1, -1};//三等獎

//讀取文件

void readdata()

{

int i = 0; //數組下標

Person person;

//文件打開

fp = fopen(“data.txt”, “r”);

if (fp == NULL)

{

printf(“打開文件data.txt失敗!\n”);

return;

}

//當文件不為空

while (!feof(fp))

{

num ++;

fscanf(fp, “%s”, person.telno);

fscanf(fp, “%s”, person.name);

person.award = ‘F’;

persons[i++] = person;

}

}

//初始化標識

void init()

{

for(int i = 0; i num; i++)

{

persons[i].award = ‘F’;

}

}

//顯示單個中獎信息

void info( int i)

{

printf(“手機號碼: %s 姓名: %s\n”, persons[i].telno, persons[i].name);

}

void main()

{

char again = ‘Y’;

//讀取文件

readdata();

printf(“簡單抽獎程序\n”);

srand((long)time(0));

while(again == ‘Y’ || again == ‘y’)

{

//初始化標識

init();

printf(“\n開始抽第一等獎(1名),按任意鍵開始…\n”);

getchar();

awarder_1[0] = abs(rand() % num);

while (persons[awarder_1[0]].award == ‘T’)

{

awarder_1[0] = rand() % num;

}

persons[awarder_1[0]].award = ‘T’;

info(awarder_1[0]);

printf(“\n開始抽第二等獎(2名)\n”);

for (int i = 0; i 2; i++)

{

printf(“\n第%d個二等獎,按任意鍵開始…\n”, i+1);

getchar();

awarder_2[i] = rand() % num;

while (persons[awarder_2[i]].award == ‘T’)

{

awarder_2[i] = rand() % num;

}

persons[awarder_2[i]].award = ‘T’;

info(awarder_2[i]);

}

printf(“\n\n開始抽第三等獎(5名)\n”);

for (i = 0; i 5; i++)

{

printf(“\n第%d個三等獎,按任意鍵開始…\n”, i + 1);

getchar();

awarder_3[i] = rand() % num;

while (persons[awarder_3[i]].award == ‘T’)

{

awarder_3[i] = rand() % num;

}

persons[awarder_3[i]].award = ‘T’;

info(awarder_3[i]);

}

printf(“\n是否重新開始抽獎?(Y or N)…\n”);

again = getchar();

}

getchar();

return;

}

原創文章,作者:WAAM,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/133411.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
WAAM的頭像WAAM
上一篇 2024-10-03 23:58
下一篇 2024-10-03 23:58

相關推薦

  • AES加密解密算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演着非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • OpenJudge答案1.6的C語言實現

    本文將從多個方面詳細闡述OpenJudge答案1.6在C語言中的實現方法,幫助初學者更好地學習和理解。 一、需求概述 OpenJudge答案1.6的要求是,輸入兩個整數a和b,輸出…

    編程 2025-04-29
  • Python按位運算符和C語言

    本文將從多個方面詳細闡述Python按位運算符和C語言的相關內容,並給出相應的代碼示例。 一、概述 Python是一種動態的、面向對象的編程語言,其按位運算符是用於按位操作的運算符…

    編程 2025-04-29
  • Python語言由荷蘭人為中心的全能編程開發工程師

    Python語言是一種高級語言,很多編程開發工程師都喜歡使用Python語言進行開發。Python語言的創始人是荷蘭人Guido van Rossum,他在1989年聖誕節期間開始…

    編程 2025-04-28
  • Python語言設計基礎第2版PDF

    Python語言設計基礎第2版PDF是一本介紹Python編程語言的經典教材。本篇文章將從多個方面對該教材進行詳細的闡述和介紹。 一、基礎知識 本教材中介紹了Python編程語言的…

    編程 2025-04-28
  • Python語言實現人名最多數統計

    本文將從幾個方面詳細介紹Python語言實現人名最多數統計的方法和應用。 一、Python實現人名最多數統計的基礎 1、首先,我們需要了解Python語言的一些基礎知識,如列表、字…

    編程 2025-04-28
  • Python作為中心語言,在編程中取代C語言的優勢和挑戰

    Python一直以其簡單易懂的語法和高效的編碼環境而著名。然而,它最近的發展趨勢表明Python的使用範圍已經從腳本語言擴展到了從Web應用到機器學習等廣泛的開發領域。與此同時,C…

    編程 2025-04-28
  • Python基礎語言

    Python作為一種高級編程語言擁有簡潔優雅的語法。在本文中,我們將從多個方面探究Python基礎語言的特點以及使用技巧。 一、數據類型 Python基礎數據類型包括整數、浮點數、…

    編程 2025-04-28

發表回復

登錄後才能評論