抽獎軟體編程
㈠ c語言程序設計——編寫一個抽獎程序,生成0-9之間的隨機數,猜對了獎勵10塊錢,沒中獎顯示中獎號碼
代碼如下,已測試通過:
intmain()
{
intno,ret;
printf("請輸入你猜測的號碼: ");
scanf("%d",&no);
ret=rand()%10;
printf("本次開獎結果=[%d]: ",ret);
if(no==ret)
{
printf("恭喜你猜中了,中獎10元! ");
}
else
{
printf("很遺憾,再來一次吧! ");
}
return0;
}
可以把上面代碼改成多次輸入,即將輸入和取隨機數都放在while循環中。自己修改下吧
㈡ 抽獎游戲-程序
http://www.25fly.com/
㈢ 抽獎系統怎麼做
抽獎系統怎麼做?
對於懂得編程技術的人來說,製作抽獎系統是挺簡單的,只需要找微信的官方開發工具就可以進行開發了。但若是對於不懂編程技術的人來說,則可以藉助智能開發工具進行開發,甚至可以進行可視化製作。
一、套用微信抽獎系統模板
做微信抽獎並沒有大家想像中那麼難做,首先我們可以選擇「抽獎活動」主題的活動模板,有大轉盤抽獎、搖一搖抽獎、九宮格抽獎等等,還有很多不同的節日主題,然後我們就可以選擇合適的模板套用就能創建微信抽獎系統。
二、修改微信抽獎系統模板內容
套用模板後進入到製作頁面,然後我們在頁面中根據不同的選項指示,對抽獎進行完善,而不同的選項可以讓不同需求的商家進行不同的設置,打造出個性化的抽獎系統。
三、快速發布微信抽獎系統
完成抽獎系統活動的製作,就可以通過分享二維碼的方式來發布活動,還能夠對活動進行數據監控。
㈣ c語言程序設計——抽獎程序
真不好玩,寫好還真不簡單~
中意的話,多加點分!測試過了~
/*
預先將參加抽獎者的資料輸入存儲起來,主要用結構體數組實現,用結構體表示每項記錄,包括身份證號碼、姓名、電話、住址等信息。開始抽獎時,屏幕上快速閃動參與者的身份證號碼,按任意鍵停止閃動,把中獎人的信息用顯示在屏幕上。可反復抽出一、二、三等獎若干名。
設計實現以下功能:
(1)錄入:完成抽獎者信息的輸入;
(2)刪除:完成抽獎者信息的刪除;
(3)修改:允許對已經錄入的數據重新進行編輯、修改;
(4)顯示:顯示所有中獎者的信息;
(5)抽獎:
a. 抽出一等獎 1 名,如果抽過就不能再抽;
b. 抽出二等獎 2 名,如果抽完就不能再抽;
c. 抽出三等獎 5 名,如果抽完就不能再抽;
(6)退出程序。*/
#include<stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <memory.h>
#include <string.h>
#include <time.h>
#define AWARDER_NUM 10
typedef struct tag_award
{
char ID[20];
char name[20];
char telNo[20];
char address[50];
}AWARDER;
AWARDER * awarder = new AWARDER[AWARDER_NUM];
int first_award[1] = {-1};
int second_award[2] = {-1,-1};
int third_award[5] ={-1,-1,-1,-1,-1};
int awarder_num = 0;
void info_login()
{
if(awarder_num >= AWARDER_NUM)
{
AWARDER * new_awarder = new AWARDER[awarder_num + AWARDER_NUM];
memcpy(new_awarder,awarder,awarder_num*sizeof(AWARDER));
delete awarder;
awarder = new_awarder;
}
printf("身份證號:");
scanf("%s",awarder[awarder_num].ID);
printf("姓名:");
scanf("%s",awarder[awarder_num].name);
printf("電話號碼:");
scanf("%s",awarder[awarder_num].telNo);
printf("家庭住址:");
scanf("%s",awarder[awarder_num].address);
awarder_num++;
}
void info_delete()
{
char name[20];
printf("輸入您要刪除的抽獎者的姓名:");
scanf("%s",name);
for(int i=0;i<awarder_num;i++)
{
if (strcmp(awarder[i].name,name) == 0)
{
printf("您選擇刪除的抽獎者的信息如下:\n");
printf("身份證號:%s\n",awarder[i].ID);
printf("姓名:%s\n",awarder[i].name);
printf("電話號碼:%s\n",awarder[i].telNo);
printf("家庭住址:%s\n",awarder[i].address);
break;
}
}
if(i == awarder_num)
{
printf("沒有找到您輸入的抽獎者!\n");
}
else
{
char c;
printf("您確定要刪除嗎?(Y//N)");
fflush(stdin);
scanf("%c",&c);
if(c == 'Y' || c == 'y')
{
AWARDER * new_award = new AWARDER[awarder_num-1];
if(i <= 0)
memcpy(new_award,awarder+1,sizeof(AWARDER) * (awarder_num - 1));
else if( i >= awarder_num -1)
memcpy(new_award,awarder,sizeof(AWARDER) * (awarder_num - 1));
else
{
memcpy(new_award,awarder,sizeof(AWARDER) * i);
memcpy(new_award+i,awarder+i+1,sizeof(AWARDER) * (awarder_num - i - 1));
}
awarder_num--;
delete awarder;
awarder = new_award;
}
}
}
void info_modify()
{
char name[20];
printf("輸入您要修改的抽獎者的姓名:");
scanf("%s",name);
for(int i=0;i<awarder_num;i++)
{
if (strcmp(awarder[i].name,name) == 0)
{
printf("您選擇的抽獎者的信息如下:\n");
printf("身份證號:%s\n",awarder[i].ID);
printf("姓名:%s\n",awarder[i].name);
printf("電話號碼:%s\n",awarder[i].telNo);
printf("家庭住址:%s\n",awarder[i].address);
break;
}
}
if(i == awarder_num)
{
printf("沒有找到您輸入的抽獎者!\n");
}
else
{
printf("請輸入該抽獎者的新信息:\n");
printf("身份證號:");
scanf("%s",awarder[i].ID);
printf("姓名:");
scanf("%s",awarder[i].name);
printf("電話號碼:");
scanf("%s",awarder[i].telNo);
printf("家庭住址:");
scanf("%s",awarder[i].address);
}
}
bool check_over(int cur_award,int awarderNo)
{
if(awarderNo == 1)
{
if(cur_award == first_award[0])
return true;
}
else if(awarderNo <= 3)
{
if(cur_award == first_award[0])
return true;
for(int i=0;i<awarderNo-1;i++)
if(cur_award == second_award[i])
return true;
}
else if(awarderNo <= 8)
{
if(cur_award == first_award[0])
return true;
for(int i=0;i<2;i++)
if(cur_award == second_award[i])
return true;
for(i=0;i<awarderNo-3;i++)
if(cur_award == third_award[i])
return true;
}
return false;
}
void award()
{
if(awarder_num < 8)
{
printf("人數太少,請添加足夠的人再抽獎!\n");
return;
}
srand((long)time(0));
char hit_id[20];
printf("\n開始抽第一等獎(1名),按任意鍵開始...\n");
getch();
while(!kbhit())
{
first_award[0] = rand() % awarder_num;
memcpy(hit_id,awarder[first_award[0]].ID,18);
printf("\r ");
printf("\r %s",hit_id);
}
printf("\n\n開始抽第二等獎(2名)");
for (int i=0;i<2;i++)
{
printf("\n第%d個二等獎,按任意鍵開始...\n",i+1);
getch();
while(!kbhit())
{
second_award[i] = rand() % awarder_num;
while(check_over(second_award[i],1+i))
second_award[i] = rand() % awarder_num;
memcpy(hit_id,awarder[second_award[i]].ID,18);
printf("\r ");
printf("\r %s",hit_id);
}
}
printf("\n\n開始抽第三等獎(5名)");
for (i=0;i<5;i++)
{
printf("\n第%d個三等獎,按任意鍵開始...\n",i+1);
getch();
while(!kbhit())
{
third_award[i] = rand() % awarder_num;
while(check_over(third_award[i],3+i))
third_award[i] = rand() % awarder_num;
memcpy(hit_id,awarder[third_award[i]].ID,20);
printf("\r ");
printf("\r %s",hit_id);
}
}
}
void info_show()
{
printf("一等獎獲得者:\n");
printf("\t身份證號:%s\n",awarder[first_award[0]].ID);
printf("\t姓名:%s\n",awarder[first_award[0]].name);
printf("\t電話號碼:%s\n",awarder[first_award[0]].telNo);
printf("\t家庭住址:%s\n",awarder[first_award[0]].address);
printf("二等獎獲得者:\n");
for (int i=0;i<2;i++)
{
printf("第%d個二等獎獲得者:\n");
printf("\t身份證號:%s\n",awarder[second_award[i]].ID);
printf("\t姓名:%s\n",awarder[second_award[i]].name);
printf("\t電話號碼:%s\n",awarder[second_award[i]].telNo);
printf("\t家庭住址:%s\n",awarder[second_award[i]].address);
}
printf("三等獎獲得者:\n");
for (int i=0;i<5;i++)
{
printf("第%d個三等獎獲得者:\n");
printf("\t身份證號:%s\n",awarder[third_award[i]].ID);
printf("\t姓名:%s\n",awarder[third_award[i]].name);
printf("\t電話號碼:%s\n",awarder[third_award[i]].telNo);
printf("\t家庭住址:%s\n",awarder[third_award[i]].address);
}
}
/*提示信息*/
bool raise()
{
printf("\n請輸入你需要的操作代號:\n");
printf("\t1.錄入:完成抽獎者信息的輸入;\n");
printf("\t2.刪除:完成抽獎者信息的刪除;\n");
printf("\t3.修改:允許對已經錄入的數據重新進行編輯、修改;\n");
printf("\t4.抽獎:開始抽獎!\n");
printf("\t5.顯示:顯示所有中獎者的信息;\n");
printf("\t6.退出。\n");
printf("==>");
int operate;
fflush(stdin);
scanf("%d",&operate);
switch(operate)
{
case 1:
info_login();
break;
case 2:
info_delete();
break;
case 3:
info_modify();
break;
case 4:
award();
break;
case 5:
info_show();
break;
case 6:
return false;
default:
break;
}
printf("\n操作完成。\n");
return true;
}
void main()
{
while(raise());
}
㈤ 請問用VC6.0如何編抽獎程序
你的懸賞分太低,沒人給你編程,想靠這個糊弄畢業設計嗎?
㈥ VBNET編寫抽獎軟體程序
把你的代碼發出來。
你這種方式的程序只能弄一等獎吧,為什麼會有二等獎三等獎?
獲獎次數跟電話號碼什麼關系,為什麼不能重復?同一個號碼不能多次獲獎?那就不是重復的問題,你的提問有些不清不楚。
暫定的解決方案——
把隨機生成的電話號碼,賦值給公共數組,如果公共數組中存在新生成的電話號碼,那麼重新生成電話號碼,如果電話號碼不在數組中存在,那麼將電話號碼加入到數組中。重復以上過程,直至喊停。
㈦ 如何設計一個可以電腦隨機抽獎程序
為了幫助網友解決「如何設計一個可以電腦隨機抽獎程序?」相關的問題,中國學網通過互聯網對「如何設計一個可以電腦隨機抽獎程序?」相關的解決方案進行了整理,用戶詳細問題包括:RT,我想知道:如何設計一個可以電腦隨機抽獎程序?,具體解決方案如下:
解決方案1:
如果你是對編程一竅不通,又想快速學會做小程序的話,建議學flash+as3。因為flash本來就是動畫軟體,有簡單易懂的界面繪制系統,不像java之類的語言需要用代碼來解決界面問題。相對來說,初學者要做小程序,學這個會比較速成。
以下我列舉一些你製作這個程序應該要用到的一些基本知識,你搞懂這些大概就可以做出這個程序了。不過,這樣速成的學習方法,也會有弊端,我會在下面補充說明。
首先你可以熟悉一下flash的界面。為編程做准備,至少要了解庫和屬性面板,要了解影片剪輯或按鈕。
然後應該學習一下編程的基本知識,比如變數(Variable)、數據類型(Datatype)、方法(Method)的概念,還有if、for等常見語句的用法。你可以把這些當關鍵詞在網路搜索一下(如果直接搜搜不到相關內容,可以多加一個關鍵詞,比如編程或as3之類的,如果中文搜不到就搜英文關鍵詞)。
要了解一下as3的常用語法。比如聲明變數、方法的語句。關於這個可以搜一下as3的var和function關鍵詞。
最後,當你對編程有了一個大致的概念之後,你就可以著手准備你的這個小程序。
你可能需要用到的關鍵方法:
addEventListener() //你最可能用到的事件是MouseEvent.CLICK
Math.random()
Math.round()或Math.floor()或Math.ceil() //這三個都是可以用來數字取整的方法,有細微的不同
addChild()
因為你是初學者,即使是做這么簡單的小程序,也有可能會遇到各種各樣的情況。建議你一開始不要想得太復雜,把基本的效果做出來再說,否則很有可能在一些非關鍵的問題上屢屢碰壁,最後半途而廢。而且有時因為自己想得太復雜,遇到問題連想問人都沒法問,因為表達不清楚。
如果只是抽獎的程序,學會了以上這些之後,要做出來應該沒有什麼大問題。如果你要搞什麼附加的模塊,那就另當別論了——比如用戶帳號、聯網、界面特效等等,我列舉的知識點不足以支持實現這些功能,那需要更多的學習。
那麼,最後說一下這種速成學習法的弊端。
很明顯的,速成=基礎不扎實,這簡直就是自然而然的邏輯關系。
有可能出現的結果是:學習花的時間少,但寫代碼的效率低,花的時間多;一旦出現錯誤,不知道該如何排錯;跟別人交流的時候,聽不懂各種術語;代碼不規范,別人不好幫你修改……等等。
要解決這些問題,只有一個途徑,就是系統、正規地學習編程。但是這樣一來,跟你這個問題的出發點就相差十萬八千里了。這就好比,本來你只是想自己做一艘船。但想做一艘正兒八經的船,而不是玩具船,不是破破爛爛的船,那就要費不少功夫。從它的材料開始,精心培育樹木、採集礦物、打制零件……如此涉及到整個制船業的知識。看起來,你並沒有打算走那麼深。
如果我僅僅告訴你速成的學習方法,感覺上有點兒像害人。因為對於學習編程來說,這不是一個好的開始。但如果我告訴你「乖乖從基礎開始學起吧」,似乎又有點兒強行替你做決定的感覺。
總而言之,現在我把兩個選項都告訴你了。
從基礎開始系統地學習,這樣比較正規,但也比較枯燥,可能你自學了半天也做不出什麼像樣的東西,然後最初的那股興趣就漸漸消失了。不過,如果是這樣,flash+as3的建議就不一定合適了,或許你要仔細考慮一下職業規劃什麼的,再決定發展的方向——這樣的話,就是比較嚴肅的話題了。
速成的學習法,如果你悟性好的話,能比較快地掌握一些重點的知識,對編程有一個大概的了解(但是悟性不好的話,說不定反而會搞得更煩躁),很快地做出一些小成果出來。不感興趣的話,那就這樣了。感興趣的話,再往後發展。基礎的缺乏、不良的書寫代碼習慣,這些也是可以後來再補充、糾正的。如果你不確定要往編程這條路上深入發展(比如打算以碼農為職業),倒也可以用這種方法玩票,能走多遠算多遠。
解決方案2:
網賽有很多模版。沒必要自己做
解決方案3:
不知道你會那些語言啊 做桌面的一般用C# Web的用J2EE 至於什麼編程軟體 ,,,,,建議還是自己補一補知識把,這個我不知道怎麼回答你 貌似你好象什麼都不知道
㈧ 如何在電腦上製作抽獎的東西
一般在電腦上安裝編程軟體,然後自行編寫抽獎的程序即可。
㈨ 想要一個簡單抽獎程序 0.1┊可以象電視上舉行的活動那樣進行抽獎的程序
1:抽獎軟體的Visual C++6.0實現
開發工具:Visual C++6.0
軟體功能:
要求用Visual C++6.0實現一個精美的抽獎程序。
具體功能如下:
(1):參加抽獎的人員存入ACCESS資料庫中。包括抽獎人的身份證號碼,姓名,性別,電話號碼,所在城市等信息。
(2):可以抽取一等獎,二等獎,三等獎和鼓勵獎若干名,各類獎項的數量可以預先在對話框里設定。
(3):操作員按任意鍵後開始抽獎,此時看到屏幕上有身份怔號碼(或電話號碼)在飛快的變動,若操作員再次按下任意鍵則顯示中獎人的姓名,所在城市和電話號碼。
(4):界面美觀,操作可靠。
2:編程提示:
可以採用ADO技術讀取ACCESS資料庫中的抽獎人員信息。在程序中定義一個結構體數組用於保存讀入的抽獎人信息。可以通過菜單中的「設置」選項來設定一等獎,二等獎,三等獎和鼓勵獎的人數。在菜單中有一個「開始抽獎」選項,選定後,屏幕進入全屏幕狀態,開始循環的,隨機的顯示抽獎人的號碼,這個號碼必須很大,以便觀看。若停止鍵按下後,立即用大字顯示中獎人的信息,然後繼續抽獎,直至全部抽完所有獎項。