題目內容:
乙個多項式可以表達為x的各次冪與係數乘積的和,比如:
2x6+3x5+12x3+6x+20
現在,你的程式要讀入兩個多項式,然後輸出這兩個多項式的和,也就是把對應的冪上的係數相加然後輸出。
程式要處理的冪最大為100。
輸入格式:
總共要輸入兩個多項式,每個多項式的輸入格式如下:
每行輸入兩個數字,第乙個表示冪次,第二個表示該冪次的係數,所有的係數都是整數。第一行一定是最高冪,最後一行一定是0次冪。
注意第一行和最後一行之間不一定按照冪次降低順序排列;如果某個冪次的係數為0,就不出現在輸入資料中了;0次冪的係數為0時還是會出現在輸入資料中。
輸出格式:
從最高冪開始依次降到0冪,如:
2x6+3x5+12x3-6x+20
注意其中的x是小寫字母x,而且所有的符號之間都沒有空格,如果某個冪的係數為0則不需要有那項。
輸入樣例:
6 25 33 12
1 60 20
6 25 3
2 12
1 60 20
輸出樣例:
4x6+6x5+12x3+12x2+12x+40
時間限制:500ms記憶體限制:32000kb
解題思路:
用陣列解決,陣列下標表示冪次,陣列元素的數值表示冪的係數。
**如下:
#include
intmain()
;int flag=
0,k=0;
int m,n,i;
while
(scanf
("%d %d"
,&m,
&n)!=
eof)
for(i=
100;i>=
0;i--)if
(a[i]
)else
}else
if(a[i]==-
1)else
}else
else}}
if(flag&&a[i-1]
>0)
printf
("+");
}if(k==0)
printf
("0");
return0;
}
注意事項:
1.程式要處理的冪最大為100,陣列大小至少是101
2. 注意題中隱含條件,要輸出的是多項式
(1)係數為1或冪次為1,這個1要省略,係數為-1時,1也要省略
(2)第一項沒有「+」
(3)係數為負時,前面沒有「+」,不用單獨輸出「-」,係數自帶「-」
(4)某一項的係數為0時,該項不用輸出
(5)如果所有項的係數都為0,則最後要輸出0
(6)0次冪時,只輸出係數,不輸出「x」
總結
C語言 多項式加法
c語言 多項式加法 乙個多項式可以表達為x的各次冪與係數乘積的和,比如 2x6 3x5 12x3 6x 20 現在,你的程式要讀入兩個多項式,然後輸出這兩個多項式的和,也就是把對應的冪上的係數相加然後輸出。程式要處理的冪最大為100。總共要輸入兩個多項式,每個多項式的輸入格式如下 每行輸入兩個數字,...
C語言 多項式加法
目錄 題目內容 思路 中國大學mooc平台浙江大學翁愷老師,程式設計入門 c語言 第7周程式設計練習多項式加法 乙個多項式可以表達為x的各次冪與係數乘積的和,比如 2x6 3x5 12x3 6x 20 現在,你的程式要讀入兩個多項式,然後輸出這兩個多項式的和,也就是把對應的冪上的係數相加然後輸出。程...
多項式加法
題目內容 乙個多項式可以表達為x的各次冪與係數乘積的和,比如 現在,你的程式要讀入兩個多項式,然後輸出這兩個多項式的和,也就是把對應的冪上的係數相加然後輸出。程式要處理的冪最大為100。輸入格式 總共要輸入兩個多項式,每個多項式的輸入格式如下 每行輸入兩個數字,第乙個表示冪次,第二個表示該冪次的係數...