写一个代码我看看c语言
时间: 2023-09-04 13:15:54 浏览: 51
好的,下面是一个简单的C语言代码,实现了输入两个数并输出它们的和:
```c
#include <stdio.h>
int main()
{
int a, b, sum;
printf("请输入两个数:");
scanf("%d %d", &a, &b);
sum = a + b;
printf("它们的和是:%d", sum);
return 0;
}
```
这个程序会先提示用户输入两个数,用户输入之后程序会计算这两个数的和并输出结果。注意,这只是一个简单的示例程序,实际应用中可能需要更复杂的代码逻辑。
相关问题
用C语言写一个贪吃蛇看看吧
好的,以下是用C语言编写贪吃蛇的示例代码:
```
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <time.h>
#define WIDTH 40
#define HEIGHT 20
int score = 0; // 记录得分
int snake_x[WIDTH * HEIGHT] = {0}, snake_y[WIDTH * HEIGHT] = {0}; // 蛇的坐标
int food_x, food_y; // 食物的坐标
int snake_len = 3; // 蛇的长度
int dir = 1; // 移动方向:1-右 2-下 3-左 4-上
void init_board(); // 初始化游戏面板
void draw_board(); // 绘制游戏面板
void gen_food(); // 生成食物
void move_snake(); // 移动蛇
int can_move(int x, int y); // 判断能否移动
void check_eat(); // 检查是否吃到食物
int game_over(); // 判断游戏是否结束
int main() {
srand((unsigned int)time(NULL));
init_board(); // 初始化游戏面板
gen_food(); // 生成食物
while (1) {
draw_board(); // 绘制游戏面板
move_snake(); // 移动蛇
check_eat(); // 检查是否吃到食物
if (game_over()) break; // 判断游戏是否结束
Sleep(100); // 暂停一段时间
}
printf("Game Over! Your Score: %d\n", score);
return 0;
}
void init_board() {
// 绘制游戏面板边框
for (int i = 0; i < WIDTH + 2; i++) printf("#");
printf("\n");
for (int i = 0; i < HEIGHT; i++) {
printf("#");
for (int j = 0; j < WIDTH; j++) printf(" ");
printf("#\n");
}
for (int i = 0; i < WIDTH + 2; i++) printf("#");
printf("\n");
// 初始化蛇的位置
snake_x[0] = WIDTH / 2; snake_y[0] = HEIGHT / 2;
for (int i = 1; i < snake_len; i++) {
snake_x[i] = snake_x[i-1] - 1;
snake_y[i] = snake_y[i-1];
}
}
void draw_board() {
// 先清空之前的蛇和食物
for (int i = 0; i < snake_len; i++) printf("\033[%d;%dH ", snake_y[i]+2, snake_x[i]+1);
printf("\033[%d;%dH ", food_y+2, food_x+1);
// 再绘制当前的蛇和食物
for (int i = 0; i < snake_len; i++) printf("\033[%d;%dH@", snake_y[i]+2, snake_x[i]+1);
printf("\033[%d;%dH#", food_y+2, food_x+1);
// 绘制得分
printf("\033[%d;%dHScore: %d", HEIGHT+2, 1, score);
}
void gen_food() {
// 随机生成食物的位置
do {
food_x = rand() % WIDTH;
food_y = rand() % HEIGHT;
} while (!can_move(food_x, food_y)); // 如果食物坐标和蛇身重合,则重新生成
}
void move_snake() {
// 先记录蛇尾的位置
int tail_x = snake_x[snake_len-1], tail_y = snake_y[snake_len-1];
// 再更新蛇身的位置
for (int i = snake_len - 1; i > 0; i--) {
snake_x[i] = snake_x[i-1];
snake_y[i] = snake_y[i-1];
}
// 根据方向更新蛇头的位置
if (dir == 1) snake_x[0]++;
else if (dir == 2) snake_y[0]++;
else if (dir == 3) snake_x[0]--;
else snake_y[0]--;
// 把蛇尾移到蛇头的位置
snake_x[snake_len-1] = snake_x[0];
snake_y[snake_len-1] = snake_y[0];
// 处理边界
if (snake_x[0] >= WIDTH) snake_x[0] = 0;
if (snake_x[0] < 0) snake_x[0] = WIDTH - 1;
if (snake_y[0] >= HEIGHT) snake_y[0] = 0;
if (snake_y[0] < 0) snake_y[0] = HEIGHT - 1;
// 把蛇尾放在原来的位置
snake_x[snake_len-1] = tail_x;
snake_y[snake_len-1] = tail_y;
}
int can_move(int x, int y) {
// 判断坐标是否合法(不超过边界且不与蛇身重合)
for (int i = 0; i < snake_len; i++) {
if (x == snake_x[i] && y == snake_y[i])
return 0;
}
return 1;
}
void check_eat() {
// 如果蛇头和食物重合,则得分加一、蛇长加一、重新生成食物
if (snake_x[0] == food_x && snake_y[0] == food_y) {
score++;
snake_len++;
gen_food();
}
}
int game_over() {
// 如果蛇头和蛇身重合,则游戏结束
for (int i = 1; i < snake_len; i++) {
if (snake_x[0] == snake_x[i] && snake_y[0] == snake_y[i])
return 1;
}
return 0;
}
```
请注意,此代码可能不是最优的,也可能存在一些bug,只是提供一个大体的思路。
用C语言写一个爱心代码
### 回答1:
以下是用 C 语言写的一个简单的爱心代码:
```c
#include <stdio.h>
int main() {
printf(" ♥ ♥ ♥ ♥ ♥ ♥\n");
printf(" ♥ ♥\n");
printf(" ♥ ♥\n");
printf("♥ ♥\n");
printf("♥ ♥\n");
printf(" ♥ ♥\n");
printf(" ♥ ♥\n");
printf(" ♥ ♥\n");
printf(" ♥ ♥\n");
printf(" ♥ ♥\n");
printf(" ♥\n");
return 0;
}
```
这段代码输出了一个简单的爱心图案。你可以自己尝试运行一下,看看效果如何。
### 回答2:
当然可以用C语言写一个爱心代码!以下是一个简单的示例:
```c
#include <stdio.h>
int main() {
printf(" ** **\n");
printf(" ** ** ** **\n");
printf(" ** ** ** **\n");
printf(" ** ** **\n");
printf(" ** **\n");
printf(" ** **\n");
printf(" ** **\n");
printf(" ** **\n");
printf(" ** **\n");
printf(" ** **\n");
printf(" *\n");
return 0;
}
```
这段代码使用了printf语句打印出了一个简单的爱心形状。通过空格和星号的组合,以一种艺术的方式创造出了一个爱心的图案。你可以将代码复制到C编译器中运行,就可以看到输出的爱心形状了。这只是一种简单的表达爱的方式,当然也可以自由地改变代码中的图案样式,使其更加独特和美丽。
### 回答3:
以下是一个使用C语言编写的爱心代码:
```c
#include <stdio.h>
int main() {
int i, j;
int space = 20, heart = 10;
// 绘制上半部分
for (i = 1; i <= heart; i++) {
for (j = 1; j <= space; j++)
printf(" ");
for (j = 1; j <= heart - i; j++)
printf(" ");
for (j = 1; j <= 2*i-1; j++)
printf("*");
printf("\n");
space--;
}
space = 0;
// 绘制下半部分
for (i = heart-1; i >= 1; i--) {
for (j = 1; j <= space; j++)
printf(" ");
for (j = 1; j <= heart - i; j++)
printf(" ");
for (j = 1; j <= 2*i-1; j++)
printf("*");
printf("\n");
space++;
}
return 0;
}
```
运行以上代码将会在终端输出一个爱心图案。此代码利用循环和打印语句绘制了一个由星号组成的爱心形状。在绘制过程中,循环控制了空格的数量和星号的数量,从而实现了爱心图案的形成。爱心图案看起来类似于两个重叠的三角形,上部分和下部分通过控制循环变量的变化进行对称绘制。