c语言 输出以下图形

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言 输出以下图形相关的知识,希望对你有一定的参考价值。

+-----+
-+---+-
--+-+--
---+---
--+-+--
-+---+-
+-----+

参考技术A 楼主这个图并不复杂,不用循环直接输出也行啊,更简便易懂些
#include <stdio.h>
int main(void)

printf("+-----+\n-+---+-\n");
printf("--+-+--\n---+---\n");
printf("--+-+--\n-+---+-\n");
printf("+-----+\n");
getch();
return 0;

全是输出语句,\n表示换行,getch()是暂停屏幕,return 0表示结束程序。
楼上的全是又循环又判断的,麻烦死了,我这个运行效率最高!
参考技术B max=7
for(i=1;i<=max;i++)

for(j=1;j<=max;j++)

if(j==i||j==max-i)
输出'+'
ELSE
输出'-'

输出换行
本回答被提问者采纳
参考技术C #include"stdio.h"
main()

int i,j,m,n=7;
m=n/2;
for(i=0;i<m;i++)
for(j=0;j<i;j++)
printf("-");
printf("+");
for(j=i+1;j<n-i;j++)
printf("-");
printf("+");

for(j=n-i+1;j<n;j++)
printf("-");
printf("\n");

for(i=m;i<n;i++)

for(j=0;j<n-i-1;j++)
printf("-");
printf("+");
for(j=n-i,j<i-1;j++)
printf("-");
printf("+");
for(j=i+1;j<n;j++)
printf("-");
printf("+");



/*比上面的几个回答效率都要高,其它的答案要判断7*7+7*7*2次,我这个只要7*7次,把分都给我吧,呵呵。*/
参考技术D /*TC2编译通过*/
#include <stdio.h>
#include <conio.h>

int draw(int len)

int x,y;
int i,j;
if(len%2)

x=wherex();
y=wherey();
for(i=0;i<len;i++)

for(j=0;j<len;j++) printf("-");
printf("\n");

for(i=0;i<len;i++)

gotoxy(x+i,y+i);
printf("+");
gotoxy(x+len-1-i,y+i);
printf("+");

return 1;

else return 0;


main()

int L;
do

printf("length;");scanf("%d",&L);
clrscr();
L=draw(L);
if(!L) printf("ERROE!");
printf("Continue?(y/n)");
while(getchar()=='Y'||getchar()=='y');

第5个回答  2008-11-17 1楼的已经写出了方法
我将它实例一下,楼主可以参考一下
#include<stdio.h>
void main()

int i,j,max=7;
for(i=0;i<max;i++)

for(j=0;j<max;j++)

if(j==i||j==max-i-1)
printf("+");
else
printf("-");

printf("\n");

用C语言编写程序,输出如下图形.要求:程序必须能够根据输入的层数动态输出相应的图形

#include<stdio.h> 

int main()

int n,i,j;

 printf("请输入层数:");

 scanf("%d",&n);

 for(i=0;i<n;i++)

 for(j=0;j<n-i;j++)

    printf("  ");

  for(j=0;j<2*i+1;j++)

    printf("%d ",2*i+1);

  printf("\\n");  

 

 return 0;

参考技术A 百度自己格式乱了 就不改了
#include<stdio.h>
void main()

int count;//层数
int orgin=1;//初始层值
int i,j;//循环指数
int ceng;//每层数字个数
printf("请输入层数:");
scanf("%d",&count);
for(i=1;i<=count;i++)//层数循环

ceng=2*i-1;
for(j=0;j<count-i;j++)
printf(" ");
for(j=0;j<ceng;j++)
printf("%2d",orgin);
orgin+=2;
printf("\n");

参考技术B #include <stdio.h>
int main()

int num = 0;
printf("请输入层数:");
scanf("%d",&num);
int i = 0, j = 0;
for(i = 1;i <= num;i++)

for(j = 0;j < num-i;j++)
printf(" ");
for(j = 0;j < 2*i-1;j++)
printf("%d ",2*i-1);
printf("\n");

return 0;

以上是关于c语言 输出以下图形的主要内容,如果未能解决你的问题,请参考以下文章

C语言,编程实现:输出以下图形

c语言:编程输出以下图形

如何用C语言程序输出以下图形 // * *** ***** ******* ***** *** *

使用c语言编程输出以下图形该怎么写呀?

用C语言编写一个程序,输出以下图形 A B B C C D D C C B B A

用c语言编写程序,打印以下图形。。 表示c语言老师讲的没听懂。。求大神。。。