BC2-小飞机
题目描述
KiKi 学会了 printf 在屏幕输出信息,他想输出一架小飞机。请帮他编写程序输出这架小飞机。
输入描述
无
输出描述

解题思路
方案一:
将小飞机的图形按照行进行划分,总共可以分成 6行。然后依照每行空格与 * 的排布位置输出相应的字符即可。
具体代码如下:
点击展开
#include <stdio.h>
int main()
{
printf(" **\n"); /* 依照图形,逐行进行输出 */
printf(" **\n");
printf("************\n");
printf("************\n");
printf(" * *\n");
printf(" * *\n");
return 0;
}
方案二:
也可以将 6 条 printf 中的语句整合为一条。
具体代码如下:
点击展开
#include <stdio.h>
int main()
{
printf(" **\n **\n************\n************\n * *\n * *\n");
return 0;
}
方案三:
方案一和方案二的代码简单直观,当然像这种输出图形的题目,我们也可以通过循环语句进行实现。
具体代码如下:
点击展开
#include <stdio.h>
int main()
{
int x = 0, y = 0;
for (x = 0; x < 2; x++) /* 控制输出 x 行 */
{
for (y = 0; y < 7; y++) /* 控制输出 x 行的 y 列 */
{
if (y < 5) /* 控制输出 y 列中的' ' */
{
putchar(' ');
}
else /* 控制输出 y 列中的'*' */
{
putchar('*');
}
}
putchar('\n'); /* 回车换行 */
}
for (x = 0; x < 2; x++) /* 3、4 行 */
{
for (y = 0; y < 12; y++)
{
putchar('*');
}
putchar('\n');
}
for (x = 0; x < 2; x++) /* 5、6 行 */
{
for (y = 0; y < 8; y++)
{
if ((y < 4) || (y == 5) || (y == 6))
{
putchar(' ');
}
else
{
putchar('*');
}
}
putchar('\n');
}
return 0;
}
不要问 for、if 中的判断条件是怎么得到的,问就是我一个个数出来的,寻找规律嘛。
BC2-小飞机的更多相关文章
- [知了堂学习笔记]_用JS制作《飞机大作战》游戏_第4讲(创建敌方飞机、敌方飞机发射子弹、玩家子弹击中敌方小飞机,小飞机死亡)
一.创建敌方飞机 1.思考创建思路: 创建敌方飞机思路与创建玩家飞机思路一样: (1)思考敌方飞机具备什么属性: 敌方飞机的图片.坐标.飞行速度.状态(是否被击中) 设置小飞机被击中时消失时间.飞机可 ...
- QTP入门——玩玩小飞机
1.什么是QTP? 百度百科中对QTP是这么介绍的: ——”QTP是QuickTest Professional的简称,是一种自动化测试工具.使用QTP的目的是想用它来执行重复的自动化测试,主要是用于 ...
- 用JS制作《飞机大作战》游戏_第4讲(创建敌方飞机、敌方飞机发射子弹、玩家子弹击中敌方小飞机,小飞机死亡)-陈远波
一.创建敌方飞机 1.思考创建思路: 创建敌方飞机思路与创建玩家飞机思路一样: (1)思考敌方飞机具备什么属性: 敌方飞机的图片.坐标.飞行速度.状态(是否被击中) 设置小飞机被击中时消失时间.飞机可 ...
- Ubuntu 16.04 小飞机启动失败
好长时间没用小飞机了,今天打开发现,无法启动了. 查看了日志: Initialising ciphers... AES-256/CFB (aes-256-cfb) initialised. Runni ...
- 4星|《财经》2018年第15期:电动飞机、无人小飞机、AI无人机
<财经>2018年第15期 总第532期 旬刊 本期主题是AI.有多篇国内AI行业的比较深入的调查报告,比较有意思的有:电动飞机.无人小飞机.AI无人机.欧盟通用数据保护条例.Amazon ...
- 小飞机可以解决git clone没有返回的问题吗?
[1]Linux如何使用小飞机? 以ss为例,先下载客户端: https://www.mediafire.com/folder/xag0zy318a5tt/Linux 下载客户端以后,右键把权限中&q ...
- ubuntu配置小飞机
现在有两种方式在ubuntu配置本地shadowsocks(前提已经在服务器上搭建好了ss) windows,ios和安卓配置都是gui,没什么好说的.然后前期工作什么买vps啊,比较无脑,不想记录这 ...
- 小飞机ss端口被占用处理
如图所示: 解决方法: 1.运行cmd 2.输入命令:netstat -aon|findstr "1080" 3.获取使用该端口的PID---“8540”,如下图所示: 4.输入命 ...
- Python-pygame案例小飞机
import pygame, sys from pygame.locals import * import random '''飞机躲避导弹''' # 玩家 class Player(pygame.s ...
- java web学习总结(二十七) -------------------JSP标签介绍
一.JSP标签介绍 JSP标签也称之为Jsp Action(JSP动作)元素,它用于在Jsp页面中提供业务逻辑功能,避免在JSP页面中直接编写java代码,造成jsp页面难以维护. 二.JSP常用标签 ...
随机推荐
- python和C语言从路径中获取文件名
1.Python import os file_name = os.path.basename(filepath)#带后缀的文件名(不含路径) file_name_NoExtension = os.p ...
- Linq--取group分组后的每组第一条数据
Linq对指定字段分组并取每组第一个值 先排序后分组 目的:取每个RequestID组内的最大HistoryID的数据 //对RequestID进行分组降序排序,去每组的第一条数据 IList< ...
- scrapy传递 item时的 数据不匹配 和一些注意事项
item 在传递数据时需要拷贝内存地址 yield scrapy.Request( url=title_url, callback=self.parse_detail, # 用深拷贝的方式 复制子对象 ...
- Vue2基础知识学习
Vue2基础知识学习 01.初识 new Vue({ el: '#root', //用于指定当前Vue实例为哪个容器服务,值通常为css选择器符 data () { return { } } }); ...
- 嵌入式-C语言基础:指针偏移打印数组
在C语言中,数组名代表数组中首元素的地址,所以,下面两句获取数组的首地址是等价的: #include<stdio.h> int main() { int a[5]={1,2,3,4,5}; ...
- Window使用PowerShell改文件时间戳
We cross infinity with every step; we meet eternity in every second. 我们每一步都跨过无穷,每一秒都遇见永恒. Window使用Po ...
- Chrome 103支持使用本地字体,纯前端导出PDF优化
在前端导出PDF,解决中文乱码一直是一个头疼的问题.要解决这个问题,需要将ttf等字体文件内容注册到页面PDF生成器中.但是之前网页是没有权限直接获取客户机器字体文件,这时就需要从服务器下载字体文件或 ...
- Day22:多态详解
方法的多态 1.1什么是多态? 指一个对象在不同时刻拥有不同的形态. 例:猫 cat=new 猫(): 动物 animal=new 猫(): 多态建立的条件: 建立在继承的关系上: 有方法重写: ...
- Halo 主题 Redemption 首发版
Redemption 一款专注阅读.写作的 Halo 博客主题.主要设计思想即是专注阅读.写作,是一款极简类型的博客主题. Redemption 部分设计灵感借鉴 Halo 博客 Zozo 主题,感谢 ...
- node学习01
1.前言 Node.js 是一个开源和跨平台的 JavaScript 运行时环境 Node.js 在浏览器之外运行 V8 JavaScript 引擎(Google Chrome 的内核). 这使得 N ...