一段c语言代码看不懂,请各位指教!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一段c语言代码看不懂,请各位指教!相关的知识,希望对你有一定的参考价值。
#include <stdio.h>
#include <stdlib.h>
#include <conio.h>
int num[]=1,2,3,4,5,6,7,8,0;
main()
char key=0;
int pos;
clrscr();
randomize();
newGame();
for(;;)
key=getch();
if(key==0) continue;
pos=GetTheNull();
switch(key) /*从这里开始*/
case 72:
if(pos<=5) change(pos,pos+3);
break;
case 80:
if(pos>=3) change(pos,pos-3);
break;
case 77:
if(pos%3!=0) change(pos,pos-1);
break;
case 75:
if(pos%3!=2) change(pos,pos+1);
break; /*到这里为止看不懂*/
case 110:
newGame();
update();
if(isSuccess()) gotoxy(26,10);
printf("\332\304\304\304\304\304\304\304\304\304\304\304\304\267");
gotoxy(26,11);
printf("\263 \272");
gotoxy(26,12);
printf("\263 Well Done! \272");
gotoxy(26,13);
printf("\263 \272");
gotoxy(26,14);
printf("\324\315\315\315\315\315\315\315\315\315\315\315\315\274\n");
getch();
newGame();
if(key==27) break;
clrscr();
/*其它子函数就不用介绍了吧,望大家指教*/
如要看整段代码,去http://tieba.baidu.com/f?z=11162185&ct=335544320&lm=0&sc=0&rn=50&tn=baiduPostBrowser&word=c%D3%EF%D1%D4&pn=0
我的意思是详细的解释那段代码,还是请大家先看看完整的代码再回答吧。
我的qq825619590,大家也可以在线告诉我,谢谢了!
对应case的各分支,分别表示向上,向下,向右,向左,重新开始。
pos表示九个格中空格的位置,
九格子位置如下:
0 1 2
3 4 5
6 7 8
1)按“向上”的话,如果空格pos<=5的位置,也就是在上两排,交换空格(pos)和它下面空格(pos+3)的位置;如果空格pos>5,也就是在最下面一排,那么空格“向上”不起作用的。
同理:
2)按“向下”的话,如果空格pos>=3的位置,也就是在下面两排,交换空格(pos)和它上面空格(pos-3)的位置;如果空格pos<3,也就是在最上面一排,那么空格“向下”不起作用的。
3)pos%3!=0,也就是空格在右边两列,按下“向右”交换pos和pos-1
4)pos%3!=2,也就是空格在左边两列,按下“向左”交换pos和pos+1
拿张纸画画,能看出来的。祝你成功 参考技术A 这里执行的是Switch...Case...语句,如果key是72的话执行change(pos,pos+3);然后退出Switch,如果是80,执行if(pos>=3) change(pos,pos-3);然后退出Switch,后面的都是跟这2个一样的。
一段看不懂的代码(关于描述符)
1 class CallbackProperty(object): 2 """A property that will alert observers when upon updates""" 3 4 def __init__(self, default=None): 5 self.data = dict() 6 self.default = default 7 self.callbacks = dict() 8 9 def __get__(self, instance, owner): 10 if instance is None: 11 return self 12 return self.data.get(instance, self.default) 13 14 def __set__(self, instance, value): 15 for callback in self.callbacks.get(instance, []): 16 # alert callback function of new value 17 callback(value) 18 self.data[instance] = value 19 20 def add_callback(self, instance, callback): 21 """Add a new function to call everytime the descriptor within instance updates""" 22 if instance not in self.callbacks: 23 self.callbacks[instance] = [] 24 self.callbacks[instance].append(callback) 25 26 class BankAccount(object): 27 balance = CallbackProperty(0) 28 29 def low_balance_warning(value): 30 if value < 100: 31 print("You are now poor") 32 33 ba = BankAccount() 34 BankAccount.balance.add_callback(ba, low_balance_warning) 35 36 ba.balance = 5000 37 print("Balance is %s" % ba.balance) 38 ba.balance = 99
以上是关于一段c语言代码看不懂,请各位指教!的主要内容,如果未能解决你的问题,请参考以下文章
这是一段LCD12864液晶的其中一段C语言编程,我看不懂,其中的意思可以告诉我吗?哪怕一
请问C语言中的:stdio.h是啥意思,说仔细些,我刚自学的,不懂,还请指教