当前位置:首页 » 课程大全 » 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