1. 程式人生 > >7-3 一元多項式求導 (18 分)

7-3 一元多項式求導 (18 分)

設計函式求一元多項式的導數。

輸入格式:
以指數遞降方式輸入多項式非零項係數和指數(絕對值均為不超過1000的整數)。數字間以空格分隔。

輸出格式:
以與輸入相同的格式輸出導數多項式非零項的係數和指數。數字間以空格分隔,但結尾不能有多餘空格。

輸入樣例:
3 4 -5 2 6 1 -2 0
輸出樣例:
12 3 -10 1 6 0

#include<stdio.h>
int main()
{
    int a,b;
    int flag = 0;
    while(scanf("%d %d",&a,&b) == 2){
        if(b)
{ if(flag) printf(" "); printf("%d %d",a*b,b-1); flag = 1; } } if(flag == 0) printf("0 0"); }

1.不需要用陣列完全儲存輸入再處理輸出,每次讀入一對數可以直接輸出。
2.scanf()返回讀入的資料個數,也可以用!=EOF判斷輸入結束,printf返回輸出字元個數。
3.如果沒有輸入,或者只輸入一對數且指數為0,此題設定應輸出“0 0”,所以需要判斷有處理過合理輸出後flag!=0。