㈠ 怎样看这个网页的全部源代码
哈哈``
我帮你找到了``
http://www.iieye.com/comic/viewcomic_chk.htm?InfoID=13037&ID=121476&VolTitle=Vol_01
这是ID,你只要对应改网址最后面那个与之对应的就行了
就是这个 =Vol_01 把它改成 02 03 04 …………
㈡ K1363火车经过重庆吗
K1363不经过重庆,是从北京西到成都的。
火车网 收藏我吧,你总会用到的!
您好!欢迎来火车网! 登陆 注册
全国免费酒店预订:400-618-8725 首 页汽车时刻表汽车站公交查询票价查询列车时刻表动车时刻表高铁时刻表
火车站点代售点查询天气预报在线订票资讯频道-
列车时刻表汽车汽车票价公交查询 站-站 车次 车站始发站: 终点站: 搜索
源码热门关注:北京到上海 北京到西安 北京到深圳 北京到杭州 北京到广州
实用工具: 列车时刻表 酒店查询 天气预报 火车票预订 汽车时刻表
回家过年钱不够?平安无抵押贷款30秒申请到账 查询车站: 搜索
源码热门关注:北京西 上海 西安 深圳 郑州 广州 深圳 南昌 实用工具: 列车时刻表 酒店查询 天气预报 火车票预订 汽车时刻表回家过年钱不够?平安无抵押贷款30秒申请到账
查询车次: 搜索
源码最近关注:K1363实用工具: 列车时刻表 酒店查询 天气预报 火车票预订 汽车时刻表 回家过年钱不够?平安无抵押贷款30秒申请到账
北京售票点北京公交查询北京酒店预订北京汽车时刻表北京汽车站北京机票预订北京天气查询北京火车时刻表我要反馈信息出发地: 目的地: 最新搜索: 阳江到深圳 扬州到常州 福州到光泽 徐州东到临沂 福州到屏南 徐州到项城 郑州到商丘 海口到洋浦 实用工具: 列车时刻表 酒店查询 天气预报 火车票预订 汽车时刻表回家过年钱不够?平安无抵押贷款30秒申请到账 北京售票点北京公交查询北京酒店预订北京汽车时刻表北京汽车站北京机票预订北京天气查询北京火车时刻表我要反馈信息
出发地: 目的地: 最新搜索: 徐州到淮安汽车票价 杭州到黟县汽车票价 成都到马尔康汽车票价 高淳到南京汽车票价 杭州北站到丽水汽车票价 南京到凤阳汽车票价 实用工具: 列车时刻表 酒店查询 天气预报 火车票预订 汽车时刻表回家过年钱不够?平安无抵押贷款30秒申请到账 北京售票点北京公交查询北京酒店预订北京汽车时刻表北京汽车站北京机票预订北京天气查询北京火车时刻表我要反馈信息
公交换乘 公交线路 公交站点城市:出发地:目的地:最新搜索: 电视塔到博士路北口 火车站到山大南路西口 长途汽车总站到诺贝尔城 法派路口到小南门 鹿山花苑到二桥 新华路到苏州科技城 实用工具: 列车时刻表 酒店查询 天气预报 火车票预订 汽车时刻表回家过年钱不够?平安无抵押贷款30秒申请到账 城市: 出发地: 最新搜索: 歌尔 河东区 中信银行 伟星 南湾人民医院 东凤镇 实用工具: 列车时刻表 酒店查询 天气预报 火车票预订 汽车时刻表回家过年钱不够?平安无抵押贷款30秒申请到账 城市: 线路名称: 最新搜索: 电视塔到博士路北口 火车站到山大南路西口 长途汽车总站到诺贝尔城 法派路口到小南门 鹿山花苑到二桥 新华路到苏州科技城 回家过年钱不够?平安无抵押贷款30秒申请到账北京售票点北京公交查询北京酒店预订北京汽车时刻表北京汽车站北京机票预订北京天气查询北京火车时刻表我要反馈信息-
当前位置: 火车网首页 > 火车时刻表 >K1363车次时刻表 添加到QQ书签 | 加入收藏夹K1363车次(北京西到成都)火车时刻表工具箱: K1363车次火车票 北京西火车时刻表 成都火车时刻表 其它北京西到成都的火车 复制车次信息K1363车次时刻表
票价单位: 元
详
细
情
况
车次 K1363 车型 空调快速 票
价
信
息 硬座票价 231 软座票价 366
始发站 北京西 终点站 成都 硬卧票价(上) 391 软卧票价(上) 615
始发时 22:10 终到时 04:56 硬卧票价(中) 405 软卧票价(下) 642
全程时间 1天6小时46分 总里程 2042公里 硬卧票价(下) 418 详细票价 纠错
K1363车次详细内容 点击站名查询所有经过列车-
车次 站次 站名 到达时间 开车时间 停留 运行时间 里程 硬座 硬卧(上/中/下)
K1363 1 北京西 始发站 22:10 0分 0 0 0 0 / 0 / 0
K1363 2 保定 23:39 23:43 4分 1小时29分 146 24 70 / 75 / 78
K1363 3 定州 次日00:20 次日00:22 2分 2小时10分 206 33 79 / 84 / 87
K1363 4 石家庄 次日01:21 次日01:27 6分 3小时11分 281 44 90 / 95 / 98
K1363 5 邯郸 次日02:58 次日03:01 3分 4小时48分 442 65 116 / 120 / 123
K1363 6 洛阳 次日07:29 次日07:41 12分 9小时19分 813 106 185 / 191 / 197
K1363 7 渭南 次日11:49 次日12:03 14分 13小时39分 1144 143 246 / 254 / 263
K1363 8 西安 次日12:52 次日13:05 13分 14小时42分 1200 150 256 / 265 / 274
K1363 9 咸阳 次日13:23 次日13:25 2分 15小时13分 1223 154 263 / 272 / 281
K1363 10 杨陵镇 次日14:03 次日14:05 2分 15小时53分 1285 158 270 / 281 / 290
K1363 11 蔡家坡 次日14:34 次日14:36 2分 16小时24分 1330 165 282 / 291 / 301
K1363 12 宝鸡 次日15:13 次日15:36 23分 17小时3分 1373 170 290 / 300 / 309
K1363 13 凤县 次日17:45 次日17:48 3分 19小时35分 1481 179 306 / 317 / 327
K1363 14 略阳 次日20:00 次日20:06 6分 21小时50分 1588 191 324 / 335 / 345
K1363 15 阳平关 次日21:52 次日21:54 2分 23小时42分 1644 194 330 / 341 / 353
K1363 16 广元 次日23:45 次日23:55 10分 1天1小时35分 1723 203 345 / 357 / 369
K1363 17 江油 第3天02:28 第3天02:32 4分 1天4小时18分 1885 215 365 / 377 / 390
K1363 18 绵阳 第3天03:09 第3天03:17 8分 1天4小时59分 1927 219 372 / 385 / 399
K1363 19 德阳 第3天03:58 第3天04:05 7分 1天5小时48分 1981 226 383 / 395 / 409
K1363 20 成都 第3天04:56 终点站 0分 1天6小时46分 2042 231 391 / 405 / 418
㈢ 求局域网文件传输的源代码~~~~~~~~~~~
UDP.h
class CUdpComm
{
public:
UCHAR CRCTest(UCHAR* Buff,int From,int To);
BOOL Send(BYTE* buf,int size,char* addr);
CUdpComm(CWnd* pParent,
UINT nSendPort=16888,
UINT nRecvPort=16889);
virtual ~CUdpComm();
private:
UINT m_nSendPort;
UINT m_nRecvPort;
CWnd* m_pParent;
static UINT Thread(LPVOID pParam);
BOOL m_bContinue;
BOOL m_bExited;
};
Top
UDP.cpp
CUdpComm::CUdpComm(CWnd* pParent,UINT nSendPort,UINT nRecvPort)
{
m_nSendPort=nSendPort;
m_nRecvPort=nRecvPort;
m_pParent=pParent;
WSADATA wsd;
WSAStartup(0x0101,&wsd);
m_bContinue=TRUE;
m_bExited=TRUE;
AfxBeginThread(Thread,(LPVOID)this);
}
CUdpComm::~CUdpComm()
{
// BYTE buf[11];
m_bContinue=FALSE;
/*
while(m_bExited==FALSE)
{
Send(buf,11,"127.0.0.1");
}
*/
//Sleep(500);
WSACleanup();
}
BOOL CUdpComm::Send(BYTE *buf, int size,char* addr)
{
CSocket sockSend;
sockSend.Create(m_nSendPort,SOCK_DGRAM,NULL);
sockSend.Bind(m_nSendPort,addr);
int nCount;
nCount=sockSend.SendTo(buf,
size,m_nRecvPort,addr,0);
sockSend.Close();
return TRUE;
}
UINT CUdpComm::Thread(LPVOID pParam)
{
CUdpComm* pThis=(CUdpComm*)pParam;
pThis->m_bExited=FALSE;
CSocket sockReceive;
BYTE buf[256];
BYTE* PostBuf;
UINT Port=pThis->m_nRecvPort;
sockReceive.Create(Port,SOCK_DGRAM,NULL);
sockReceive.Bind(Port,"127.0.0.1");
CString strAddr("127.0.0.1");
UINT nPort=pThis->m_nSendPort;
int nCount;
while(pThis->m_bContinue==TRUE)
{
Sleep(100);
nCount=sockReceive.ReceiveFrom(buf,256,strAddr,nPort,0);
PostBuf=new BYTE[nCount];
memcpy(PostBuf,buf,nCount);
pThis->m_pParent->PostMessage(IDM_SOCK_RECEIVE_DATA,
(WPARAM)PostBuf,nCount);
}
sockReceive.Close();
pThis->m_bExited=TRUE;
return 0;
}
//每次校验2~buffersize-1字节内容,不校验55AA
UCHAR CUdpComm::CRCTest(UCHAR* Buff,int From,int To)
{
UCHAR CrcTable[] = {
0x00, 0x07, 0x0E, 0x09, 0x1C, 0x1B, 0x12, 0x15,
0x38, 0x3F, 0x36, 0x31, 0x24, 0x23, 0x2A, 0x2D,
0x70, 0x77, 0x7E, 0x79, 0x6C, 0x6B, 0x62, 0x65,
0x48, 0x4F, 0x46, 0x41, 0x54, 0x53, 0x5A, 0x5D,
0xE0, 0xE7, 0xEE, 0xE9, 0xFC, 0xFB, 0xF2, 0xF5,
0xD8, 0xDF, 0xD6, 0xD1, 0xC4, 0xC3, 0xCA, 0xCD,
0x90, 0x97, 0x9E, 0x99, 0x8C, 0x8B, 0x82, 0x85,
0xA8, 0xAF, 0xA6, 0xA1, 0xB4, 0xB3, 0xBA, 0xBD,
0xC7, 0xC0, 0xC9, 0xCE, 0xDB, 0xDC, 0xD5, 0xD2,
0xFF, 0xF8, 0xF1, 0xF6, 0xE3, 0xE4, 0xED, 0xEA,
0xB7, 0xB0, 0xB9, 0xBE, 0xAB, 0xAC, 0xA5, 0xA2,
0x8F, 0x88, 0x81, 0x86, 0x93, 0x94, 0x9D, 0x9A,
0x27, 0x20, 0x29, 0x2E, 0x3B, 0x3C, 0x35, 0x32,
0x1F, 0x18, 0x11, 0x16, 0x03, 0x04, 0x0D, 0x0A,
0x57, 0x50, 0x59, 0x5E, 0x4B, 0x4C, 0x45, 0x42,
0x6F, 0x68, 0x61, 0x66, 0x73, 0x74, 0x7D, 0x7A,
0x89, 0x8E, 0x87, 0x80, 0x95, 0x92, 0x9B, 0x9C,
0xB1, 0xB6, 0xBF, 0xB8, 0xAD, 0xAA, 0xA3, 0xA4,
0xF9, 0xFE, 0xF7, 0xF0, 0xE5, 0xE2, 0xEB, 0xEC,
0xC1, 0xC6, 0xCF, 0xC8, 0xDD, 0xDA, 0xD3, 0xD4,
0x69, 0x6E, 0x67, 0x60, 0x75, 0x72, 0x7B, 0x7C,
0x51, 0x56, 0x5F, 0x58, 0x4D, 0x4A, 0x43, 0x44,
0x19, 0x1E, 0x17, 0x10, 0x05, 0x02, 0x0B, 0x0C,
0x21, 0x26, 0x2F, 0x28, 0x3D, 0x3A, 0x33, 0x34,
0x4E, 0x49, 0x40, 0x47, 0x52, 0x55, 0x5C, 0x5B,
0x76, 0x71, 0x78, 0x7F, 0x6A, 0x6D, 0x64, 0x63,
0x3E, 0x39, 0x30, 0x37, 0x22, 0x25, 0x2C, 0x2B,
0x06, 0x01, 0x08, 0x0F, 0x1A, 0x1D, 0x14, 0x13,
0xAE, 0xA9, 0xA0, 0xA7, 0xB2, 0xB5, 0xBC, 0xBB,
0x96, 0x91, 0x98, 0x9F, 0x8A, 0x8D, 0x84, 0x83,
0xDE, 0xD9, 0xD0, 0xD7, 0xC2, 0xC5, 0xCC, 0xCB,
0xE6, 0xE1, 0xE8, 0xEF, 0xFA, 0xFD, 0xF4, 0xF3
};
int i;
UCHAR result = 0;
for(i=From;i<To;i++)
result = CrcTable[Buff[i] ^ result];
return result^0xFF;
}
㈣ 视频源代码怎么查看
你想看什么源代码,视频编码格式还是视频网页上视频的源网址
源网址的话:
页面停留在视频的页面上,然后按F12;
将鼠标放入下面的div模块上面,就会出现页面所代表的结构块;
最后在里面的div块中找出属于视频的那一个div;
然后直接复制里面的video(或embed)的代码就可以了。
㈤ 数据结构C语言。求源代码
这里L是函数输入链表的头结点,L->next指向链表的第一个元素。
进入Reverse函数,先将p、q这两个临时指针指向链表的第一个元素。此时将L->next赋为空值,即L的next不再指向链表第一个元素了(想想此函数的目的是:要将L->next从链表的一头指向另一头。就回明白这里的含义了)
进入循环,这时p、q都指向了链表的第一个元素,循环结束条件是q等于空,即while(q)表示如果q不为空NULL,则进行循环。
q=q->next; //既然q不等于空,q就再往后走走,看看还有没有结点。
p->next=L->next;
L->next=p;
p=q;
//这里L->next是上一次循环时指向的p,而后p走到下一个节点,那么这里p->next=L->next就是将p当前节点的next指到它前一个节点去。从而达到逆序的效果。
这里可能你会觉得最开始L->next=NULL,很奇怪~
其实不会,第一个节点的next将指向L->next即为空,因为第一个节点正是反向后的尾巴,最后一个节点,它的next应该为空才对。
循环进行第二轮时,你就应该明白,此时q会先跑到第三个节点去,当前的p指向第二个节点,L->next在第一轮循环中指向了第一个节点,然后将第二个节点的next指向了第一个节点。L->next又指向当前的p,即第二个节点,这次循环的最后p又追上q,指向了第三个节点,如此循环,直到q等于原链表的最后一个节点的next,这应该是空NULL,结束循环。
㈥ 急求C语言编译的小游戏(如扫雷),附带源代码和注释。
扫雷游戏(c语言版)
已经编译运行确认了:
#include <graphics.h>
#include <stdlib.h>
#include <dos.h>
#define LEFTPRESS 0xff01
#define LEFTCLICK 0xff10
#define LEFTDRAG 0xff19
#define MOUSEMOVE 0xff08
struct
{
int num;/*格子当前处于什么状态,1有雷,0已经显示过数字或者空白格子*/
int roundnum;/*统计格子周围有多少雷*/
int flag;/*右键按下显示红旗的标志,0没有红旗标志,1有红旗标志*/
}Mine[10][10];
int gameAGAIN=0;/*是否重来的变量*/
int gamePLAY=0;/*是否是第一次玩游戏的标志*/
int mineNUM;/*统计处理过的格子数*/
char randmineNUM[3];/*显示数字的字符串*/
int Keystate;
int MouseExist;
int MouseButton;
int MouseX;
int MouseY;
void Init(void);/*图形驱动*/
void MouseOn(void);/*鼠标光标显示*/
void MouseOff(void);/*鼠标光标隐藏*/
void MouseSetXY(int,int);/*设置当前位置*/
int LeftPress(void);/*左键按下*/
int RightPress(void);/*鼠标右键按下*/
void MouseGetXY(void);/*得到当前位置*/
void Control(void);/*游戏开始,重新,关闭*/
void GameBegain(void);/*游戏开始画面*/
void DrawSmile(void);/*画笑脸*/
void DrawRedflag(int,int);/*显示红旗*/
void DrawEmpty(int,int,int,int);/*两种空格子的显示*/
void GameOver(void);/*游戏结束*/
void GameWin(void);/*显示胜利*/
int MineStatistics(int,int);/*统计每个格子周围的雷数*/
int ShowWhite(int,int);/*显示无雷区的空白部分*/
void GamePlay(void);/*游戏过程*/
void Close(void);/*图形关闭*/
void main(void)
{
Init();
Control();
Close();
}
void Init(void)/*图形开始*/
{
int gd=DETECT,gm;
initgraph(&gd,&gm,"c:\\tc");
}
void Close(void)/*图形关闭*/
{
closegraph();
}
void MouseOn(void)/*鼠标光标显示*/
{
_AX=0x01;
geninterrupt(0x33);
}
void MouseOff(void)/*鼠标光标隐藏*/
{
_AX=0x02;
geninterrupt(0x33);
}
void MouseSetXY(int x,int y)/*设置当前位置*/
{
_CX=x;
_DX=y;
_AX=0x04;
geninterrupt(0x33);
}
int LeftPress(void)/*鼠标左键按下*/
{
_AX=0x03;
geninterrupt(0x33);
return(_BX&1);
}
int RightPress(void)/*鼠标右键按下*/
{
_AX=0x03;
geninterrupt(0x33);
return(_BX&2);
}
void MouseGetXY(void)/*得到当前位置*/
{
_AX=0x03;
geninterrupt(0x33);
MouseX=_CX;
MouseY=_DX;
}
void Control(void)/*游戏开始,重新,关闭*/
{
int gameFLAG=1;/*游戏失败后判断是否重新开始的标志*/
while(1)
{
if(gameFLAG)/*游戏失败后没判断出重新开始或者退出游戏的话就继续判断*/
{
GameBegain(); /*游戏初始画面*/
GamePlay();/*具体游戏*/
if(gameAGAIN==1)/*游戏中重新开始*/
{
gameAGAIN=0;
continue;
}
}
MouseOn();
gameFLAG=0;
if(LeftPress())/*判断是否重新开始*/
{
MouseGetXY();
if(MouseX>280&&MouseX<300&&MouseY>65&&MouseY<85)
{
gameFLAG=1;
continue;
}
}
if(kbhit())/*判断是否按键退出*/
break;
}
MouseOff();
}
void DrawSmile(void)/*画笑脸*/
{
setfillstyle(SOLID_FILL,YELLOW);
fillellipse(290,75,10,10);
setcolor(YELLOW);
setfillstyle(SOLID_FILL,BLACK);/*眼睛*/
fillellipse(285,75,2,2);
fillellipse(295,75,2,2);
setcolor(BLACK);/*嘴巴*/
bar(287,80,293,81);
}
void DrawRedflag(int i,int j)/*显示红旗*/
{
setcolor(7);
setfillstyle(SOLID_FILL,RED);
bar(198+j*20,95+i*20,198+j*20+5,95+i*20+5);
setcolor(BLACK);
line(198+j*20,95+i*20,198+j*20,95+i*20+10);
}
void DrawEmpty(int i,int j,int mode,int color)/*两种空格子的显示*/
{
setcolor(color);
setfillstyle(SOLID_FILL,color);
if(mode==0)/*没有单击过的大格子*/
bar(200+j*20-8,100+i*20-8,200+j*20+8,100+i*20+8);
else
if(mode==1)/*单击过后显示空白的小格子*/
bar(200+j*20-7,100+i*20-7,200+j*20+7,100+i*20+7);
}
void GameBegain(void)/*游戏开始画面*/
{
int i,j;
cleardevice();
if(gamePLAY!=1)
{
MouseSetXY(290,70); /*鼠标一开始的位置,并作为它的初始坐标*/
MouseX=290;
MouseY=70;
}
gamePLAY=1;/*下次按重新开始的话鼠标不重新初始化*/
mineNUM=0;
setfillstyle(SOLID_FILL,7);
bar(190,60,390,290);
for(i=0;i<10;i++)/*画格子*/
for(j=0;j<10;j++)
DrawEmpty(i,j,0,8);
setcolor(7);
DrawSmile();/*画脸*/
randomize();__page_break__
for(i=0;i<10;i++)/*100个格子随机赋值有没有地雷*/
for(j=0;j<10;j++)
{
Mine[i][j].num=random(8);/*如果随机数的结果是1表示这个格子有地雷*/
if(Mine[i][j].num==1)
mineNUM++;/*现有雷数加1*/
else
Mine[i][j].num=2;
Mine[i][j].flag=0;/*表示没红旗标志*/
}
sprintf(randmineNUM,"%d",mineNUM); /*显示这次总共有多少雷数*/
setcolor(1);
settextstyle(0,0,2);
outtextxy(210,70,randmineNUM);
mineNUM=100-mineNUM;/*变量取空白格数量*/
MouseOn();
}
void GameOver(void)/*游戏结束画面*/
{
int i,j;
setcolor(0);
for(i=0;i<10;i++)
for(j=0;j<10;j++)
if(Mine[i][j].num==1)/*显示所有的地雷*/
{
DrawEmpty(i,j,0,RED);
setfillstyle(SOLID_FILL,BLACK);
fillellipse(200+j*20,100+i*20,7,7);
}
}
void GameWin(void)/*显示胜利*/
{
setcolor(11);
settextstyle(0,0,2);
outtextxy(230,30,"YOU WIN!");
}
int MineStatistics(int i,int j)/*统计每个格子周围的雷数*/
{
int nNUM=0;
if(i==0&&j==0)/*左上角格子的统计*/
{
if(Mine[0][1].num==1)
nNUM++;
if(Mine[1][0].num==1)
nNUM++;
if(Mine[1][1].num==1)
nNUM++;
}
else
if(i==0&&j==9)/*右上角格子的统计*/
{
if(Mine[0][8].num==1)
nNUM++;
if(Mine[1][9].num==1)
nNUM++;
if(Mine[1][8].num==1)
nNUM++;
}
else
if(i==9&&j==0)/*左下角格子的统计*/
{
if(Mine[8][0].num==1)
nNUM++;
if(Mine[9][1].num==1)
nNUM++;
if(Mine[8][1].num==1)
nNUM++;
}
else
if(i==9&&j==9)/*右下角格子的统计*/
{
if(Mine[9][8].num==1)
nNUM++;
if(Mine[8][9].num==1)
nNUM++;
if(Mine[8][8].num==1)
nNUM++;
}
else if(j==0)/*左边第一列格子的统计*/
{
if(Mine[i][j+1].num==1)
nNUM++;
if(Mine[i+1][j].num==1)
nNUM++;
if(Mine[i-1][j].num==1)
nNUM++;
if(Mine[i-1][j+1].num==1)
nNUM++;
if(Mine[i+1][j+1].num==1)
nNUM++;
}
else if(j==9)/*右边第一列格子的统计*/
{
if(Mine[i][j-1].num==1)
nNUM++;
if(Mine[i+1][j].num==1)
nNUM++;
if(Mine[i-1][j].num==1)
nNUM++;
if(Mine[i-1][j-1].num==1)
nNUM++;
if(Mine[i+1][j-1].num==1)
nNUM++;
}
else if(i==0)/*第一行格子的统计*/
{
if(Mine[i+1][j].num==1)
nNUM++;
if(Mine[i][j-1].num==1)
nNUM++;
if(Mine[i][j+1].num==1)
nNUM++;
if(Mine[i+1][j-1].num==1)
nNUM++;
if(Mine[i+1][j+1].num==1)
nNUM++;
}
else if(i==9)/*最后一行格子的统计*/
{
if(Mine[i-1][j].num==1)
nNUM++;
if(Mine[i][j-1].num==1)
nNUM++;
if(Mine[i][j+1].num==1)
nNUM++;
if(Mine[i-1][j-1].num==1)
nNUM++;
if(Mine[i-1][j+1].num==1)
nNUM++;
}
else/*普通格子的统计*/
{
if(Mine[i-1][j].num==1)
nNUM++;
if(Mine[i-1][j+1].num==1)
nNUM++;
if(Mine[i][j+1].num==1)
nNUM++;
if(Mine[i+1][j+1].num==1)
nNUM++;
if(Mine[i+1][j].num==1)
nNUM++;
if(Mine[i+1][j-1].num==1)
nNUM++;
if(Mine[i][j-1].num==1)
nNUM++;
if(Mine[i-1][j-1].num==1)
nNUM++;
}__page_break__
return(nNUM);/*把格子周围一共有多少雷数的统计结果返回*/
}
int ShowWhite(int i,int j)/*显示无雷区的空白部分*/
{
if(Mine[i][j].flag==1||Mine[i][j].num==0)/*如果有红旗或该格处理过就不对该格进行任何判断*/
return;
mineNUM--;/*显示过数字或者空格的格子就表示多处理了一个格子,当所有格子都处理过了表示胜利*/
if(Mine[i][j].roundnum==0&&Mine[i][j].num!=1)/*显示空格*/
{
DrawEmpty(i,j,1,7);
Mine[i][j].num=0;
}
else
if(Mine[i][j].roundnum!=0)/*输出雷数*/
{
DrawEmpty(i,j,0,8);
sprintf(randmineNUM,"%d",Mine[i][j].roundnum);
setcolor(RED);
outtextxy(195+j*20,95+i*20,randmineNUM);
Mine[i][j].num=0;/*已经输出雷数的格子用0表示已经用过这个格子*/
return ;
}
/*8个方向递归显示所有的空白格子*/
if(i!=0&&Mine[i-1][j].num!=1)
ShowWhite(i-1,j);
if(i!=0&&j!=9&&Mine[i-1][j+1].num!=1)
ShowWhite(i-1,j+1);
if(j!=9&&Mine[i][j+1].num!=1)
ShowWhite(i,j+1);
if(j!=9&&i!=9&&Mine[i+1][j+1].num!=1)
ShowWhite(i+1,j+1);
if(i!=9&&Mine[i+1][j].num!=1)
ShowWhite(i+1,j);
if(i!=9&&j!=0&&Mine[i+1][j-1].num!=1)
ShowWhite(i+1,j-1);
if(j!=0&&Mine[i][j-1].num!=1)
ShowWhite(i,j-1);
if(i!=0&&j!=0&&Mine[i-1][j-1].num!=1)
ShowWhite(i-1,j-1);
}
void GamePlay(void)/*游戏过程*/
{
int i,j,Num;/*Num用来接收统计函数返回一个格子周围有多少地雷*/
for(i=0;i<10;i++)
for(j=0;j<10;j++)
Mine[i][j].roundnum=MineStatistics(i,j);/*统计每个格子周围有多少地雷*/
while(!kbhit())
{
if(LeftPress())/*鼠标左键盘按下*/
{
MouseGetXY();
if(MouseX>280&&MouseX<300&&MouseY>65&&MouseY<85)/*重新来*/
{
MouseOff();
gameAGAIN=1;
break;
}
if(MouseX>190&&MouseX<390&&MouseY>90&&MouseY<290)/*当前鼠标位置在格子范围内*/
{
j=(MouseX-190)/20;/*x坐标*/
i=(MouseY-90)/20;/*y坐标*/
if(Mine[i][j].flag==1)/*如果格子有红旗则左键无效*/
continue;
if(Mine[i][j].num!=0)/*如果格子没有处理过*/
{
if(Mine[i][j].num==1)/*鼠标按下的格子是地雷*/
{
MouseOff();
GameOver();/*游戏失败*/
break;
}
else/*鼠标按下的格子不是地雷*/
{
MouseOff();
Num=MineStatistics(i,j);
if(Num==0)/*周围没地雷就用递归算法来显示空白格子*/
ShowWhite(i,j);
else/*按下格子周围有地雷*/
{
sprintf(randmineNUM,"%d",Num);/*输出当前格子周围的雷数*/
setcolor(RED);
outtextxy(195+j*20,95+i*20,randmineNUM);
mineNUM--;
}
MouseOn();
Mine[i][j].num=0;/*点过的格子周围雷数的数字变为0表示这个格子已经用过*/
if(mineNUM<1)/*胜利了*/
{
GameWin();
break;
}
}
}
}
}
if(RightPress())/*鼠标右键键盘按下*/
{
MouseGetXY();
if(MouseX>190&&MouseX<390&&MouseY>90&&MouseY<290)/*当前鼠标位置在格子范围内*/
{
j=(MouseX-190)/20;/*x坐标*/
i=(MouseY-90)/20;/*y坐标*/
MouseOff();
if(Mine[i][j].flag==0&&Mine[i][j].num!=0)/*本来没红旗现在显示红旗*/
{
DrawRedflag(i,j);
Mine[i][j].flag=1;
}
else
if(Mine[i][j].flag==1)/*有红旗标志再按右键就红旗消失*/
{
DrawEmpty(i,j,0,8);
Mine[i][j].flag=0;
}
}
MouseOn();
sleep(1);
}
}
}
㈦ G222公路02公里800米处在哪
222国道(或“国道222线”、“G222线”)是在中国的一条国道,起点为黑龙江省哈尔滨市,终点为黑龙江省伊春市,全程为363千米。
城市名
距起点距离
黑龙江哈尔滨
0
黑龙江呼兰
35
黑龙江绥化
127
黑龙江庆安
180
黑龙江铁力
228
黑龙江伊春市翠峦区
337
黑龙江伊春市乌马河区
355
黑龙江伊春市区
363
G222公路02公里800米也就是在离哈尔滨上国道的地方02公里800米远
具体到很小的地方我就不了解了
㈧ c语言编程代码
两种方法我写在一起,可以独立拆开。
#include <stdio.h>
void finda1(char a[3][10]);
void finda2(char a[3][10]);
void show(char (*p)[10]);
int main()
{
char a[3][10]={{"gehajl"},{"788a987a7"},{"ccabbbabbb"}};
printf("原数组内容: ");
show(a);
printf(" 1、用数组指针的方法(函数finda1): ");
finda1(a);
printf("执行后: ");
show(a);
printf(" --------------------- ");
char b[3][10]={{"gehajl"},{"788a987a7"},{"ccabbbabbb"}};
printf("原数组内容: ");
show(a);
printf(" 2、用指针数组的方法(函数finda2): ");
finda2(b);
printf("执行后: ");
show(b);
return 0;
}
void finda1(char a[3][10])
{
int i,j;
char (*p)[10]=a;
for(i=0;i<3;i++)
for(j=0;j<10;j++)
if(p[i][j]=='a')
printf("发现:第%d行第%d个元素是‘a’,已替换 ",i+1,j+1),p[i][j]='1';
}
void finda2(char a[3][10])
{
int i,j;
char *p[3]={&a[0][0],&a[1][0],&a[2][0]};
for(i=0;i<3;i++)
for(j=0;j<10;j++)
if(p[i][j]=='a')
printf("发现:第%d行第%d个元素是‘a’,已替换 ",i+1,j+1),p[i][j]='1';
}
void show(char (*p)[10])
{
int i,j;
for(i=0;i<3;i++,printf(" "))
for(j=0;j<10;j++)
printf("%c ",p[i][j]);
}