2-7 一元多项式求导 (20分)
设计函数求一元多项式的导数。
输入格式:
以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。
输出格式:
以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。
输入样例:
3 4 -5 2 6 1 -2 0
输出样例:
12 3 -10 1 6 0
代码
#include <stdio.h>
#include <stdlib.h>
struct Num{
int xi;int zhi;
};
int main(){
struct Num num[1000];
int i=1;
scanf("%d %d",&num[0].xi,&num[0].zhi);
while(num[i-1].zhi!=0){
scanf("%d %d",&num[i].xi,&num[i].zhi);
i++;
}
int flag=0;
for(int j=0;j<i;j++){
if(flag==1&&(num[j].xi*num[j].zhi)!=0) printf(" ");
if((num[j].xi*num[j].zhi)!=0){
printf("%d %d",num[j].xi*num[j].zhi,num[j].zhi-1);
flag=1;
}
}
if(flag==0) printf("0 0");
}