用户输入一个数字N,输出一个N*N的空心矩形,N最小为3

效果如下:

思路是这样的,首先拿到这道题是没有思路的,但我们可以举几个例子,当N等于3的情况,当N=5的情况,发现第一行和最后一行是相同的,而第2行到第N-2行也是相同的。先用一个循环控制输出的是哪一行,然后里层循环控制每行的字符应该是什么? 因为每行的字符有的时候需要输出空格有的时候需要输出星号,所以需要做一些判断,如果是要输出的字符位置是

每行的第一个或者最后一个,那么就输出星号,否则输出空格,没输出一行再输出一个换行。

int main()
{ int N = 5;
for (int hang = 1; hang <= N; hang++)
{ if (hang == 1 || hang == N)
{
for (int index = 1; index <= N; index++)
{
printf("*");
}
printf("\n");
} if (hang >= 2 && hang <= N - 1)
{ for (int index=1; index <= N; index++)
{
if (index == 1 || index == N)
{
printf("*"); }
else
{
printf(" ");
} }
printf("\n"); } }

  

c语言打印空白星号矩形的更多相关文章

  1. C语言打印100到200之间的素数

    用C语言打印素数,我们首先要了素数的相关定义:只有1和它本身两个因数的自然数,也就是说除了1和它本身外,不能被其他自然数整除的数就称为素数. 例如:101只能被1 和101 整除:103只能被1 和1 ...

  2. Go语言打印调用堆栈

    Go语言打印调用堆栈 这两天看Go的代码,呃,协程太多,无数个携程调用了一个方法,彻底看不清了,所以就想到是不是可以把调用堆栈打印出来. 查了一下,发现Go的 runtime/debug 库可以把调用 ...

  3. Android之——JNI配置C语言打印Logcat信息

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/47425073 这篇文章给大家介绍一下在JNI中怎样为C语言配置打印Logcat信息 ...

  4. C语言打印100以内的质数

    C语言打印100以内的质数 #include <stdio.h> int main() { int number; int divisor; for( number = 3; number ...

  5. C语言打印年历

    摘要:使用C语言打印年历 最初看到这个是觉得比较有意思,记得读书时候只写过月历,年历要复杂一些,现在水平提高了,来重新写一下吧. 看了网上的一些代码,大都比较繁琐,本文采用全新的思路完成年历打印. 整 ...

  6. C语言打印记事本内搜索字符串所在行信息

    本程序采用C语言编写,使用方法: 1.双击“甲骨文字符串查询作品.exe”运行程序; 2.运行前请确保此可执行程序目录下有1.txt文件. 3.根据提示输入一个字符串,程序将显示存在所搜索字符串的所有 ...

  7. C语言 打印圣诞树

    再回首<C语言编程基础>,其中不少当年老师出的题,做完后稍微做了下修改,可以输入任意行数来打印圣诞树,行数越大,树越大,当然显示器也要越大,不然就折行了. 纯粹练手跟加强记忆的东西,做个记 ...

  8. C语言打印杨辉三角(2种方法)

    杨辉三角是我们从初中就知道的,现在,让我们用C语言将它在计算机上显示出来. 在初中,我们就知道,杨辉三角的两个腰边的数都是1,其它位置的数都是上顶上两个数之和.这就是我们用C语言写杨辉三角的关键之一. ...

  9. 使用jquery.jqprint.js 实现的打印功能,IE9不能进行打印预览、火狐打印空白界面

    提示的内容:SCRIPT438: 对象不支持“ExecWB”属性或方法 首先解决IE9不能打印预览的问题: 查找了一大推资料 ,有两种说法:一种是IE的安全性级别太高:一种是需要安装什么   微软we ...

随机推荐

  1. is is not == !=之间的区别

    简单来说,python中的is与is not运算符可判断两个对象是否为同一对象.若为同一个对象,则对象1 is 对象2为True .反正,若非同一个对象,则对象1 is not 对象2为True 要理 ...

  2. Oracle中exp,imp(导入导出)数据迁移注意事项

    这几天做开发库schema备份,出现些问题,记录一下.一,exp时,os语言环境和数据库不同时会自动发生转换.   如果操作系统的字符集小于数据库字符集,就可能出现乱码现象.imp时,同理,也是有可能 ...

  3. JAVA 工厂模式:简单工厂

    简单工厂模式(SimpleFactory Pattern): 又称为静态工厂方法(Static Factory Method)模式,它属于类创建型模式.在简单工厂模式中,可以根据参数的不同返回不同类的 ...

  4. JAVA内置注解 基本注解

    温故而知新,可以为师矣! 每天复习,或者学习一点小东西,也能水滴石穿! 今天复习5个JAVA内置基本注解(贴代码胜过千言万语): package com.lf.test; import java.ut ...

  5. mysql 创建用户自定义函数(转可运行)

    set global log_bin_trust_function_creators = 1; -- 开启bin_log 复制 函数创建DROP FUNCTION IF EXISTS hello; - ...

  6. bzoj 1000 A+B Problem (And also my first experience of Emacs)

    problem:https://www.lydsy.com/JudgeOnline/problem.php?id=1000 This is my first code under Emacs! #in ...

  7. gen already exists but is not a source folder

    遇到android项目导入出现后重复空包等错误,往往是导入的java编译级别有关,点击项目properties-> java Compiler ->修改Compiler complianc ...

  8. 【Python学习笔记】输出现在的时间

    print time.strftime('%Y-%m-%d %H:%M:%S',time.localtime(time.time())) 2016-01-27 21:40:25

  9. logback高级特性二 异步记录日志

    问题描述: 下图中JProfiler可看出logback的日志输出占了64%的cpu消耗 优化方案: 1. 这部分写日志的代码写了一些报文数据,确实是比较大的字符串.先禁掉控制台输出,生产环境也不需要 ...

  10. mapred.JobClient: No job jar file set. User classes may not be found. See JobConf(Class) or JobConf#setJar(String).

    报错详情: WARN mapred.JobClient: No job jar file set.  User classes may not be found. See JobConf(Class) ...