要使用C语言编写一个旋转的动画,可以使用图形库如OpenGL或者SDL来实现。以下是使用OpenGL库编写一个旋转的动画的示例代码:
#include <GL/glut.h>float angle = 0.0f; // 角度void display() {glClear(GL_COLOR_BUFFER_BIT | GL_DEPTH_BUFFER_BIT);// 设置视角glMatrixMode(GL_MODELVIEW);glLoadIdentity();gluLookAt(0, 0, 5, 0, 0, 0, 0, 1, 0);// 设置旋转glRotatef(angle, 0.0f, 1.0f, 0.0f);// 绘制一个立方体glBegin(GL_QUADS);// 绘制前面glColor3f(1.0f, 0.0f, 0.0f);glVertex3f(-0.5f, -0.5f, 0.5f);glVertex3f(0.5f, -0.5f, 0.5f);glVertex3f(0.5f, 0.5f, 0.5f);glVertex3f(-0.5f, 0.5f, 0.5f);// 绘制后面glColor3f(0.0f, 1.0f, 0.0f);glVertex3f(-0.5f, -0.5f, -0.5f);glVertex3f(-0.5f, 0.5f, -0.5f);glVertex3f(0.5f, 0.5f, -0.5f);glVertex3f(0.5f, -0.5f, -0.5f);// 绘制左面glColor3f(0.0f, 0.0f, 1.0f);glVertex3f(-0.5f, -0.5f, 0.5f);glVertex3f(-0.5f, 0.5f, 0.5f);glVertex3f(-0.5f, 0.5f, -0.5f);glVertex3f(-0.5f, -0.5f, -0.5f);// 绘制右面glColor3f(1.0f, 1.0f, 0.0f);glVertex3f(0.5f, -0.5f, -0.5f);glVertex3f(0.5f, 0.5f, -0.5f);glVertex3f(0.5f, 0.5f, 0.5f);glVertex3f(0.5f, -0.5f, 0.5f);// 绘制上面glColor3f(0.0f, 1.0f, 1.0f);glVertex3f(-0.5f, 0.5f, 0.5f);glVertex3f(0.5f, 0.5f, 0.5f);glVertex3f(0.5f, 0.5f, -0.5f);glVertex3f(-0.5f, 0.5f, -0.5f);// 绘制下面glColor3f(1.0f, 0.0f, 1.0f);glVertex3f(-0.5f, -0.5f, 0.5f);glVertex3f(-0.5f, -0.5f, -0.5f);glVertex3f(0.5f, -0.5f, -0.5f);glVertex3f(0.5f, -0.5f, 0.5f);glEnd();glutSwapBuffers();}void update(int value) {angle += 1.0f; // 每次更新角度增加1度if (angle > 360) {angle -= 360;}glutPostRedisplay();glutTimerFunc(25, update, 0);}int main(int argc, char** argv) {glutInit(&argc, argv);glutInitDisplayMode(GLUT_DOUBLE | GLUT_RGB | GLUT_DEPTH);glutInitWindowSize(500, 500);glutCreateWindow("Rotation