A. 怎樣用c語言寫出這樣的字母三角形
#include <stdio.h>
int main()
{ char i,j;
for(i=0;i<6;i++)
{for(j=0;j<=i;j++)
putchar('F'-j);
putchar(' ');
}
return 0;
}
B. C語言,輸入三組成三角形
拜託各位啦,這個題會有這么復雜嗎?如下,請樓主體會其中演算法:
#include<stdio.h>
#include<math.h>
void main()
{
float a,b,c,l,s;
do
{
printf("please input the triangle's three edges:\n");
scanf("%f%f%f",&a,&b,&c);
}
while(!(a>0&&b>0&&c>0&&a+b>c&&a+c>b&&b+c>a));
l=a+b+c;
s=sqrt((l/2)*(l/2-a)*(l/2-b)*(l/2-c));
printf("a=%f,b=%f,c=%f\nl=%f\ns=%f",a,b,c,l,s);
}
樓主寫的程序中:
1、數據應為float型,頭文件缺失stdio.h;
2、第四行「s=sqrt(10);」過於有創意;
3、其演算法邏輯混亂。
C. 怎樣用c語言編寫楊輝三角
c語言的楊輝三角程序如下:
#include<stdio.h>
#include<stdlib.h>
intmain()
{
ints=1,h;//數值和高度
inti,j;//循環計數
scanf("%d",&h);//輸入層數
printf("1
");//輸出第一個1
for(i=2;i<=h;s=1,i++)//行數i從2到層高
printf("1");//第一個1
for(j=1;j<=i-2;j++)//列位置j繞過第一個直接開始循環
//printf("%d",(s=(i-j)/j*s));
printf("%d",(s=(i-j)*s/j));
getchar();//暫停等待
}
(3)c語言怎麼構造三角網擴展閱讀:
楊輝三角概述
前提:每行端點與結尾的數為1.
每個數等於它上方兩數之和。
每行數字左右對稱,由1開始逐漸變大。
第n行的數字有n項。
第n行數字和為2n。
第n行的m個數可表示為 C(n-1,m-1),即為從n-1個不同元素中取m-1個元素的組合數。
第n行的第m個數和第n-m+1個數相等 ,為組合數性質之一。
每個數字等於上一行的左右兩個數字之和。可用此性質寫出整個楊輝三角。即第n+1行的第i個數等於第n行的第i-1個數和第i個數之和,這也是組合數的性質之一。即 C(n+1,i)=C(n,i)+C(n,i-1)。
(a+b)n的展開式中的各項系數依次對應楊輝三角的第(n+1)行中的每一項。
將第2n+1行第1個數,跟第2n+2行第3個數、第2n+3行第5個數……連成一線,這些數的和是第4n+1個斐波那契數;將第2n行第2個數(n>1),跟第2n-1行第4個數、第2n-2行第6個數……這些數之和是第4n-2個斐波那契數。
D. 求發一個用c或c++編輯的不規則三角網生成代碼
CPP是C++的文件,你想用C語言在DOS下窗口運行,得看得懂C++再修改一番,其實無非就是拿來拿去的運行下就可以,你可以先發我郵箱,[email protected],我晚上回去看下,沒別的事就給你改。貌似今天的日期已經過了,不過你要改的話還是可以發我郵箱。
E. 用C語言做個三角形
#include<stdio.h>
main(){
int n,i,j;
while(scanf("%d",&n)&&n!=0){/*輸入n行數,n=0退出*/
for(i=0; i<n; i++){//列數循環
for(j=0; j<i; j++)//行數循環
printf("%d ",j+1);//輸出數字
printf("\n");//換行
}
}
}
F. c語言:構造程序,重復輸入三角形的三條邊a.b.c ,判斷是否能構成三角形,直到輸入了五組能構成三
#include<stdio.h>
intmain(){
inta,b,c,n=0;
printf("輸入三角形的三條邊: ");
while(scanf("%d%d%d",&a,&b,&c)==3&&n<5){
if(a+b>c&&b+c>a&&c+a>b){
if(a==b&&b==c)printf("等邊三角形! ");
elseif(a==b){
if(a*a+b*b==c*c)printf("等腰直角三角形! ");
elseprintf("等腰三角形! ");
}
elseif(b==c){
if(b*b+c*c==a*a)printf("等腰直角三角形! ");
elseprintf("等腰三角形! ");
}
elseif(c==a){
if(c*c+a*a==b*b)printf("等腰直角三角形! ");
elseprintf("等腰三角形! ");
}
elseif(a*a+b*b==c*c||b*b+c*c==a*a||c*c+a*a==b*b)
printf("直角三角形! ");
elseprintf("普通三角形! ");
++n;
}
elseprintf("不能構成三角形! ");
printf(" 輸入三角形的三條邊,qtoquit: ");
}
return0;
}
G. 編寫C語言程序,如何用*組成三角形
我自己寫的,不過建議你這樣比較簡單的題目自己想想較好
#include<stdio.h>
void main()
{
int i,n,j;
printf("請輸入行數:");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
for(j=1;j<=2*i-1;j++)
printf("*");
printf("\n");
}
}
H. 用C語言循環嵌套結構編出一個三角形形狀
int n;
scanf("%d",&n);
for( int i = 1; i <= n; i++)
{
for ( int j = n-i; j > 0; j--)
printf(" ");
for ( int k = 1; k <= 2*i-1; k++ )
printf("*");
printf("\n");
}
n為從鍵盤輸入一個整數,輸出多少行。
I. 在C語言中怎麼設計出一個右對齊的三角形
分析:題目要求輸入一個表示三角形行數的整數,並以*號列印出該三角形,其形狀是右邊對齊的,如果行號錯誤,則提示錯誤信息。為了能方便多次使用(調用)代碼,可以編一個函數來實現(下例中的void PrintfRightTriangle(int n))。下面是在手機上使用易歷知食軟體內部的微C程序設計來編程實現的一個示例,手機上的代碼如下兩圖:
#include<stdio.h>
//用*顯示三角形,n是三角形行數,右邊對齊
voidPrintfRightTriangle(intn);
intmain(void)
{
intn=4;
PrintfRightTriangle(n);
n=3;
PrintfRightTriangle(n);
n=0;
PrintfRightTriangle(n);
n=10;
PrintfRightTriangle(n);
return0;
}
voidPrintfRightTriangle(intn)
{
inti,j;
if(n<1)
{
printf("
輸入行數錯誤(行數為%d)
",n);
return;
}
printf("三角形行數是 %d
",n);
for(i=0;i<n;i++)
{
for(j=1;j<(n-i)*2-1;j++)
{
printf("");
}
for(j=1;j<(i+1)*2;j++)
{
printf("*");
}
printf("
");
}
}
J. 怎樣用C語言編寫一個數字三角形
對於這一問題,很容易想到用枚舉的方法(深度搜索法)去解決,即列舉出所有路徑並記錄每一條路徑所經過的數字總和。然後尋找最大的數字總和,這一想法很直觀,很容易編程實現其程序如下:
program
sjx;
const
maxn=10;
var
a:array[1..maxn,1..maxn]
of
integer;
max:longint;
n,i,j:integer;
fname:string;
inputf:text;
procere
try(x,y,dep:integer;sum:longint);
begin
if
(dep=n)
then
begin
if
sum>max
then
max:=sum;
exit
end;
try(x+1,y,dep+1,sum+a[x+1,y]);
try(x+1,y+1,dep+1,sum+a[x+1,y+1]);
end;
begin
readln(fname);
assign(inputf,fname);
reset(inputf);
readln(inputf,n);
for
i:=1
to
n
do
for
j:=
1
to
i
do
read(inputf,a[i,j]);
max:=0;
try(1,1,1,a[1,1]);
writeln(max);
end.
但是當行數很大時,當三角形的行數等於100時,其枚舉量之大是可想而知的,用枚舉法肯定超時,甚至根本不能得到計算結果,必須用動態規劃法來解。