c语言打印字符图案,用printf()打印简单字符图案.ppt

回顾C语言程序结构 Printf 函数 转义符 格式声明符 先看一个最简单的C语言程序,不要看它 简单,麻雀虽小,可是五脏俱全。 回 顾 复习 /* 这是一句注释语句,所谓注释语句是仅供人们阅读,但计算机不会执 行的语句。*/ #include /* 这一句说明本程序需要包含头文件stdio.h ,原因是程序中使用, printf()函数就需要包含函数相关的头文件。它属于编译预处理命令,要 写在最前面。*/ void main( ) /*这是由C语言的设计者规定的主函数的函 数名。每个程序有且只有一个。 */ { /* 这一对在同一列上的大括号,表示了主函数是一个模块。*/ printf(“我们班是最棒的!!!”); /* 这部分称为函数体,这里是向屏幕输出一行汉字。*/ } 从上例我们大体可以知道C语言程序的格式由两 大部分构成,一是编译预处理命令,应该写在程序的 最前面; 二是函数,可能有多个,但只能有一个主函数。 函数由函数名所在的行以及用一对大括号括起的函数 体组成。 编译预处理 命令 函数 回顾 模仿练习 • 现在请同学们模仿上例,在纸上写一个向屏幕 输出文字:“C语言其实很简单!!!”的程 序。 开始 新课程 Printf函数 #include main( ) { printf(“***************************************\n“); printf(“* 今天我们学习格式化输出函数!!! *\n“); printf(“***************************************\n“); } 将程序体当中printf里右边双引号前的 “\n”都删掉,再存盘并编译运行。看看前 后两个程序的运行结果有什么不同? 创新练习 在程序中的printf语句里面的字符串末尾都有一个\n( 反斜杠和n)。 这种用反斜杠开头后跟一个或多个字符组成的复合字符 ,在C语言中称为转义字符(即在一些普通字符前加一个反 斜杠,使普通字符的含意转变了)。 \n输出后换行\t横向跳格 \r回车\b退格 转义符 C语言程序打印字符图案 下面我们看看如何用printf()函数,向屏幕 输出字符以及字符组成的图案。 这个图形,是 由四行字符串 组 成的,显然可以每 行用一个printf() 函数打印一个字符 串来完成,共用四 个printf()函数。 分析 #include void main( ) { printf(“* * * * * * * *\n”); printf(“* *\n”); /*2个*号中间有6个空格*/ printf(“* *\n”); /* 同上 */ printf(“* * * * * * * *\n“); } 上面这个平面图形是非常 简单的,特别是中间两行左右 两个字符 ” “ 相隔很近, 中间的空格只有6个。 如果中间有六、七十个的 空格呢?难道我们也照打六、 七十个空格?怎么办? 可不可以不用照打那么多 个空格? #include“stdio.h“ main( ) { printf(“* * * * * * * *\n“); printf(“%c%7c\n”,‘*’,‘*’) ; printf(“%c%7c\n“,'*','*'); printf(“%s\n“,“* * * * * * * *“); } 格式声明符 第一个printf( )是直接打印字符串常量,字符串常量和转 义字符是printf()函数可以直接打印的数据。 第四个printf()是以字符串量的格式打印字符串量。字符串 在英文中写成string,取其首字符s,前面再加一个%,构成 printf()的指定输出字符串量的格式声明符。%s是指定输出字符 串量的格式声明符。 那么对于第二、第三行的%c,同学们猜一猜应该是指定输 出什么量的格式声明符? 域 宽 • %7c表示什么意思? • 其实这是在格式声明符中间插入了一个整数,大家可以从程序的 运行结果看到,它使得后面的字符” ”共占据了7格的宽度, 我们称这个7为域宽。 • %7c表示它对应的打印字符共占7格的宽度,打印字符本身只占1 格,不够7格那么长,就在它的前面自动加上6个空格,补到共占 7格的宽度。 • 现在请同学们想一想:对于字符串量的格式声明符,会不会 也有域宽? • 前面两种方法生成的正方形图案,其每一行的首位置 都是在屏幕最左边第一列上的。现在,我们想将其每一行 的首位置打印在屏幕左边数起的第11列上(即是把图案整 个向右移动10列)如何修改这个例题,使这个想法得以实 现? 创新练习 用英语大写字母“O”组成图形 作业练习 0 0 0 0 0 0 8 8 A 0 0 8 8 A A 0 0 8 8 8 8 8 8 8 8 8 8 A A 0 0 8 8 8 8 A A 0 0 8 8 8 8 8 8 8 8 8 8 AAAAAA 0 0 8 8 A A 0 0 0 0 0 0 8 8 A A 8 8 A A 作业

展开阅读全文

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值