c语言 输出以下图形
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c语言 输出以下图形相关的知识,希望对你有一定的参考价值。
+-----+
-+---+-
--+-+--
---+---
--+-+--
-+---+-
+-----+
#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语言程序输出以下图形 // * *** ***** ******* ***** *** *