设计函数求一元多项式的导数。
输入格式:
以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数)。数字间以空格分隔。
输出格式:
以与输入相同的格式输出导数多项式非零项的系数和指数。数字间以空格分隔,但结尾不能有多余空格。
输入样例:
3 4 -5 2 6 1 -2 0
输出样例:
12 3 -10 1 6 0
代码:
#include <iostream>
#include <stdlib.h>
using namespace std;
typedef struct LNode
{
double coef;
int expn;
struct LNode *next;
}LNode ,*LinkList;
LinkList PutL()
{
LNode head;
LinkList L = &head;
head.next = NULL;
int e;
double c;
while(cin>>c>>e)
{
L->next = (LinkList)malloc(sizeof(LNode));
L->next->coef = c;
L->next->expn = e;
L = L->next;
}
L->next = NULL;
return head.next;
}
int main()
{
int f=0,k=-1;
int x,z;
LinkList L = PutL();
while(L)
{
x=L->coef*L->expn;
z=L->expn -1;
if(x!=0)
{
if(f)
cout<<" ";
else
f=1;
cout<<x<<" "<<z;
}
L = L->next;
k++;
}
if(x==0&&k==0)
{
cout<<"0 0";
}
return 0;
}