當前位置:首頁 » 課程大全 » c語言九宮格拼圖課程設計報告

c語言九宮格拼圖課程設計報告

發布時間: 2021-02-28 11:47:12

Ⅰ C語言-拼圖游戲

確實是相當的困難啊。即使是拿flash做一個拼圖游戲都要寫好多代碼,好麻煩的,你這樣問,實在是有點為難了,你可以考慮在flash中用AS編程做。既直觀又好看。

Ⅱ 怎樣用C語言編寫一個拼圖游戲程序

要求用到指針 文件 結構體 二維數組等知識點,只能用C語言的知識,九宮格的風景照拼圖,游戲只做一關,Visual c++6.0可運行

Ⅲ 用c語言拼圖編程程序,或者演算法

你好,我寫了一個C++的,在VS上完美運行,希望能夠幫到你。

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<time.h>

/*定義全局變數*/
intpuzz[9]; //九格游戲數組
inti=0,j,k; //i初始化界面的提示語,j獲取空格位置,k移動次數
intspace; //空缺位置

/*自定義函數原型*/
voidinterface(); //界面,包括列印充填矩形和數字
voidchange(inta,intb); //交換
voidpress(); //按鍵
voidstart() ; //初始化和判斷是否勝利

voidstart() //初始化和判斷是否勝利
{
inta,b,c;
intstar[22]={300,120,320,160,360,160,320,200,340,240,300,200,260,240,280,200,240,160,280,160,300,120};

k=0;
for(a=0;a<8;a++)
puzz[a]=a+1;
puzz[8]=0;

interface();
for(c=0;c<100;c++) //隨機打亂順序
{
a=rand()%9;
b=(a+2)%8; //關於有無解問題,搞不清楚,引用的

change(a,b);
}

while(1)
{
interface();

for(a=0;a<8;a++)
if(puzz[a]!=a+1)
break;
if(a==8)
{
drawpoly(11,star); //五角星
setcolor(1); //文本「SUCCESSFUL」顏色
setfillstyle(1,4); //五角星填充色
floodfill(300,150,15); //五角星內一點
outtextxy(260,180,"SUCCESSFUL!!");
getch();
start();
}
for(j=0;j<=8;j++)
if(puzz[j]==0)
break;
space=j;

press();
}
}
voidinterface() //界面,包括列印充填矩形和數字
{

clearviewport(); //清楚屏幕圖形
setbkcolor(6); //設置背景色
setfillstyle(2,2); //矩形塊顏色

if(puzz[0]!=0)
bar(160,60,240,140);
if(puzz[1]!=0)
bar(260,60,340,140);
if(puzz[2]!=0)
bar(360,60,440,140);
if(puzz[3]!=0)
bar(160,160,240,240);
if(puzz[4]!=0)
bar(260,160,340,240);
if(puzz[5]!=0)
bar(360,160,440,240);
if(puzz[6]!=0)
bar(160,260,240,340);
if(puzz[7]!=0)
bar(260,260,340,340);
if(puzz[8]!=0)
bar(360,260,440,340);

gotoxy(25,7);
if(puzz[0]!=0)
printf("%d",puzz[0]);
gotoxy(38,7);
if(puzz[1]!=0)
printf("%d",puzz[1]);
gotoxy(50,7);
if(puzz[2]!=0)
printf("%d",puzz[2]);
gotoxy(25,13);
if(puzz[3]!=0)
printf("%d",puzz[3]);
gotoxy(38,13);
if(puzz[4]!=0)
printf("%d",puzz[4]);
gotoxy(50,13);
if(puzz[5]!=0)
printf("%d",puzz[5]);
gotoxy(25,19);
if(puzz[6]!=0)
printf("%d",puzz[6]);
gotoxy(38,19);
if(puzz[7]!=0)
printf("%d",puzz[7]);
gotoxy(50,19);
if(puzz[8]!=0)
printf("%d",puzz[8]);

if(i==0)
{
printf(" Pressanykeytodare");
getch();
}
gotoxy(60,4); //列印移動次數
printf("%dth",k);
i+=1;

return;
}
intmain()
{
intgdriver=VGA,gmode=VGAHI;
initgraph(&gdriver,&gmode,"c:\tc30\BGI");
srand((unsigned)time(NULL)); //播種子
clearviewport(); //清屏

printf(" ///////////////////////////// ");
printf(" ");
printf(" PUZZLEGAME ");
printf(" ");
printf(" ///////////////////////////// ");
printf(" Pressanykeytostartgame");
printf(" PressEsctoexit ");

if(getch()==27)
{
clrscr();
clearviewport();
printf(" ////////////////////////////////// ");
printf(" Seeyounexttime ");
printf(" ////////////////////////////////// ");
printf(" Pressanykeytoexit");
getch();
closegraph();
return0;
}

start();

return0;

}

