拼圖c語言
❶ 同求funcode平台下拼圖游戲的c語言代碼
//第一題:#includevoidfun(char*a[],char*b[]){intl;/*獲取較短數組的長度*/if(strlen(*a)usingnamespacestd;classCircle{public:voidinput(double);//輸入voidprint();//輸出doublegetArea();//計算半徑private:doubler;//半徑};voidCircle::input(doublea){r=a;}doubleCircle::getArea(){returnr*r*3.14159;}voidCircle::print(){cout>a;c.input(a);c.print();return0;}
❷ c語言 輸出3位小數
255
巧用FLASH做拼圖游戲
8、點擊 插入>新建元件(快捷鍵Ctrl+F8),新建一個名為「button」的按鈕,點擊確定即可打開一個按鈕製作窗口,用橢圓工具在場景中心畫一個圓並去除圓形的邊線(用箭頭工具在邊線上點一下,點擊 編輯>清除 菜單即可),然後再用箭頭工具選取圓形,用 插入> 轉換成元件 命令將圓形轉換成圖形元件(這樣做是為了方便後面使用透明效果)。用滑鼠右鍵單擊反應區,在彈出的菜單里選擇插入關鍵禎,返回主場景,可以看到庫面板里多了一個名為「button」的按鈕元件。
9、在主場景里雙擊元件可以打開元件編輯窗口或者是在庫面板里用滑鼠右鍵單擊元件點擊彈出菜單里的編輯命令。我們現在選擇一個除「head」之外的影片剪輯元件,進入元件編輯窗口,在這里我們以「黑貓警長」的「拳頭」為例,元件名為「hand」,在主場景里影片剪輯也命名為「hand」。在元件編輯窗口,將剛才做好的按鈕從庫面板中拖入到「拳頭」上,調整位置到「拳頭」的中心並調整大小比「拳頭」略小,如圖7。
10、選中「拳頭」上的按鈕打開行為面板(快捷鍵Ctrl+Alt+A或點擊軟體窗口右下角的圖標),點擊行為面板上的」+「號,在彈出的菜單選擇 動作>startDrag,加入startDrag命令(「startDrag」是一個拖拽命令,它可以對影片剪輯實行拖拽控制,所以我們在前面必須把所有的元件轉換成影片剪輯。而加入按鈕是為了實現滑鼠單擊後可以拖動拼圖,松開滑鼠則拼圖停止移動)。在動作面板右邊對話框里我們選擇「on(release)」,在下方的事件選擇對話框選擇「點擊」;再選擇「startDrag("")」,在下方的目標對話框中單擊一下,然後單擊底部的 圖標,將會彈出一個包含所有在主場景里的影片元件的對話框,選擇「拳頭」在主場景里 的名字「hand」按「確認」回到動作面板,在動作電話框下方的「鎖定滑鼠到中央」前打上勾。接著在「startDrag」的下方加入「stopDrag」命令(「stopDrag」就是停止拖拽命令),完成後動作對話框里的代碼應該如下:
on (press) {
startDrag ("_root.hand",true);
}
on (release) {
stopDrag ();
}
點擊 控制>測試影片(快捷鍵Ctrl+Enter),試試看用滑鼠點擊拳頭是不是可以隨意拖動了
❸ C語言源代碼是什麼
數字版「拼圖」游戲C源代碼:
#include<time.h>
#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<windows.h>
int i, j, r, k; //i、j、r用於循環, k存放隨機數值
int m, n; // m、n是當前空位的下標, t標記排序是否成功
int a[4][4]; //存儲4×4共16個數字的數組
void show(void); //輸出數組表格
void csh(void); //初始化界面
int yes(void); //判斷排序是否成功
void up(void); //數字向上移動到空位(空位則下移)
void down(void); //數字向下移
void left(void); //數字向左移
void rght(void); //數字向右移
void inkey(void); //按鍵操作
void gtxy(int x, int y) ; //控制游標移動的函數
int main(void)
{ while(1)
{csh( );
while(1)
{ inkey();
show();
if ( yes( ) )
{gtxy(6,12); printf("你成功了! 再來一局y/n?"); break;}
}
if(getch( )== ʹnʹ)break;
}
return 0;
}
void csh(void)
{r=0;
CONSOLE_CURSOR_INFO cursor_info={1,0}; //以下兩行是隱藏游標的設置
SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&cursor_info);
for(i=0;i<4;i++) //給數組a依序賦值
for(j=0;j<4;j++)
{ if (i==3 && j==3) a[i][j]=0;
else a[i][j]=1+r++;
}
a[3][3]=a[1][1]; a[1][1]=0; //把a[3][3]與a[1][1]的值交換一下
m=1; n=1;
srand((unsigned)time(0)); //初始化隨機數發生器
for(r=0;r<500;r++) //將數組各值打亂
{k=rand( )%(4); //取0-3隨機數,分別代表上下左右四個方向
switch(k)
{ case 0: { up( );break; }
case 1: {down( );break; }
case 2: {left( );break; }
case 3: {rght( ); break; }
}
}
printf(" 數字拼圖");
printf(" ┌──────┬──────┬──────┬──────┐");
printf(" │ │ │ │ │");
printf(" ├──────┼──────┼──────┼──────┤");
printf(" │ │ │ │ │");
printf(" ├──────┼──────┼──────┼──────┤");
printf(" │ │ │ │ │");
printf(" ├──────┼──────┼──────┼──────┤");
printf(" │ │ │ │ │");
printf("
└──────┴──────┴──────┴──────┘");
show( );
}
void show(void)
{for(i=0;i<4;i++)
for(j=0;j<4;j++) //gtxy(7*j+9, 2*i+4)是游標到指定位置輸出數字
{gtxy(7*j+9,2*i+4); if(a[i][j]==0)printf(" │");
else if(a[i][j]>9)printf(" %d │",a[i][j]);
else printf(" %d │",a[i][j]);
}
}
void inkey(void)
{ int key;
key=getch( );
switch(key)
{ case 72: { up( ); break;}
case 80: {down( ); break; }
case 75: {left( ); break; }
case 77: {rght( );break;}
}
}
void up(void)
{ if (m!=3) //移動時要考慮空位"0"是否已經在邊界
{ a[m][n]=a[m+1][n]; m++; a[m][n]=0; }
}
void down(void)
{ if (m!=0)
{a[m][n]=a[m-1][n]; m--; a[m][n]=0; }
}
void left(void)
{ if (n!=3)
{ a[m][n]=a[m][n+1]; n++; a[m][n]=0;}
}
void rght(void)
{ if (n!=0)
{ a[m][n]=a[m][n-1]; n--; a[m][n]=0; }
}
int yes(void)
{ r=0;
for(i=0;i<4;i++)
for(j=0;j<4;j++)
{ if (a[i][j]!=1+r++) return (r==16)?1:0; }
}
void gtxy(int x, int y) //控制游標移動的函數
{ COORD coord;
coord.X = x;
coord.Y = y;
SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE), coord);
}