设计函数求一元多项式的导数。
输入格式:
以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。
输出格式:
以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。
输入样例:
3 4 -5 2 6 1 -2 0
输出样例:
12 3 -10 1 6 0
#include <bits/stdc++.h>
typedef struct Type
{
int num, index, der;
struct Type *next;
}Type;
int main()
{
Type *L, *rearptr, *curptr;
int nm, ide;
L = rearptr = (Type *)malloc(sizeof(Type));
while(scanf("%d %d", &nm, &ide) != EOF)
{
curptr = (Type *)malloc(sizeof(Type));
curptr->num = nm, curptr->index = ide;
curptr->der = nm * ide;
rearptr->next = curptr;
rearptr = curptr;
}
rearptr->next = NULL;
Type *p = L->next;
int dex = 0;
while(p)
{
if(p->index - 1 >= 0)
{
if(dex)
printf(" ");
printf("%d %d", p->der, p->index-1);
dex++;
}
p = p->next;
}
if(L->next == NULL || L->next->index == 0)
printf("0 0");
}