Ⅳ C語言編程輸出九宮格

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
main()
{
#define n 3
int a[n][n]={0},i,sum=0,j;
i=0;j=n/2;
a[0][j]=++sum;
while(sum<n*n+1)
{i--;j++;
if(i<0&&j>=n)
{i=i+2;j--;}
else
{if(i<0)
i=n-1;
if(j>=n)
j=0;
}
if(a[i][j]==0)
a[i][j]=++sum;
else
{
i=i+2;
j--;
a[i][j]=++sum;
continue;}
}
for(i=0;i<n;i++)
{for(j=0;j<n;j++)
printf("%5d",a[i][j]);
printf("\n");}
getch();
}

Ⅳ 滑行九宮格拼圖的技巧和思路有哪些

復原抄的過程,其實就是襲做了逆時針的轉動。
而實際上,所有的2*2,都是通過也只能通過順/逆時針的轉動實現復原的。
你可能知道我想說什麼了,沒錯,如果把任意兩塊的位置顛倒,2*2是無法復原的。

Ⅵ C語言簡單實例—方塊拼圖。。源代碼~~~~~~

你是北工的么…………

Ⅶ 求教 如何用C語言製作 數字拼圖

以前寫過,找找看...

Ⅷ c語言編程九宮格相加15

|

//#include"stdafx.h"//Ifthevc++6.0,withthisline.
#include"stdio.h"
intmain(void){
charpp[3][3]={0},i,j,x;
for(i=2,x=j=1;x<10;x++,i++,j++){
if(i==3&&j<3)i-=3;
elseif(j==3&&i<3)j-=3;
elseif(i==3&&j==3||pp[i][j]!=0){
i-=2;
j-=1;
}
pp[i][j]=x;
}
for(i=0;i<3;i++){//應該有8種組合,這里只內輸出一種容
for(j=0;j<3;j++)
printf("%3d",pp[i][j]);
printf(" ");
}
return0;
}

Ⅸ c語言 九宮格

#include<stdio.h>
#include<malloc.h>
int N=15;
int main()
{
int i,j,k,m,n;
int G[N][N];
printf("Input the odd number(number<=15) you want !\n");
scanf("%d",&m);
if((m>0)&&(m%2))
{
printf("Your intput number is %d\n",m);
n=m*m;
j=0;
k=m/2;
for(i=1;i<=n;i++)
{
G[j][k]=i;
if(i%m==0)
if(j==m-1)
j=0;
else
j++;
else
{
if(j==0)
j=m-1;
else
j--;
if(k==m-1)
k=0;
else
k++;
}
}
for(i=0;i<m;i++)
{
for(j=0;j<m;j++)
printf("%6d",G[i][j]);
printf("\n");
}
}
else
printf("The number you inputed is ERROR!!!");
system("pause");
}
可以接受15以內的任意魔方 你的九宮格按照這個程序輸出是這樣的:

Ⅹ 誰能幫我寫一段c語言代碼,就是設計一個九宮格的

要是是rmb 100還有點興趣...100分,沒現成的要是誰幫你寫,他確實有點閑。

  1. 提問就不清楚,還得回咨詢一番,哪有這答精力。

  2. 寫兩個子函數,這是個什麼要求?是要兩個獨立的模塊么? 兩個函數的要求和 要求全寫main函數里一個級別,函數是會展開的啊。

  3. 界面和用戶的交互方式具體是怎麼樣的?你老師給你的上機實驗要求難道是這樣寫的?

  4. 關鍵要用指針實現。學生吧,不好好思考,出來作弊,你一個個問你老師,比別人給你答案強一萬倍

  5. 如果對編程沒興趣,你還學個鳥蛋,浪費時間,去干你想乾的事情吧 少年。

  6. 浪費我時間,獲得點樂趣 。

熱點內容
武漢大學學生會輔導員寄語 發布:2021-03-16 21:44:16 瀏覽:612
七年級學生作文輔導學案 發布:2021-03-16 21:42:09 瀏覽:1
不屑弟高考成績 發布:2021-03-16 21:40:59 瀏覽:754
大學畢業證會有成績單 發布:2021-03-16 21:40:07 瀏覽:756
2017信陽學院輔導員招聘名單 發布:2021-03-16 21:40:02 瀏覽:800
查詢重慶2018中考成績查詢 發布:2021-03-16 21:39:58 瀏覽:21
結業考試成績怎麼查詢 發布:2021-03-16 21:28:40 瀏覽:679
14中醫醫師資格筆試考試成績查分 發布:2021-03-16 21:28:39 瀏覽:655
名著賞析課程標准 發布:2021-03-16 21:27:57 瀏覽:881
北京大學商業領袖高端培訓課程 發布:2021-03-16 21:27:41 瀏覽:919