C语言杨辉三角半成品
devc吧
全部回复
仅看楼主
level 9
lightyeards 楼主
#include<stdio.h>
int a[100][100];
void szfz(int x);
void szsc(int x);
int x,y,z=0;
void srxy();
int pdxy(int x,int y);
void main()
{
printf("xy分别代表行和列输入xy时请用空格隔开\n");
while(z!=1)
{
srxy();
z=pdxy(x,y);
}
x++;
szfz(x);
szsc(x);
getchar();
getchar();
getchar();
}
void szfz(int x)
{
int ax=2,ay=1;
for(int i=0;i<x;i++)
{
a[i][0]=1;
a[i][i]=a[i][0]; //采用对称赋值,此循环应该排在第一位。
}
for(;ax!=x-1;)
{
for(;;)
{
a[ax][ay]=a[ax-1][ay-1]+a[ax-1][ay]; //在杨辉三角中上面两数之和等于下面一个数
if(ax==ay+1) break;
++ay;
}
++ax;
ay=1;
}
}
void szsc(int x)
{
int i=x,i1=x;
for(int ix=0;ix!=x-1;ix++)
{
for(int iy=0;iy!=x-1;iy++)
{
if(iy>ix) break;
for(i;i!=0;i--)
{
printf(" ");
}
printf(" %d",a[ix][iy]);
}
printf("\n");
--i1;
i=i1;
}
}
int pdxy(int x,int y)
{
if(x<y)
{
printf("您输入的xy的值有误,在正常的情况下x>y.\n请重新输入xy.");
return 0;
}
else return 1;
}
void srxy()
{
printf("请输入x.y:");
scanf("%d%d",&x,&y);
}
2014年02月04日 11点02分 1
level 9
lightyeards 楼主
赶公交, 好不容易等来一辆,可根本就挤不上.于是,司机大哥就和说:“我先发动车, 慢点开,你跟在车后面跑跑.”我纳闷:这算什么意思啊?跟在车屁股后面跑.眼看车开了几米,忽然一个急刹车,车上的乘客把持不住身体 ,全部倒向车的前面去了, 后门一下子腾出好大一块地方。这时, 司机大哥得意地招呼我:“上”
2014年02月04日 11点02分 2
1