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

本來計劃一個暑假多刷一些關于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
推荐阅读
不用電腦的cad編輯軟件
不用電腦的cad編輯軟件
相信大家在進行CAD的編輯和轉換都會遇到不小的問題,因為經常都會遇到一些付費軟件,需要我們進行付費才能使用一些高級的功能,今天小編就給大家介紹兩個完全免費的CAD軟件,讓大家以後可以更加方便的使用CAD!一、迅捷CAD編輯器迅捷CAD編輯器...
2025-03-14
咋樣提升你的網店銷量
咋樣提升你的網店銷量
注冊一個網店很簡單,隻要商家們按照相關流程去就行,可是要想将店鋪真正做起來,還是有些難度的,有些網店剛開之後,店鋪的銷量根本就不理想,那怎樣才能讓網店更快的有銷量?接下來我們就來給大家講解一下這方面的内容。1、優化寶貝排名:想要獲取更好的展...
2025-03-14
簡單教務管理系統設計
簡單教務管理系統設計
随着生活質量的提高,很多家長都對孩子的教育緊張起來,中國式教育還是那句話不讓孩子輸在起跑線上,所以現在的培訓學校越來越多,那麼要是學校越做越大是不是傳統的教學管理模式也要改變,要是還是一成不變的話那就很容易造成不必要的浪費人力物力和财力,所...
2025-03-14
如何用手機生成證件照
如何用手機生成證件照
教你用手機直接生成證件照,太簡單了,證件照在家也能一鍵搞定很多人拍照還是習慣性跑到照相館,每次拍出來的照片又不是很令人滿意(那是相當不滿意!),費時又糟心,這種感覺我可不想再體驗了...其實現在在家裡就可以自己拍攝證件照了,大門不出二門不邁...
2025-03-14
計算機專業考軟考建議哪個科目
計算機專業考軟考建議哪個科目
對于一些不知道軟考證的人,尤其是女生,他們不知道軟考證的含金量。軟考哪個方向适合女生?如果是計算機相關專業,有一定基礎的話,又沒有相關工作經驗,可以直接報考軟考中級。軟考初級的話,對于計算機專業出身的朋友來說,技術含量略低,對自身能力、價值...
2025-03-14
Copyright 2023-2025 - www.tftnews.com All Rights Reserved