当前位置:首页 » 编程语言 » c语言实现正三角的输出
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言实现正三角的输出

发布时间: 2022-07-18 22:44:09

A. c语言输出三角形

#include <stdio.h>
void prt(char c, int n)
{
while(n > 0)
{
printf("%c",c);
n--;

}

}

void main(void)
{

int i,n;
scanf("%d",&n);
for(i=1;i<=n;i++)
{
prt(‘’,n-1);
prt('*‘,(2*i - 1));
printf("\n");

}

}

可以打印,运行时输入数字,比如3,打印结果如下:
*
***
*****

B. 用c语言编写程序,输出三角

#include <stdlib.h>
int main()
{
int n,i,j;
scanf("%d",&n); //读取三角形的行数
for(i=1;i<=n;i++) //外循环,控制行数
{
for(j=0;j<n-i;j++) //输出第行前面的空格
printf(" ");
if(i>1) //第一行除外
{
printf("*"); //先打首个*
for(j=1;j<2*(i-1);j++) //若非最后一行则中间连续若干空格
if(i<n)printf(" ");
else printf("*"); //最后一行则中间也是*
}
printf("*\n"); //打印最后一个*,然后换行
}
system("pause"); //暂停程序,便于看清结果
return 0; //返回0值,表示正常运行结束
}

C. C语言输出正三角形

/*********************
* FOR.C *
*********************/

#include <stdio.h>

main()
{
int a, b;
for(a = 1; a <= 5; a ++)
{
for(b = 1; b <= a; b ++)
printf("*");
printf("\n");
}
}

估计就是练嵌套for语句,哈哈

D. c语言编程,用函数调用输出正三角星形

//简单写了一个,满意请采纳,不懂可追问。
#include<stdio.h>
void main()
{
int n,i,j,ls;
n=0;
ls = 7;
for(i=1;i<=ls;i++)
{
for(j=1;j<=ls-i;j++)
printf(" ");
for(;j<ls+i;j++)
printf("*");
printf("\n");
n=n+1;
}
}

E. 如何用C语言的循环结构输出一个三角形

我们用 * 来构成三角形,要输出三角形,要考虑到构成三角形 * 前面的空格,而 每一行* 和空格的数目又是有规律的,因此可以用for循环里面在嵌套2个for循环来输出:

#include<stdio.h>void main(){ int i,j; for(i=0;i<5;i++) { for(j=0;j<4-i;j++) printf(" "); for(j=0;j<2*i+1;j++) printf("*"); printf("\n"); }}

F. 求救!用C语言编程:输入一个数 用倒三角(正三角)图形输出 谢了!

给你一个输出来是正的正三角行图案:
/*输出一个正的正三角行图形*/
#include<stdio.h>
void main()
{ int i, j, x, n, count, k , m , q , p , v ;
scanf(“%d%d”,&n,&x);
count=1;k=10;
while(x-k>=0)
{count++;k*=10;}
/*count 的值表示输入数字的位数*/ for(i=1;i<=n;i++)
{ for(m=1;m<=count*(n-i);m++)
putchar(‘ ‘); /*输出count*(n-i)个空格*/
for(j=1;j<=i;j++)
{ printf(“%d”,x);
/*第i行输出i个数字*/
for(p=1;p<=count;p++)
Putchar(‘ ‘); }
/*输出一个数字后,接着输出count个空格*/
for(q=1;q<=count;q++)
putchar(‘\n’); } /*回车换行count 次*/ }

G. 在c语言中怎样打印一个正三角形

你是问图形模式还是文本模式?

文本模式:(需计算:80/(25*n)!=sqrt(3),因此文本模式下的正三角形不严格)
下面仅为一示意图

#include<stdio.h>
int main()
{
printf(" * ")
printf(" * * ")
printf(" * * ")
printf("* * * * * * *")
return(0);
}

图形模式下可画的更严格:

思路是:先写一个程序解出(640,480)*(640,480)中正三角形的整数解,再用画线函数,画出。

/*此代码有问题,运行最后的那个程序*/
#include<stdio.h>
#include<math.h>
#include<conio.h>
#define P(a,b,i,j) (pow((ai-aj),2)+pow((bi-bj),2))
int main()
{
int x1,y1,x2,y2,x3,y3;

for(x1=0,y1=0;x1<480;x1++)for(x2=479,y2=1,y2<480;y2++)for(x3=0,y3=479;y3>=0;y3--)if(P(x,y,1,2)==P(x,y,1,3)&&P(x,y,1,2)==P(x,y,2,3))printf("%6d%6d%6d%6d%6d%6d",x1,y1,x2,y2,x3,y3);

int gd=DETECT,gm;
initgraph(&gd,&gm,"c:\\tc201e\\bgi");
cleardevice();

setbkcolor(9); setcolor(4);

line(x1,y1,x2,y2);line(x2,y2,x3,y3);line(x3,y3,x1,y1);

getch();

return(0);
}

调试过程中发现那段解三点的代码有问题,其实那是一个很简化的算法,你可以自己用穷举发解;
下面实我 注掉那段代码后的完整程序,运行结果已较理想

#include<stdio.h>
#include<math.h>
#include<conio.h>
#include<graphics.h>
#define P(a,b,i,j) (pow((ai-aj),2)+pow((bi-bj),2))
int main()
{
int x1=219,y1=1,x2=531,y2=367,x3=0,y3=415;
/*
for(x1=0,y1=0;x1<480;x1++)for(x2=531,y2=1,y2<480;y2++)for(x3=0,y3=479;y3>=0;y3--)if(P(x,y,1,2)==P(x,y,1,3)&&P(x,y,1,2)==P(x,y,2,3)){printf("%6d%6d%6d%6d%6d%6d",x1,y1,x2,y2,x3,y3);break;}
getchar();getchar();
*/

int gd=DETECT,gm;
initgraph(&gd,&gm,"c:\\tc201e\\bgi");
cleardevice();

setbkcolor(9); setcolor(4);

line(x1,y1,x2,y2);line(x2,y2,x3,y3);line(x3,y3,x1,y1);

getch();

return(0);
}

H. c语言问题:编制程序,输出由“*”组成的正三角形的,边长由程序输入。例如n=4

LS仁兄至少应该把k=0和j=0放在for循环里面吧。。。。都没测试就拿出来。。。。
正三角形前面有空格吧。。。
#include <stdio.h>
void main()
{
int i,j,N;
scanf("%d",&N);
for(i=1;i<=N;i++)
{
for(j=1;j<=N+i-1;j++)
if(j<=N-i)printf(" ");
else printf("*");//输出*
printf("\n");//换行
}
}

如果前面没有空格则代码如下
#include <stdio.h>
void main()
{
int i,j,N;
scanf("%d",&N);
for(i=1;i<=N;i++)
{
for(j=1;j<=2*i-1;j++)
printf("*");//输出*
printf("\n");//换行
}
}

I. C语言程序输出数字正三角

#include<stdio.h>

void PrintNumbers(int line)

{int i,j;

if(line<1){printf("输入参数错误 "); return;}

for(i=1;i<=line;i++)

{for(j=0;j<line-i;j++)

printf(" ");

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

printf("%d",j);

for(j-=2;j>0;j--)

printf("%d",j);

printf(" ");

}

}

int main()

{ int n;

scanf("%d",&n);

PrintNumbers(n);

return 0;

}