自己编程游戏教程,学习编程的好方法
自己编程游戏教程,学习编程的好方法输入方式特别友好的行列式计算器。(用方向键控制,所见即所得的那种)还可以有教学类程序:3、较高难度:俄罗斯方块。另外还有演示类程序:展示一部或多部电梯的运行,人随机想去不同的楼层。
学习编程的好方法——控制台游戏
用控制台实现一个小游戏。难度从低到高排列(根据做得好坏难度也不一定):
1、较低难度:2048,贪食蛇,扫雷。
2、中等难度:RPG游戏。
3、较高难度:俄罗斯方块。
另外还有演示类程序:
展示一部或多部电梯的运行,人随机想去不同的楼层。
还可以有教学类程序:
输入方式特别友好的行列式计算器。(用方向键控制,所见即所得的那种)
————————————————————————————————
分享一个有意思的C语言代码:
#include <stdio.h>
#include <stdlib.h>
typedef struct _tag_Add
{
int a;
int b;
int result;
}sAdd;
void Add(void *param)
{
sAdd *p = (sAdd *) param;
p->result = p->a p->b;
}
typedef struct _tag_Mul
{
float a;
float b;
float result;
}sMul;
void Mul(void *param)
{
sMul *p = (sMul *) param;
p->result = p->a * p->b;
}
void sCal(void *param void* fuc) //void*指针类型的变量,可以接收任何指针类型的变量
{
//把fuc cast成相应的函数类型 因为cast的优先级低于小括号,所以fuc上要加小括号
((void (*)(void*))fuc)(param); //void (*)(void)为返回值为void,无参数的函数类型 (*)代表函数指针。
}
int main(void)
{
sAdd stAdd;
sMul stMul;
//数据初始化
stAdd.a = 10;
stAdd.b = 20;
stMul.a = 5;
stMul.b = 5;
//接口直接用
sCal(&stAdd Add);
sCal(&stMul Mul);
//对应的输出
printf("a b = %d\n" stAdd.result);
printf("a * b = %f\n" stMul.result);
return 0;
}
以上,快去试试吧!