您好,欢迎访问三七文档
当前位置:首页 > 电子/通信 > 综合/其它 > C语言程序设计---文本作图
目录后退前进结束江苏省高淳职教中心校张建青C语言程序设计---文本作图主讲:张建青目录后退前进结束江苏省高淳职教中心校张建青几点约定在文本作图中,我们约定以下内容•1、i------代表行•2、j------代表列•3、s-----代表空格•4、文本作图中的难点和重点在于寻找i、j、s之间的关系式和处理输出项目的表达式上,前者主要就是用i的表达式来表示j和s,后者主要是用i,j构成表达式,如果能顺利完成这两个目标,那么这类题型就不再是问题。目录后退前进结束江苏省高淳职教中心校张建青文本作图题程序的一般框架•文本作图题的程序一般有一个固定的框架,或者说程序设计的思路、模板。for(){for(){printf(“”);}for(){printf(“*”);}printf(“\n”);}/*第一个循环代表行的变化*//*第二个循环代表每行开头的空格变化*//*第三个循环代表列的变化,或者说每行输出的内容*/目录后退前进结束江苏省高淳职教中心校张建青注意我们在这里给出一般框架只是为了初学方便些,并不意味着所有文本作图题都一定要依照这个框架,不要让这个框架限制我们的思维,文本作图的最终目标就是将图形输出,不管什么方法。目录后退前进结束江苏省高淳职教中心校张建青文本作图题型分类•一、矩形•二、平行四边形•三、直角三角形•四、等腰三角形•五、菱形•六、其他图形目录后退前进结束江苏省高淳职教中心校张建青一、矩形•样图:***************程序:#includestdio.hmain(){inti,j;for(i=1;i=3;i++){for(j=1;j=5;j++)printf(“*”);printf(“\n”);}}目录后退前进结束江苏省高淳职教中心校张建青二、平行四边形•样图1:***************is102132根据收集的数据,可以很轻松得到表达式s=i-1分析:目录后退前进结束江苏省高淳职教中心校张建青程序:#includestdio.hmain(){inti,j,s;for(i=1;i=3;i++){for(s=1;s=i-1;s++)printf(“”);for(j=1;j=5;j++)printf(“*”);printf(“\n”);}}目录后退前进结束江苏省高淳职教中心校张建青•样图2:***************程序:#includestdio.h#defineM3#defineN5main(){inti,j,s;for(i=1;i=M;i++){for(s=1;s=6-2*i;s++)printf(“”);for(j=1;j=N;j++)printf(“*”);printf(“\n”);}}二、平行四边形目录后退前进结束江苏省高淳职教中心校张建青三、直角三角形•样图1:*********程序:#includestdio.hmain(){inti,j;for(i=1;i=3;i++){for(j=1;j=2*i-1;j++)printf(“*”);printf(“\n”);}}目录后退前进结束江苏省高淳职教中心校张建青三、直角三角形•样图2:***************程序:#includestdio.hmain(){inti,j,s;for(i=1;i=3;i++){for(s=1;s=5-i;s++)printf(“”);for(j=1;j=i;j++)printf(“*”);printf(“\n”);}}目录后退前进结束江苏省高淳职教中心校张建青四、等腰三角形•样图1:*********程序:#includestdio.hmain(){inti,j,s;for(i=1;i=3;i++){for(s=1;s=3-i;s++)printf(“”);for(j=1;j=2*i-1;j++)printf(“*”);printf(“\n”);}}目录后退前进结束江苏省高淳职教中心校张建青四、等腰三角形•样图2:*********程序:#includestdio.hmain(){inti,j,s;for(i=1;i=3;i++){for(s=1;s=i-1;s++)printf(“”);for(j=1;j=7-2*i;j++)printf(“*”);printf(“\n”);}}目录后退前进结束江苏省高淳职教中心校张建青五、菱形•样图:*************程序:#includestdio.h#includemath.hmain(){inti,j,s;for(i=-2;i=2;i++){for(s=1;s=abs(i);s++)printf(“”);for(j=1;j=5-2*abs(i);j++)printf(“*”);printf(“\n”);}}目录后退前进结束江苏省高淳职教中心校张建青五、菱形变形图形•样图:AAAAAAAAABBBB程序1:#includestdio.h#includemath.hmain(){inti,j,s;for(i=-2;i=2;i++){for(s=1;s=abs(i);s++)printf(“”);for(j=1;j=5-2*abs(i);j++)printf(“%c”,(i+3)/4+65);printf(“\n”);}}目录后退前进结束江苏省高淳职教中心校张建青第2种解法•样图:AAAAAAAAABBBB程序2:#includestdio.h#includemath.hmain(){inti,j,s,t;for(i=-2;i=2;i++){for(s=1;s=abs(i);s++)printf(“”);if(i0)t=66;elset=65;for(j=1;j=5-2*abs(i);j++)printf(“%c”,t);printf(“\n”);}}目录后退前进结束江苏省高淳职教中心校张建青六、其他图形****************程序:#includestdio.h#includemath.hmain(){inti,j,s;for(i=-3;i=3;i++){for(s=1;s=6-2*abs(i);s++)printf(“”);for(j=1;j=4-abs(i);j++)printf(“*”);printf(“\n”);}}•样图(每行的*之间空两格)目录后退前进结束江苏省高淳职教中心校张建青练习题******************第一题第二题1121123211211目录后退前进结束江苏省高淳职教中心校张建青答案#includestdio.hmain(){inti,j,s;for(i=1;i=6;i++){for(s=1;s=3-(i+1)/2;s++)printf();for(j=1;j=((i+1)/2)*2-1;j++)printf(*);printf(\n);}}#includeStdio.h#includemath.hmain(){inti,j,s,t;for(i=-2;i=2;i++){for(s=1;s=abs(i);s++)printf();for(j=1;j=5-2*abs(i);j++){t=3-abs(i);printf(%d,t-abs(j-t));}printf(\n);}}第一题第二题
本文标题:C语言程序设计---文本作图
链接地址:https://www.777doc.com/doc-5302480 .html