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

c语言等要腰三角形

发布时间: 2022-07-13 11:58:26

Ⅰ 用c语言编辑一个等腰三角形的讲解过程

等腰三角形的话。。。是类似于下面这样的东东吗?

*
***
*****

这个重在分析,程序写起来很简单。

因为c语言的输出一定是按行输出的,所以可以按行分析三角形每行的字符构成:

总共3行的等腰三角形:
*第1行,需要输出2个空格,1个*
***第2行,需要输出1个空格,3个*
*****第3行,需要输出0个空格,5个*

所以是否能够根据上面的分析,得出结论呢?再来分析一个5行的三角形:

总共5行的等腰三角形:
*第1行,需要输出4个空格,1个*
***第2行,需要输出3个空格,3个*
*****第3行,需要输出2个空格,5个*
*******第4行,需要输出1个空格,7个*
*********第5行,需要输出0个空格,9个*

然后好像有感觉了:要输出一个n行的等腰三角形,那么:

每行需要输出的空格数是个递减的等差数列:space(i) = n - i, 其中行号i = 1,2...

每行需要输出的*数也是个等差数列: star(i) = 2 * i - 1, 其中行号i = 1,2...

所以有了公式,程序的话应该也不难了:

voidprintTriangle(intn){
inti,j,k,space,star;
//总共要打印n行
for(i=1;i<=n;i++){
//先打印n-i个空格
space=n-i;
for(j=0;j<space;j++){
printf("");
}
//然后打印2i-1个*
star=2*i-1;
for(k=0;k<star;k++){
printf("*");
}
//换行
printf(" ");
}
}

Ⅱ c语言编写等腰三角形

for(k=0;k<10-i;k++)
printf("
");的确输出10个空格但是代码继续执行for(j=0;j<i+1;j++)
printf("*
");这时候能输出一颗星
因为此时i是0,for(j=0;j<i+1;j++)执行一次
也就是输出一颗星
代码进行第二次大循环for(k=0;k<10-i;k++)printf("
");先输出9个空格(注意这次是9个空格)然后执行下面代码for(j=0;j<i+1;j++)
printf("*
");输出两颗星
代码进行第三次大循环for(k=0;k<10-i;k++)pri敞碃搬度植道邦权鲍护ntf("
");先输出8个空格(注意这次是8个空格)然后执行下面代码for(j=0;j<i+1;j++)
printf("*
");输出三颗星
依次输出十行之后就是一个等腰三角形了

Ⅲ C语言判断等腰三角形(浮点数)

应该改成:
if (fabs(a - b) < 0.0001 || fabs(a - c) < 0.0001 || fabs(b - c) < 0.0001)
printf("等腰三角形\n");

Ⅳ C语言设计等腰三角形

定义一个char型变量ch并初始化为字符A;用一个双重flt循环,外循环负责控制层数(这里假设10层)和每行应在屏幕的什么位置形如打印字符,内循环负责每行的打印个数;每输出一行将ch增1,就能达到题目要求。举例代码如下:

//#include"stdafx.h"//Ifthevc++6.0,withthisline.
#include"stdio.h"
intmain(void){
charch,i,j,k;
for(ch='A',i=0;i<10;i++){
printf("%*.*s",48-i*2,1,"");//把光标移到合适地方
for(k=(i<<1)+1,j=0;j<k;j++)
printf("%c",ch);
ch++;//字符值增1变为下一个字符
putchar(' ');
}
return0;
}

Ⅳ 怎样用C语言判断三角形类型(等边,等腰,直角,等腰直角)

#include<stdio.h>
main()
{
doublea[3],b;
while(1){
scanf("%lf%lf%lf",&a[0],&a[1],&a[2]);//输入三边
if(a[0]>0&&a[1]>0&&a[2]>0){//三边中任何一边都得大于0
if(a[0]<a[1]){b=a[0];a[0]=a[1];a[1]=b;}//将最大的边交换到a[0]中
if(a[0]<a[2]){b=a[0];a[0]=a[2];a[2]=b;}
if(a[1]+a[2]<=a[0]){
printf("不是三角形 ");continue;}//两个短边之和不大于第三边,不是三角形
if(((int)(a[1]*a[1])+(int)(a[2]*a[2])==(int)(a[0]*a[0]))&&(a[0]==a[1]||a[1]==a[2]||a[0]==a[1])){
printf("等腰直角三角形 ");continue;}//两个短边的平方=长边的平方就是直角
if((int)(a[1]*a[1])+(int)(a[2]*a[2])==(int)(a[0]*a[0])){
printf("直角三角形 ");continue;}
if(a[0]==a[1]&&a[0]==a[2]){
printf("等边三角形 ");continue;}
if(a[0]==a[1]||a[1]==a[2]||a[0]==a[1]){
printf("等腰三角形 ");continue;}
}else
printf("不是三角形 ");
}
}
//这里计算直角三角形时,转成int在进行比较,是为了降低精度,特别是计算等腰直角三角形,
//根号2,是无限的小数,不降低精度很难能得到的相等关系的。

如图所示,望采纳。。。。。。

Ⅵ 怎么用C语言输出一个等腰三角形

#include <stdio.h>

void main( )

{

int i,j,k;

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

{

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

printf(" ");

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

printf("# ");

printf(" ");

}

}


Ⅶ c语言编程 输入三角形三边长,判断其是等边三角形,等要三角形,直角三角形,等腰直角三角形还是一

这是个数学问题,不算是编程问题。如果要写出简洁的 switch表达,那就先研究一下数据规律吧。
因为使用switch是比较实型,整型,字符型等确定的数据类型,如果在switch的 case 当中又写上很多的if判断,就没有必要用switch了。

Ⅷ C语言 编程 等腰三角形问题 大神快来啊 很急

#include<stdio.h>
void main()
{
int T = 2, a = 0, b = 0, c = 0;

int i = 0;

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

{
printf("请输入第%d组数:", i);

scanf("%d%d%d", &a,&b,&c);

if(a == b && a != c && (a+b)>c)

{printf("YES\n");}else{printf("NO\n");}

}

}

Ⅸ 如何用C语言打印等腰三角形

很标准的等腰三角形#include<stdio.h>


main()
{

int row,col,i;
for(i=1;i<=10;i++){
for(row=1;row<=10-i;row++)
printf(" ");
for(col=1;col<=2*i-1;col++)/* '*'的个数和行数 i 有种内在关系*/
printf("*");
printf(" ");
}

Ⅹ C语言 等腰三角形提问

先输出8个空格(注意这次是8个空格)

然后执行下面代码

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

输出三颗星


依次输出十行之后

就是一个等腰三角形了