




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
C語言程序設(shè)計(jì)連連看C語言程序設(shè)計(jì)連連看C語言程序設(shè)計(jì)連連看資料僅供參考文件編號(hào):2022年4月C語言程序設(shè)計(jì)連連看版本號(hào):A修改號(hào):1頁次:1.0審核:批準(zhǔn):發(fā)布日期:#include<>#include<>#include<>#include<>#include<iostream>usingnamespacestd;#include<ctime>intmai()//倒計(jì)時(shí){ for(inti=3;i>=0;i--) {longt=time(NULL); for(;;) { longn=time(NULL); if(n!=t) break;} system("cls"); cout<<""<<endl; cout<<""<<endl; cout<<"離史上最卡哇依的游戲開始還有**"<<i<<"**秒哦!!!"<<endl;}return0;}voidinit1();voidprint1();intexit1();voidinit2();voidprint2();intexit2();voidinit3();voidprint3();intexit3();voidnear1(inta,intb,inta1,intb1);charchessman[10][10];voidmain()//主函數(shù){time_tstart,end,time;start=clock(); mai(); intd; cout<<""<<endl; cout<<""<<endl; cout<<""<<endl; cout<<"****************************************************************"<<endl;cout<<"****************************************************************"<<endl;cout<<"**親,請(qǐng)選擇適合您智商的級(jí)別:[1]低級(jí)[2]中級(jí)[3]登峰造極**"<<endl; cout<<"****************************************************************"<<endl;cout<<"****************************************************************"<<endl; cout<<""<<endl; cout<<""<<endl; cout<<"研發(fā)小組:QYQ"<<endl;cout<<"請(qǐng)選擇:***-"; cin>>d; cout<<"-***"<<endl; system("pause"); switch(d) { case1:init1();break; case2:init2();break;case3:init3();break; default:cout<<"你個(gè)逗比"; } intop;introw,line;introw2,line2;do{if(d==1)print1(); elseif(d==2) print2(); elseif(d==3) print3();printf("options:\n");printf("\\n");printf("\\n");printf("\\n");scanf("%d",&op);if(op==1){printf("不造親第一個(gè)相中了誰呢:");scanf("%d%d",&line,&row);printf("再給他找個(gè)伴兒吧,親:");scanf("%d%d",&line2,&row2);if(chessman[line][row]!=chessman[line2][row2]){printf("有緣無分吶!\n"); system("pause");}elseif(line==line2&&row==row2){printf("有搞錯(cuò)哦,親!!!\n"); system("pause");}elseif(line<=line2){near1(line,row,line2,row2);}else{near1(line2,row2,line,row);}}if(op==2){}if(op==3){main();}}while(exit1(),exit2(),exit3());system("pause");printf("\n\n\n\t\t哇呀!你好厲害!\n");end=clock();time=end-start;//這里的時(shí)間是計(jì)算機(jī)內(nèi)部時(shí)間cout<<endl<<"time:"<<time<<endl; system("pause");cout<<"本次得分:98分!繼續(xù)保持哦!"<<endl;system("pause");}voidinit1()//4乘4矩陣{inti,j;inta[4]={0};srand(time(NULL));for(i=1;i<4;i++)for(j=1;j<5;j++){chessman[i][j]=rand()%4+65;if(chessman[i][j]==65)a[0]++;if(chessman[i][j]==66)a[1]++;if(chessman[i][j]==67)a[2]++;if(chessman[i][j]==68)a[3]++;}for(i=0;i<4;i++){if(a[i]%2!=0)chessman[4][i+1]=i+65;elsechessman[4][i+1]=69;} }voidprint1(){inti,j;system("cls");printf("\t1234\n");for(i=0;i<5;i++){printf("\t\n\t");for(j=0;j<5;j++){printf("%4c",chessman[i][j]);if(j==4&&i!=0&&i!=5) printf("\t%d",i); }}printf("\n\n\n\n"); }intexit1(){inti,j;for(i=0;i<6;i++){for(j=0;j<6;j++)if(chessman[i][j]!=0)return1;}return0;}voidinit2()//6乘6矩陣{inti,j;inta[6]={0};srand(time(NULL));for(i=1;i<6;i++)for(j=1;j<7;j++){chessman[i][j]=rand()%6+65;if(chessman[i][j]==65)a[0]++;if(chessman[i][j]==66)a[1]++;if(chessman[i][j]==67)a[2]++;if(chessman[i][j]==68)a[3]++;if(chessman[i][j]==69)a[4]++;if(chessman[i][j]==70)a[5]++;}for(i=0;i<6;i++){if(a[i]%2!=0)chessman[6][i+1]=i+65;elsechessman[6][i+1]=71;}}voidprint2(){inti,j;system("cls");printf("\t123456\n");for(i=0;i<8;i++){printf("\t\n\t");for(j=0;j<8;j++){printf("%4c",chessman[i][j]);if(j==6&&i!=0&&i!=7)printf("\t%d",i);}}printf("\n\n\n\n");}intexit2(){inti,j;for(i=0;i<8;i++){for(j=0;j<8;j++)if(chessman[i][j]!=0)return1;}return0;}voidinit3()//8乘8矩陣{inti,j;inta[8]={0};srand(time(NULL));for(i=1;i<8;i++)for(j=1;j<9;j++){chessman[i][j]=rand()%8+65;//棋盤內(nèi)容為A到Hif(chessman[i][j]==65)a[0]++;//記錄A的個(gè)數(shù)if(chessman[i][j]==66)a[1]++;if(chessman[i][j]==67)a[2]++;if(chessman[i][j]==68)a[3]++;if(chessman[i][j]==69)a[4]++;if(chessman[i][j]==70)a[5]++;if(chessman[i][j]==71)a[6]++;if(chessman[i][j]==72)a[7]++;}for(i=0;i<8;i++){if(a[i]%2!=0)chessman[8][i+1]=i+65;elsechessman[8][i+1]=73;}}voidprint3(){inti,j;system("cls");printf("\t12345678\n");for(i=0;i<10;i++){printf("\t\n\t");for(j=0;j<10;j++){printf("%4c",chessman[i][j]);if(j==9&&i!=0&&i!=9)printf("\t%d",i);}}printf("\n\n\n\n");}intexit3(){inti,j;for(i=0;i<10;i++){for(j=0;j<10;j++)if(chessman[i][j]!=0)return1;}return0;}voidnear1(inta,intb,inta1,intb1)//三種路徑{intarow[2];intaline[2];intbrow[2];intbline[2];intstart=0,end=0;//臨時(shí)兩個(gè)點(diǎn)inti,j,n;//用于循環(huán)for(i=0;i<2;i++)//初始化數(shù)組{arow[i]=a;brow[i]=a1;aline[i]=b;bline[i]=b1;}/////////////////////////////////////////(a,b)a列中有哪些列for(i=a+1;i<10;i++){if(chessman[i][b]==0)arow[1]=i;//arow【1】A點(diǎn)a行向下向量elsebreak;}for(i=a-1;i>=0;i--){if(chessman[i][b]==0)//arow【0】A點(diǎn)a行向上向量arow[0]=i;elsebreak;}////////////////////////////////////////////(a1,b1)a行中有哪些列for(i=a1+1;i<10;i++){if(chessman[i][b1]==0)//brow[1]B點(diǎn)a1行向下向量brow[1]=i;elsebreak;}for(i=a1-1;i>=0;i--){if(chessman[i][b1]==0)//brow[1]B點(diǎn)a1行向上向量brow[0]=i;elsebreak;}//////////////////////////////////////(a,b)b行有哪些列for(i=b+1;i<10;i++){if(chessman[a][i]==0)//aline[1]A點(diǎn)b列向右向量aline[1]=i;elsebreak;}for(i=b-1;i>=0;i--){if(chessman[a][i]==0)//aline[0]A點(diǎn)b列向左向量aline[0]=i;elsebreak;}/////////////////////////////(a1,b1)中b1列中有哪些行for(i=b1+1;i<10;i++){if(chessman[a1][i]==0)//bline[1]B點(diǎn)b1列向左向量bline[1]=i;elsebreak;}for(i=b1-1;i>=0;i--){if(chessman[a1][i]==0)//bline[1]B點(diǎn)b1列向右向量bline[0]=i;elsebreak;}///////////////////////////////////////關(guān)鍵算法////////////////////////////////////**********************情況一(a,b)(a1,b1)*********************************情況二()(a1,b1)***********************************/考慮上下向量if(brow[0]>=arow[0])//向上方向向量有共同的列向量start=brow[0];//取大的elsestart=arow[0];if(brow[1]<=arow[1])//向下的方向向量有共同的列向量end=brow[1];取小的elseend=arow[1];for(;start<=end;start++)//列向量上共同sart到end{//b1要大于b,否則就交換如果不交換將使下面的循環(huán)出錯(cuò)、//if(b<b1){j=b;//小的賦值到j(luò)i=b1;//大的賦值到i}else{j=b1;i=b;}///這里節(jié)約一個(gè)變量for(n=0;j<i;j++)//同一行上,從列j到i{if(chessman[start][j]==0)//同一行上,所有列都是0n++;elsebreak;}if((n==b-b1)&&(n>0))//因?yàn)閎和b1大小不能確定,所以有兩個(gè)ifchessman[a][b]=chessman[a1][b1]=0;if((n==b1-b)&&(n>0))chessman[a][b]=chessman[a1][b1]=0;}//考慮左右向量//if(aline[0]>=bline[0])//向左的向量有共同的列向量start=aline[0];//取大的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 勞動(dòng)合同范本有
- 醫(yī)院設(shè)計(jì)施工合同范例
- 賣買房產(chǎn)合同范本
- 廠家叉車轉(zhuǎn)讓合同范本
- 廠區(qū)勞動(dòng)合同范例
- 光譜美容知識(shí)培訓(xùn)課件
- 兩合伙合伙合同范本
- 個(gè)人開發(fā)住宅合同范本
- 合伙建倉庫合同范本
- 企業(yè)兼職工合同范本
- 建設(shè)項(xiàng)目非重大變動(dòng)及環(huán)??尚行哉撟C報(bào)告
- 國外綠地發(fā)展-形成38課件講解
- 2025年湘教版初中地理七年級(jí)下冊(cè)重點(diǎn)知識(shí)點(diǎn)梳理與歸納
- 【MOOC】現(xiàn)代老年醫(yī)學(xué)-浙江大學(xué) 中國大學(xué)慕課MOOC答案
- 小紅書品牌博主合作合同(2024年版)
- 腫瘤內(nèi)科學(xué)(中級(jí)341)專業(yè)實(shí)踐能力衛(wèi)生專業(yè)技術(shù)資格考試試題與參考答案
- 2023年貴州省公務(wù)員錄用考試《行測(cè)》真題及答案解析
- 家族族譜模板
- 柴油機(jī)維修施工方案
- 根管治療病例分享
- 數(shù)學(xué)課后訓(xùn)練:正態(tài)分布
評(píng)論
0/150
提交評(píng)論