① 用c语言打印n行杨辉三角,最好简单点
#include<stdio.h>
#include<stdlib.h>
int s[10000][10000];
int main()
{
int n,i,j;
scanf("%d",&n);
s[1][1]=1;
s[2][1]=1;
s[2][2]=1;
if(n==1)
printf("%d\n",s[1][1]);
else if(n==2)
{
printf("%d\n",s[1][1]);
printf("%d %d\n",s[2][1],s[2][2]);
}
else
{
for(i=3;i<=n;i++)
{
for(j=1;j<=i;j++)
{
s[i][j]=s[i-1][j]+s[i-1][j-1];
}
}
for(i=1;i<=n;i++)
{
for(j=1;j<=i;j++)
{
printf("%d ",s[i][j]);
}
printf("\n");
}
}
system("pause");
return 0;
}
我的意思是把n=1和n=2特殊处理,其他的就可以算出来了,先用一个二维数组存着,再一起输出,这样你看行吗
② C语言怎样用数字打印n行正三角形
#include <stdio.h>
void main()
{
int n,i,j;
printf("输入n\n");
scanf("%d",&n);
for(i=1;i<=n;i++)
{
for(j=n-i;j>0;j--)
printf(" ");
for(j=1;j<=i;j++)
printf("%d ",j);
for(j=j-2;j>0;j--)
printf("%d ",j);
printf("\n");
}
}
③ c语言 输出n(0<n<21)行杨辉三角形,n由用户输入
#include<stdio.h>int main(){ int i,j,k,N; scanf("%d",&N); int a[N][N]; for(i=0; i<N; i++) { a[i][0]=1; a[i][i]=1; } for(i=1; i<N; i++) for(j=1; j<i; j++) a[i][j]=a[i-1][j]+a[i-1][j-1]; for(i=0; i<N; i++) for(j=0; j<=i; j++) { if (j==0) { for(k=0; k<2*(N-i); k++) printf(" "); } if(j==i) printf("%6d\n",a[i][j]); else printf("%6d",a[i][j]); } return 0;}我觉得你那个例子不好看,不叫三角形,我加了空格,你不要空格的话就把前面空格删了。如果不想自己删请追问哦~及时采纳~
④ c语言如何输出n行的直角三角形(实心的)
先不说你代码逻辑,你这个代码ij都是整数,循环自增不能用浮点数。
直角三角形,有等腰和非等腰,需要输入2个边,且只能按照两边比例来算,所以斜边只能是一个近似值。
我的代码,精度常量自行修改,边长越大,画面精度越好。(但是由于控制台固定大小,实际能显示的长度有限)。
#include <stdio.h>
#define X 0.001//精确度,越小精确
int main()
{
char ch;
int a,b,i,j;
printf("请输入填充字符:"),scanf("%c",&ch);
printf("请输入2个直角边的字符个数:"),scanf("%d%d",&a,&b);//默认a<=b
if(a>b) a^=b,b^=a,a^=b;
for(i=0;i<a;i++,printf(" "))
for(j=0;j<b;j++)
{
if(i==0){printf("%c",ch);break;}
if(i!=0 && j==0)printf("%c",ch);
if(i!=0 && j!=0 && a==b && j<=i)printf("%c",ch);//等腰
if(i!=0 && j!=0 && a!=b && (double)i/j-(double)a/b>X) printf("%c",ch);//非等腰
}
return 0;
}
⑤ C语言编程 打印数字字符图案 输入任意整数n,输出n行由数字构成的三角形字符阵列图形。
#include<stdio.h>
intarr[10]={0,1,2,3,4,5,6,7,8,9};
intmain()
{
intline,i,j,k=0;
printf(":");
scanf("%d",&line);
for(i=0;i<line;i++)
{
for(j=0;j<i;j++)
{
printf("");
}
for(j=0;j<line-i;j++)
{
printf("%d",arr[k]);
k++;
if(k>9)
k=k%10;
}
printf(" ");
}
return0;
}
⑥ c语言输入n(3<=n<=10),输出n行的杨辉三角形
#include<stdio.h>
int main()
{int a[11]={0};
int i,j,n;
scanf("%d",&n);
a[0]=1;
for(i=0;i<=n;i++)
{for(j=i;j>0;j--)a[j]+=a[j-1];
printf("%*s",2*(n-i),"");
for(j=0;j<=i;j++)printf("%4d",a[j]);
printf(" ");
}
return 0;
}
⑦ c语言 打印n行由某个字符构成的正三角形 鄙人小白,求大神帮忙
#include<stdio.h>
int main()
{ int n,i,j;
char c;
scanf("%d%c",&n,&c);
for(i=0; i<n; i++)
{ for(j=0; j<n-i-1; j++)
printf(" ");
for(j=0; j<i+i+1; j++)
printf("%c",c);
printf(" ");
}
return 0;
}
⑧ 打印输出n行杨辉三角形,n值,由键盘输入.怎么编写c语言代码
#include <stdio.h>
int main()
{
int yh[101][101]={{},{0,1}},i,n,m;
scanf("%d",&m); /*输入要打印的行数,,,不能太大。。我水平不高。。*/
for(i=2;i<=m;i++)
{
yh[i][1]=yh[i][i]=1;
for(n=2;n<i;n++)
{
yh[i][n]=yh[i-1][n-1]+yh[i-1][n];
}
}
for(i=1;i<=m;i++)
{
for(n=1;n<=i;n++)
{
printf("%d ",yh[i][n]);
}
printf("\n");
}
return 0;
}
我解决不了N,只有等待高手了!
⑨ 请用C语言编程:输入一个正整数,各输出n行的正(倒)三角形宝塔图案
正三角形:第几行就是几颗星
倒三角形:第几行就是n-几颗星
正宝塔:第几行就是几*2-1颗星,前面加n-几个空格
用i循环控制行数,循环中用i值计算具体输出几个空格和星号
#include<stdio.h>
#defineKG(n-i)
#defineXH(i*2+1)
voidmain(){inti,j,n;
scanf("%d",&n);
for(i=0;i<n;i++){
for(j=0;j<KG;j++)printf("");
for(j=0;j<XH;j++)printf("*");
printf(" ");
}
}
倒宝塔,修改程序中以下两句即可
#defineKG(i)
#defineXH((n-i-1)*2+1)
⑩ 用C语言编写程序:输入行数n,打印出杨辉三角。小女先行谢过各位仁兄啦
#include<stdio.h>
void main()
{
int a[8][9]={0},i,j;
for(i=0;i<8;i++)
a[i][0]=1;
for(i=0;i<7;i++)
for(j=0;j<7;j++)
a[i+1][j+1]=a[i][j]+a[i][j+1];
for(i=0;i<8;i++)
{
for(j=0;a[i][j]!=0;j++)
printf("%3d",a[i][j]);
printf("\n");
}
}
运行结果:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
Press any key to continue
你只要将8改成输入的即可。。。。
这是很久之前我自己写的,你有空的话可以去我的空间看看,里面有我学C时用的那本书《C/C++程序设计》吴国凤 宣善立主编的。。。的课后题答案,我也上传了一份,你可以参考一下看看。。。