首页
/
每日頭條
/
科技
/
c盤大小計算公式
c盤大小計算公式
更新时间:2025-03-14 17:13:05

本來計劃一個暑假多刷一些關于PAT的題目,以及提升一下自己的編程能力。

結果,暑假倒是過去了,也步入研二了,但是這些文章呢,一直遲遲沒有寫出來。

我感覺非常不好意思,所以,從今天開始,我又回來繼續寫這些關于編程的文章了。

一方面呢,是為了提升自己的實力,另一方面呢,也是為了讓更多小夥伴能跟我一起提升編程技術。

今天這道題目呢,是收錄在PAT乙級中的第1010題,也就是一元多項式求導。

題目要求如下:

1、以指數遞降的方式輸入多項式非零項系數和指數(絕對值均為不超過1000的整數),但這個括号裡的内容,其實并無太大作用,其實可以忽略這個,因為在這道題目裡,它并沒有要求對整數的絕對值進行一個判斷。

2、要求以與輸入相同的格式來輸出結果,也就是輸出導數多項式的非零項系數和指數,但是結尾不能有多餘空格,以及要特别注意一點:“零多項式”的指數和系數都是0,表示為0 0。

我來根據題目給的例子,來講清楚這道題目的實現原理。

實現原理分析

c盤大小計算公式(用C語言進行編程)1

我一直認為,在正式開始做編程題之前,理清邏輯是非常重要的。

而流程圖恰好能幫助我們來理清邏輯。

繪出流程圖,理清楚程序邏輯

c盤大小計算公式(用C語言進行編程)2

如上圖所示,這就是該程序的流程圖。

代碼實現

根據該流程圖,我們就能梳理清楚如何寫代碼。

1、要輸入非零項指數和系數,也就是需要用到一個scanf函數來分别輸入指數和系數。

而且是要在循環輸入,這裡呢因為沒有指定輸入指數和系數的數量,所以可以用到一個while(1)作為默認值,以及之後進行一個if語句判斷,如果回車enter之後,那就退出該循環。

可以用到if(getchar()!='\n')來進行回車輸入判斷。

2、對零多項式進行一個判斷,我們可以注意到,求導之前的一元多項式,是有常數項的,也就是-2x^0,求導之後得到的指數系數分别為0和-1,常數項的導數為0。

還有零多項式的指數和系數都為0,我們隻需要考慮系數為0的情況,因為指數為0的時候,這個數就直接為0了。

c盤大小計算公式(用C語言進行編程)3

3、這也是我在之前的幾篇文章中一直會提到的,就是最後一列沒有空格的問題,完全可以新定義一個變量count,然後開始進行記錄,如果>0的時候,就輸出空格,就是每一次輸出之後加上空格,直到最後一次為止是沒有空格的。

在做這道題目的時候,我也遇到過許多問題:

錯誤踩點

比方說我沒有對printf("0 0")進行一個額外判斷,要注意,這種情況,隻有當number2為0的時候,且還要滿足一個條件,也就是在輸出結果最終為0的時候,不要出現重複的0,也就是需要把0給隐藏。

問題代碼部分:

//一元多項式求導 #include<stdio.h> int main(){ int number1 = 0; int number2 = 0; int count = 0; while(1){ scanf("%d %d", &number1, &number2); if(number2==0){//這部分代碼是存在問題的,所以需要更改。 printf("0 0"); } if(number2!=0){ if(count>0){ printf(" "); } printf("%d %d", number1*number2, number2-1); count ; } //這裡就是需要特别關注的地方了,為什麼需要用到count來進行計數,就是為了解決空格 //空格問題需要在這裡來進行解決,因為我們在第一次輸出結果的時候 //是從最開始開始的,比方說從12 3這樣是一對,那麼下一對-10 1與這一對之間是有一個空格隔開的 //所以需要用到一個count //至于上面的printf("0 0");部分,就是當count為初始值的時候,也就是不滿足count不為零的時候 if(getchar()=='\n'){ break; } } return 0; }

c盤大小計算公式(用C語言進行編程)4

c盤大小計算公式(用C語言進行編程)5

正确結果與代碼實現

//一元多項式求導 #include<stdio.h> int main(){ int number1 = 0; int number2 = 0; int count = 0; while(1){ scanf("%d %d", &number1, &number2); if(number2==0){ if(count==0){ printf("0 0"); } } if(number2!=0){ if(count>0){ printf(" "); } printf("%d %d", number1*number2, number2-1); count ; } if(getchar()=='\n'){ break; } } return 0; }

測試結果

c盤大小計算公式(用C語言進行編程)6

c盤大小計算公式(用C語言進行編程)7

很顯然結果是正确的,但是呢,在具體做題的時候我會遇到許多問題,需要靜下心來一點點來解決,最終成功完成這道題目了。

總結

總的來說,這道題目其實難度并不大,但是需要細心細心再細心,不然就會出很多錯誤,特别是注意用到while循環,以及用條件語句對回車結束循環進行判斷。

,
Comments
Welcome to tft每日頭條 comments! Please keep conversations courteous and on-topic. To fosterproductive and respectful conversations, you may see comments from our Community Managers.
Sign up to post
Sort by
Show More Comments
推荐阅读
模拟器怎麼調和平精英畫質最高
模拟器怎麼調和平精英畫質最高
《混沌效應》是一款Roguelike動作遊戲,是BLAZBLUE正版授權的衍生之作。進入一個虛實交織、危機四伏的世界,一次次地深入探索——霓虹夜幕下的碼頭、荒蕪破敗的廢墟、神秘的自然實驗室......數個風格迥異的世界等待着發掘,那裡不但有...
2025-03-14
怎麼在台式電腦上裝無線網卡上網
怎麼在台式電腦上裝無線網卡上網
現在網絡越來越普及,人們也開始追求便利舒适的上網方式,例如無線上網,沒有了網線的束縛,上網變得更加自由和方便。一般情況下,我們都是用手機,iPad或筆記本電腦來進行無線上網,那麼台式機是不是也可以無線上網呢?毋庸置疑,答案當然是可以的,今天...
2025-03-14
fastboot bootloader概念
fastboot bootloader概念
各位朋友們大家好,這裡是Ma說手機。上一篇文章我們讓大家認識了手機的恢複模式——recovery。我相信大家還有很多疑惑:通過recovery可以升級系統刷機雙清,可是用數據線連接電腦的刷機方法又是什麼呢?雖然手機已經對系統中的文件進行了加...
2025-03-14
自行車有哪五部分組成部分
自行車有哪五部分組成部分
自行車有哪五部分組成部分?自行車由車架、輪胎、腳踏、刹車、鍊條5個重要部件組成,其基本部件缺一不可其中,車架是自行車的骨架,它所承受的人和貨物的重量最大,今天小編就來說說關于自行車有哪五部分組成部分?下面更多詳細答案一起來看看吧!自行車有哪...
2025-03-14
廢棄的手機能當電腦攝像頭
廢棄的手機能當電腦攝像頭
廢棄的手機能當電腦攝像頭?如今部分新款筆記本并沒有标配攝像頭,還有些機型攝像頭位置不好(如位于下邊框或Fx鍵位的彈出式攝像頭),DIY攢機用戶更是需要自行購買USB外置攝像頭如果你遇到了電腦沒有攝像頭或攝像頭效果不佳的問題,不妨考慮将身邊的...
2025-03-14
Copyright 2023-2025 - www.tftnews.com All Rights Reserved