C程序请教

来源:百度知道 编辑:UC知道 时间:2024/05/24 16:12:29
当用户输入(a+b)^2
程序给出a^2 + 2ab + b^2

怎么编? 请写出来, 谢谢

如果只完成这个,完全不用理会用户输入什么。。。
程序如下

#include <stdio.h>

void main(){
char a,b;
int i,j,n;
scanf("(%c+%c)^%d",&a,&b,&n);
if(n==2)
printf("%c^2 + 2%c%c + %c^2\n",a,a,b,b);
else printf("输入错误\n");
}

如果是要计算二项式展开,程序如下

#include <stdio.h>

long xishu(int p,int q){
int i;
long result=1;
for(i=1;i<=p;i++)
result*=i;
for(i=1;i<=q;i++)
result/=i;
for(i=1;i<=p-q;i++)
result/=i;
return result;
}

void main(){
char a,b;
int i,j,n;
printf("本程序实现二项式展开功能,请输入二项式表达式\n");
while(1){
scanf("(%c+%c)^%d",&a,&b,&n);
if(n<=1||n>=20){
printf("本程序二项式指数必须在2到20之间,请重新输入\n");
fflush(stdin);
}
else break;
}
printf("%c^%d",a,n);
for(i=1;i<=n-1;i++){
printf(