代码来源:DeathYmz
AC的C++语言程序如下:
#include<iostream>
#include<cstdio>
#include<cstring>
#include<cmath>
using namespace std;
//水题写的很碎emmmm一开始没有构思好 考虑全面就好
const int N=8;
int main()
{
int s[10];
while(scanf("%d",&s[0])!=EOF)
{
int k=0;
for(int i=1;i<9;i++)
scanf("%d",&s[i]);
while(!s[k]&&k<9) k++;
for(int i=k;i<9;i++)
{
if(s[i]==0)
continue;
else if(i==k)//
{
if(i==8)
printf("%d",s[i]);
else if(i==7)
{
if(s[i]>0)
s[i]==1?printf("x"):printf("%dx",s[i]);
else if(s[i]<0)
s[i]==-1?printf("-x"):printf("%dx",s[i]);
}
else if(s[i]==1||s[i]==-1)
s[i]==1?printf("x^%d",N-i):printf("-x^%d",N-i);
else
printf("%dx^%d",s[i],N-i);
}
else if(i==8)
s[i]>0?printf(" + %d",s[i]):printf(" - %d",-s[i]);
else if(i==7)
{
if(s[i]>0)
s[i]==1?printf(" + x"):printf(" + %dx",s[i]);
else if(s[i]<0)
s[i]==-1?printf(" - x"):printf(" - %dx",-s[i]);
}
else if(s[i]>0)
s[i]==1?printf(" + x^%d",N-i):printf(" + %dx^%d",s[i],N-i);
else if(s[i]<0)
s[i]==-1?printf(" - x^%d",N-i):printf(" - %dx^%d",-s[i],N-i);
}
if(k>=9) printf("0");
printf("\n");
}
return 0;
}