C语言中怎样用数组输出杨辉三角的前n行?
答案:6 悬赏:50 手机版
解决时间 2021-11-29 07:05
- 提问者网友:王者佥
- 2021-11-29 01:32
C语言中怎样用数组输出杨辉三角的前n行?
最佳答案
- 五星知识达人网友:由着我着迷
- 2021-11-29 02:10
可以参考以下程序:
#include
void main()
{int sz[10][10],i,j;
for(i=0;i<=9;i++)
{sz[i][0]=1;
sz[i][i]=1;
}
for(i=2;i<=9;i++)
for(j=1;j<=i-1;j++)
sz[i][j]=sz[i-1][j-1]+sz[i-1][j];
for(i=0;i<=9;i++)
for(j=0;j<=i;j++)
{printf("%-4d",sz[i][j]);
if(j==i) printf("
");
}
getchar();
}
全部回答
- 1楼网友:煞尾
- 2021-11-29 05:56
#include
int main()
{
int n,a[100][100],i,j;
scanf("%d",&n);
for (i=1;i<=n;i++) {a[i][1]=1;a[i][i]=1;}
for (i=3;i<=n;i++)
for (j=2;j for (i=1;i<=n;i++)
{
for (j=1;j<=i;j++)
printf("%6d",a[i][j]);
printf("\n");
}
return 0;
}
我把答案给你了哦,好好看吧,嘿嘿,不用谢了
int main()
{
int n,a[100][100],i,j;
scanf("%d",&n);
for (i=1;i<=n;i++) {a[i][1]=1;a[i][i]=1;}
for (i=3;i<=n;i++)
for (j=2;j for (i=1;i<=n;i++)
{
for (j=1;j<=i;j++)
printf("%6d",a[i][j]);
printf("\n");
}
return 0;
}
我把答案给你了哦,好好看吧,嘿嘿,不用谢了
- 2楼网友:归鹤鸣
- 2021-11-29 05:31
#include
int jisuan(int i,int j)
{
if(j==0) return 1;
if(i==j) return 1;
else return (jisuan(i-1,j-1)+jisuan(i-1,j));
}
void f(int n)
{
int i,j;
if(n>0)
{
if(n>=3)
{
for(i=0;i {for(j=0;j<=i;j++)
printf("%5d",jisuan(i,j));
printf("\n");
}
}
}
else
printf("你输入的不是一个大于0的正整数!\n");
}
void main()
{
int n;
printf("请输入一个大于0的正整数:");
scanf("%d",&n);
f(n);
}
int jisuan(int i,int j)
{
if(j==0) return 1;
if(i==j) return 1;
else return (jisuan(i-1,j-1)+jisuan(i-1,j));
}
void f(int n)
{
int i,j;
if(n>0)
{
if(n>=3)
{
for(i=0;i
printf("%5d",jisuan(i,j));
printf("\n");
}
}
}
else
printf("你输入的不是一个大于0的正整数!\n");
}
void main()
{
int n;
printf("请输入一个大于0的正整数:");
scanf("%d",&n);
f(n);
}
- 3楼网友:街头电车
- 2021-11-29 04:38
# include
main()
{
int n, i, j, a[100][100];
printf("请输入n的值:");
scanf("%d", &n);
if (n == 1) printf("1\n");
else if (n == 2) printf("1\n1 1\n");
else if (n > 2 && n < 101)
{ for (i = 0; i < n; i++)
{ a[i][0] = 1;
a[i][i] = 1;
}
for (i = 2; i < n; i++)
{ for (j = 1; j < n-1; j++)
a[i][j] = a[i-1][j-1] + a[i-1][j];
}
for (i = 0; i < n; i++)
{ for (j = 0; j <= i; j++)
printf ("%d ", a[i][j]);
printf ("\n");
}
}
else printf ("输入错误!\n");
}
满意请采纳。
main()
{
int n, i, j, a[100][100];
printf("请输入n的值:");
scanf("%d", &n);
if (n == 1) printf("1\n");
else if (n == 2) printf("1\n1 1\n");
else if (n > 2 && n < 101)
{ for (i = 0; i < n; i++)
{ a[i][0] = 1;
a[i][i] = 1;
}
for (i = 2; i < n; i++)
{ for (j = 1; j < n-1; j++)
a[i][j] = a[i-1][j-1] + a[i-1][j];
}
for (i = 0; i < n; i++)
{ for (j = 0; j <= i; j++)
printf ("%d ", a[i][j]);
printf ("\n");
}
}
else printf ("输入错误!\n");
}
满意请采纳。
- 4楼网友:廢物販賣機
- 2021-11-29 03:56
给你量身定制的,收好!~
#include
main()
{
int a[100][100],i,j,k=1,l;
printf("qing shu ru xiao yu 100 de zheng shu:");
scanf("%d",&l);
for(i=0;i for(j=0;j<=i;j++)
{
if(i==j||j==0)
{
a[i][j]=k;
printf("%d\t",a[i][j]);
if(i==j)
printf("\n");
}
else
{
a[i][j]=a[i-1][j]+a[i-1][j-1];
printf("%d\t",a[i][j]);
}
}
getch();
}
#include
main()
{
int a[100][100],i,j,k=1,l;
printf("qing shu ru xiao yu 100 de zheng shu:");
scanf("%d",&l);
for(i=0;i
{
if(i==j||j==0)
{
a[i][j]=k;
printf("%d\t",a[i][j]);
if(i==j)
printf("\n");
}
else
{
a[i][j]=a[i-1][j]+a[i-1][j-1];
printf("%d\t",a[i][j]);
}
}
getch();
}
- 5楼网友:动情书生
- 2021-11-29 03:50
#include
#include
int main()
{
// 数值和高度
int s = 1, h;
// 循环计数
int i, j;
printf("输入行数:");
// 输入层数
scanf("%d", &h);
// 输出第一个 1
printf("1 ");
// 行数 i 从 2 到层高
for (i = 2; i <= h; s = 1, i++)
{
// 第一个 1
printf("1 ");
// 列位置 j 绕过第一个直接开始循环
for (j = 1; j <= i - 2; j++)
//printf("%d ", (s = (i - j) / j * s));
printf("%d ", (s = (i - j) * s / j));
// 最后一个 1,换行
printf("1 ");
}
// 暂停等待
getchar();
return 0;
}
#include
int main()
{
// 数值和高度
int s = 1, h;
// 循环计数
int i, j;
printf("输入行数:");
// 输入层数
scanf("%d", &h);
// 输出第一个 1
printf("1 ");
// 行数 i 从 2 到层高
for (i = 2; i <= h; s = 1, i++)
{
// 第一个 1
printf("1 ");
// 列位置 j 绕过第一个直接开始循环
for (j = 1; j <= i - 2; j++)
//printf("%d ", (s = (i - j) / j * s));
printf("%d ", (s = (i - j) * s / j));
// 最后一个 1,换行
printf("1 ");
}
// 暂停等待
getchar();
return 0;
}
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