描述 由键盘输入正数n(n<30),要求输出具有n行的杨辉三角。 输入样例 5
1个回答
展开全部
程序如下,不明白的地方就追问吧!
#include<stdio.h>
int main()
{
int i,j,n,a[255]={1,1},b[255]={1},flag=0;
printf("请输入一个小于30的正整数n...\n");
n_input:
scanf("%d",&n);
if(n>=30||n<1){
printf("输入错误,请重新输入!\n");
goto n_input;
}
for(i=1;i<=n;i++){
for(j=0;j<i;j++){
if(flag==0){
printf("%d,",a[j]);
b[j+1]=a[j+1]+a[j];
}
else if(flag==1){
printf("%d,",b[j]);
a[j+1]=b[j+1]+b[j];
}
}
if(flag==0){
flag=1;
b[j+1]=1;
}
else{
flag=0;
a[j+1]=1;
}
printf("1\n");
}
return(0);
}
#include<stdio.h>
int main()
{
int i,j,n,a[255]={1,1},b[255]={1},flag=0;
printf("请输入一个小于30的正整数n...\n");
n_input:
scanf("%d",&n);
if(n>=30||n<1){
printf("输入错误,请重新输入!\n");
goto n_input;
}
for(i=1;i<=n;i++){
for(j=0;j<i;j++){
if(flag==0){
printf("%d,",a[j]);
b[j+1]=a[j+1]+a[j];
}
else if(flag==1){
printf("%d,",b[j]);
a[j+1]=b[j+1]+b[j];
}
}
if(flag==0){
flag=1;
b[j+1]=1;
}
else{
flag=0;
a[j+1]=1;
}
printf("1\n");
}
return(0);
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询