- 博客(6)
- 收藏
- 关注
原创 C语言控制台 模拟简单的物理球摆(不小心召唤了一位故人)
没错就是sin函数,但sin函数的循环范围是不变的,球的摆动幅度会慢慢变小,因为给它施加的力在逐渐消失,只要将力✖sin函数,就可以实现sin函数波随着力的消失而逐渐变小,从而模拟出球摆运动。void angle_line(int x,int y,float a,int l)//绘制球摆。void line(int x1,int y1,int x2,int y2)//绘制线。screen(char mc=' ',char fc=' ')//初始化屏幕。void refresh()//刷新屏幕。
2025-04-11 23:38:35
960
原创 C语言控制台3D游戏
screen(char mc=' ',char fc='#')//初始化屏幕。void cube(point cube)//创建方块。void init()//初始化房间,画出坐标轴和方块。//3D位置结构(v为创建方块时用到的体积变量)void refresh()//刷新屏幕。void display()//投射到屏幕并显示。#define RW 400//房间宽度。#define W 49//屏幕宽度。#define L 98//屏幕长度。
2025-04-10 19:52:25
1227
原创 C语言控制台算法 用三角函数模拟时针旋转(超详细)
我们数学书上三角函数讲的不就是"sin=对边比斜边,cos=邻边比斜边"嘛,那么放在这的话,对边就是x,邻边就是y,斜边就是圆的半径r,写成公式就是图中的"sin=x/r,cos=y/r"。Windows上运行的话把conio.h改成windows.h,再把usleep(1000000/45)改成Sleep(1000/45)即可,将参数改一下可以控制速度。,变换一下上述公式即可求出图中右侧坐标点位置的公式=(x,y)=(r*sin a,r*cos a)。void refresh()//刷新屏幕。
2025-04-09 20:01:56
752
原创 C语言控制台算法 用高中数学(圆的标准方程)画圆
如图,有点O,A,B,C,O为圆心,圆的半径r=OA,点ABC分别代表着三种情况,点A在圆上,点B在圆内,点C在圆外,方框为算法的遍历范围。以l,h为变量从(-r,-r)的地方开始遍历,如果l,h在圆的半径外(假如点C),即用勾股定理计算两点距离(l*l+h*h>r*r)时就跳过,如果在圆上或者圆内(l*l+h*h<=r*r)时则打印一个'#',遍历完方框即可得到一个圆形。由于控制台字符长宽不等,所以在横向打印时乘以2,不然打印出来的是一个椭圆。
2025-04-08 16:57:07
186
原创 C语言控制台算法 给出两点坐标画直线
先用勾股定理算出线的长度l,然后算for循环每次增加的x和y的步长xs和ys,公式xs=l/(x2-x1),ys=l/(y2-y1),然后for循环l次,每次在xs*n+x1,ys*n+y1的位置打印'#',循环结束完成画线。
2025-04-07 17:16:20
202
原创 C语言基于控制台110行代码实现3D空间效果
int initialize(char mc=' ',char fc='#')//初始化m。void createcube(point cube,char o)//创建方块,o为方块的字符。void init()//初始化3D空间,画出坐标轴和4个方块。//3D位置结构体(v为创建方块时用到的体积变量)void refresh()//刷新m数组。#define W 50//50|120屏幕宽度。#define MW 200//3D空间宽度。
2025-04-03 20:05:57
1579
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人