c语言 打印共九行的菱形,用C语言打印图案的几种实现方法

循环的使用

维普资讯 http://doc.xuehai.net

科技伯. 1 1

0计算机与信息技术 0

S IN E I F R TO CE C N O MA I N

20 06年第 4期

用 C语言打印图案的几种实现方法

陈莹张青锋 (口师范学院计科系河南周口周 46 0 ) 60 0

摘要:经过几年来在 c语言教学中的实践,总结并介绍了4种打印图章(的方法。这 4种实现方法。 1 )有助于加深对问的理解和掌握。题

关键词:语言;序; C程图案;环;循函数

Se e a aia in M eh d i g La ua eC i tTh sg v r lRe lz to t o sOfUsn ng g ToPrn eDe in

Ch n ig Zh ng- n fng e -yn a - qig e

( h u o r l n v ri Z o k u He a, 6 0 ) Z o k u No ma i e s y U t h u o n n 1 0 0 6

Ab ta tW i x e e c n teL n u g e c igfrs v rly as, te a toss m n nrd c o rmeh dsfrfn igtep or m sr c: t e p r n ei h a g a e C ta hn e ea e r h i o h uh r u upa di to u efu to dn h r ga o i

0 r tu ed s ()T erai t nm to s r h lfl r n e tn igadgapn epo l . fpi oth ei 1 h el ai eh e epu d r adn n sigt rbe n t u g . z o d a o f u s r h ms

Ke r:L n a eC: rg a d sg:rc re c;fn t n ywo ds a g g p o m; e in e u rn e u ci u r o

打印图案 ( ) 1:

十十十十十十十十

用二维数组来实现。把图案看成一个 7 7的二维矩阵结构。这 x给个矩阵赋值,相应的位置上赋‘。在程序中调用了 f 0个库函即 曲s这数,的功能是求绝对值。用循环控制变量 i制数组的行下标的取它控

值,用循环控制变量 j控制数组的列下标的取值。这个程序的关键是

在给数组赋值时,析列下标的开始值和结束值。分 源程序:

椭 n ld< t 1> cu e mah. 4

圈秉 () 1

这是一个功

能并不复杂的程序。但如果让你用几种不同的方法来

实现它,许还要费一番功夫。笔者经过一段时间的思考,结出 4也总 种实现方法,面分别介绍一下。下 1方法一 .直接用 nf数来实现。这个图案有 7行,用一次 nf t函调 t函数输出一行,一共调用这个函数 7次。这种方法是最直观的,最简单,但是缺少技巧性。 源程序:

mi a0 n I s t hr【】】dk t i ca a7【 I。; ac 7i f(-; 7i+ 0 i0i;、 i

f o k< -;+ 0 -;7 k+ ) r j j

mi a0 n

I pii”\” r f n) n(;

a】] ID= i ; l f ( 0i7i+ oi ; ) r=

f= 7+) 0 0

p nf r t” i ( p nf r t” i (

\” I) 1;\。 n)。;

pit”{++\”; r f+++ I) n( 1 pit”++ I ) rnf++\” ( 1: pif“+ n ) rn (+\”; pit”\”; rnf I) ( 1

l 2方法二 .

p n ( c,i】 i% a】) r f””【D; pi ( I) r f”1; n\ ” l l 把以上程序稍做改动一下。可以输出任意大小的菱形图案。在这里定义一个符号常量。来控制数组的大小,这样程序就具有了通用性。

源程序:

# e i e N d lB 9

# n ld icu e

用二重循环结构来实现。先输出前 4,行后输出其余的 3行的输

出;一行叉分两部分输出,输出“号前的空格,输出“号。注每先 再 意输出一行后,要换行一次。需 源程序:

m i0 a n I s t a 4 I Id; ti c r N[,, ac h N ik

f=; NI+ n 0i i )

m i0 a n I

i t,; n k i

f (0<3+】 oi;=;+ r= i i I fr =一+ 00 0< 2 i+ )

pit…’ r f ) n(; fr=;< 2i+ ) o( 0k=;+ k k pii” ) r f; n( pif”I) r (\” n 1; l f 0i=;+ 0=; 2i,

pii”” r f ) n(; fr=;= -;+ o( 0k 4 2 i+ ) k< k pit”” r f 1 n(; pit”1; r f\” n ( I) l l 3方法三 .

k f s/ i o( k

pi”1; r n\” I)

l l

4方法四 .用自定义函数来实现。 先用二重循环结构输出如下图案 () 2

(转第 3下 1页 )

1-2059-png_6_0_0_0_0_887_1211_887.039_1211.759-1508-0-0-1508.jpg

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值