#include<iostream>
using namespace std;
int main()
{
int k,a[100][100],m=1,n=1,s,x,p=1,f_1,f_2;
char x_1,x_2,x_3,x_4,x_5,x_6;
a[1][0]=1;
cout<<"请输入二项式 :"<<endl;
cin>>x_1>>x_2>>x_3>>x_4>>x_5>>x_6>>k;
f_1=k-1;
f_2=k+1;
for(int i=0;i<=k;i++)
a[0][i]=1;
for(int j=3;j<=f_2;j++)
{
x=1;
while(x<(j-1))
{
s=0;
for(int z=0;z<=n;z++)
s=s+a[m-1][z];
a[m][n]=s;
x++;
m++;
n--;
if(n==0)
a[m][n]=1;
}
m=1;
n=j-1;
}
cout<<"您想要的展开式为 :"<<endl;
cout<<"a^"<<k;
for(int y=1;y<=(k-1);y++)
{
cout<<"+"<<a[p][k-p]<<"a^"<<f_1<<"b^"<<(k-f_1);
p++;
f_1--;
}
cout<<"+b^"<<k<<endl;
return 0;
}
看是简单,其实比打印杨辉三角难一点点,因为有了打印杨辉三角的程序,把它的思想核心掉过来,再加上字母的打印即可完成。