c语言 输出10行扬辉三角

作者&投稿:诏饼 (若有异议请与网页底部的电邮联系)
c语言输出杨辉三角的前十行~

给你一个java参考程吧,跟c语言差不多,你只把输入的地方改改就好了
static void yH(){
System.out.print("输入你要打印的杨辉三角行数:");
int n=SystemIn.nextInt();
int mat[][]=new int[n][];
int i,j;
for (i = 0; i < n; i++) {
mat[i] = new int[i + 1];
mat[i][0] = 1;
mat[i][i] = 1;
for (j = 1; j < i; j++) {
mat[i][j] = mat[i - 1][j - 1] + mat[i - 1][j];
}
}
for (i = 0; i < mat.length; i++){
for (j = 0; j < mat[i].length; j++)
System.out.print(" " + mat[i][j]);
System.out.println();
}
}

#include
main()
{
int i,j,a[10][10]; /*10行10列的杨辉三角*/
for(i=0;i<10;i++) /*先赋值两边*/
{
a[i][0]=1;
a[i][i]=1;
}

for(i=2;i<10;i++) /* 计算中间的数值 */
for(j=1;j<i;j++)
a[i][j]=a[i-1][j-1]+a[i-1][j];

for(i=0;i<10;i++) /* 输出部分 */
{
for(j=0;j<i+1;j++)
printf("%d ",a[i][j]);
printf("
");
}
}

错误很多,我根据你做的改了改,你看看:
#include<stdio.h>
int main(void)
{
int a[10][10],i=0,j,t;
for(i=0,j=0;i<=9,j<=9;i++,j++)
{
a[i][j]=1;
}
for(i=1,j=0;i<=9;i++)
{
a[i][j]=1;
}

for(i=2;i<=9;i++)
{
for(j=1;j<i;j++)
a[i][j]=a[i-1][j]+a[i-1][j-1];
}
for(i=0;i<=9;i++)
{
for(j=0;j<=i;j++)
printf("%5d",a[i][j]);
printf("\n");
}
return 0;
}
你对比一下就可以了。。。还有你的主要错误是没有理清思路,嵌套的for循环要加大括号。。。

#include<stdio.h>
int main()
{
int i,j,n=13;
printf("N=");
while(n>12)
scanf("%d",&n); /*控制输入正确的值以保证屏幕显示的图形正确*/
for(i=0;i<=n;i++) /*控制输出N行*/
{
for(j-0;j<24-2*i;j++) printf(" "); /*控制输出第i行前面的空格*/
for(j=1;j<i+2;j++) printf("%4d",c(i,j)); /*输出第i行的第j个值*/
printf("\n");
}
}

void int c(int x,int y) /*求杨辉三角形中第x行第y列的值*/
{
int z;
if((y==1)||(y==x+1)) return 1; /*若为x行的第1或第x+1列,则输出1*/
z=c(x-1,y-1)+c(x-1,y); /*否则,其值为前一行中第y-1列与第y列值之和*/
return z;
}

#include<stdio.h>
void main()
{int a[10][10],i=0,j,t;
for(i=0,j=0;i<=9;i++)
{a[i][j]=1;
}
for(i=1;i<=9;i++)
{a[i][i]=1;
}

for(i=2;i<=9;i++)
for(j=1;j<i;j++)
a[i][j]=a[i-1][j]+a[i-1][j-1];

for(i=0;i<=9;i++)
{for(j=0;j<=i;j++)
printf("%5d",a[i][j]);
printf("\n");
}
printf("\n\n\n");
}


红塔区19722316992: 用C语言编写一个输出10行的杨辉三角形程序 -
子丰标毛冬: #include<stdio.h> int main() {int i,j,a[20]={1};printf("%4d\n",a[0]);for(i=1;i<10;i++){for(j=i;j>0;j--)a[j]+=a[j-1];for(j=0;j<=i;j++)printf("%4d",a[j]);printf("\n");}return 0; }

红塔区19722316992: 怎样用C语言编写杨辉三角(要求显示10行)? -
子丰标毛冬: #include <stdio.h>#define N 14 void main() { int i,j,n, a[N][N]={0}; printf("请输入需要显示的行数(不能大于13行):");scanf("%d",&n); a[0][1]=1; for(i=1;i<=n;i++) { for(j=1;j<=40-2*i;j++) printf(" "); for (j=1;j<=i;j++) { a[i][j]=a[i-1][j-1]+a[i-1][j];printf("%4d",a[i][j]); } printf("\n"); } }

红塔区19722316992: C语言编写 用数组输出杨辉三角十行 -
子丰标毛冬: //C语言经典100例中的原题,给你,希望对你有帮助! #include "stdio.h" #include "conio.h" main() {int i,j;int a[10][10];printf("\n");for(i=0;i<10;i++){a[i][0]=1;a[i][i]=1;}for(i=2;i<10;i++)for(j=1;j<i;j++)a[i][j]=a[i-1][j-1]+a[i-1][j];for(i=0;i<...

红塔区19722316992: 用C语言打印出10行杨辉三角形.
子丰标毛冬: #include<stdio.h>#define N 10int main(){ int a[N][N],i,j;for(i=0;i<N;i++) { for(j=N;j>=i;j--) printf(" "); for(j=0;j<=i;j++) { if(i==j||j==0) a[i][j]=1; else a[i][j]=a[i-1][j]+a[i-1][j-1];printf("%4d",a[i][j]);if(i==j) printf("\n"); } } return 0;} 运行如下:

红塔区19722316992: c语言输出杨辉三角形(10行) -
子丰标毛冬: #include <stdio.h>#include <stdlib.h> int main(int argc, char *argv[]) { int a[11][11]={{1},{1,1},{1},{1},{1},{1},{1},{1},{1},{1}},i,j,k,z=1,x=1,c=1; for(i=2;i<10;i++) { for(j=1;j<=i;j++) { //用下面的方法计算的乘积很容易超出整数的表达范围 //for(k=1;k<=j;k++) // ...

红塔区19722316992: 编写一C语言程序用来打印10行杨辉三角 -
子丰标毛冬: 以后这种东西自己上网找,网上大把#include <stdio.h> int main(void) { int a[10][10],(*p)[10]=a,i,j; for(i=0;i<10;i++) { *(*(p+i)+0)=1; *(*(p+i)+i)=1; } for(i=2;i<10;i++) for(j=1;j<i;j++) *(*(p+i)+j)=*(*(p+i-1)+j-1)+*(*(p+i-1)+j); for(i=0;i<10;i++) { for(j=0;j<=i;j++) printf("%5d",*(*(p+i)+j)); printf("\n"); } getch(); return 0; }

红塔区19722316992: 求输出杨辉三角前十行的C程序 -
子丰标毛冬: #include <stdio.h> int YangHui(int n) //n为行数 { int a[80][80]; //杨辉数据 int i,j; for(i=1;i<=n;i++) //每一列的第一个数和最后一个数总是1 { a[i][1]=1; a[i][i]=1; } for(i=3;i<=n;i++) //i控制行,j控制列 for(j=2;j<=i-1;j++) { a[i][j]=a[i-1][j-1]+a[i-1][j]; } for(i=1;i<=...

红塔区19722316992: 用C语言输出杨辉三角的前十行 -
子丰标毛冬: #include<stdio.h> void main() { int a[10][10]={0}; // 初始化数组 int i,j; for(i=0;i<10;i++) { a[i][0]=1; a[i][i]=1; } for(i=2;i<10;i++) { for(j=1;j<i;j++) { a[i][j]=a[i-1][j-1]+a[i-1][j]; } } for(i=0;i<10;i++) { for(j=0;j<=i;j++) // 只输出“下半个三角形” { printf("%5d",a[i][j]); } printf("\n"); } } // 测试结果:

红塔区19722316992: 用C语言编程求解打印10行杨辉三角 -
子丰标毛冬: #include <stdio.h> int main(void) { int a[10][10],(*p)[10]=a,i,j; for(i=0;i<10;i++) { *(*(p+i)+0)=1; *(*(p+i)+i)=1; } for(i=2;i<10;i++) for(j=1;j<i;j++) *(*(p+i)+j)=*(*(p+i-1)+j-1)+*(*(p+i-1)+j); for(i=0;i<10;i++) { for(j=0;j<=i;j++) printf("%5d",*(*(p+i)+j)); printf("\n...

红塔区19722316992: 用c语言输出杨辉三角,要求是10行,并且是等腰三角形. -
子丰标毛冬: #include <stdio.h> double jc(int n) { double ret= 1; while(n) ret*= n--; return ret; } double jc(int n, int m) { double ret= 1; while(m--) ret*= n--; return ret; } void yanghuisanjiao(int n) { int i, j, m, k; for(i= 0; i <= n; i++) { for(k=0; k < n-i; k++) printf(" "); for(j= 0...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网