當使用者輸入的內容不是程式設計師期待的內容怎麼辦?

2021-10-14 16:42:07 字數 843 閱讀 5032

針對這個問題,其實很好處理,但是多多少少也需要使用者的配合,as we all know, 任何程式都不可能是絕對完美的,廢話不多說直接上**。

#include

"stdio.h"

intmain()

你在寫**的時候讓使用者輸入是不是總是這樣子?求爺爺喊奶奶,一旦輸入的數字不合格或者根本不是數字的時候,將會面臨「災難性的後果」,這樣的**顯然是非常糟糕的,學過資料結構的同學肯定都知道,乙個好的演算法必須要滿足五個特性,而這串**顯然已經不滿足健壯性了,可見他是非常脆弱的,使用者的輕輕一擊便會讓演算法結果產生翻天覆地的變化。

有沒有什麼裝備給這串**武裝自己呢? 顯然是有的,否則也不會有這篇文章了,廢話不多說,直接上**。

#include

"stdio.h"

intmain()

return

520;

很容易看出這段**與上述**的不同,c語言的初學者可能很難想到scanf還是可以有返回值的,當返回值為1時代表著輸入內容一切無誤,一旦不為1則說明了輸入的內容是違規的。這樣就可以防止在錯誤的情況下繼續放任**往下面執行。

可能細心的同學會發現,內部為什麼還有一層迴圈呢?這是為了防止這個迴圈會無限的進行下去,有興趣的小夥伴可以嘗試刪去內部迴圈試一下。

優化到此為止嘛? 當然不是,這就讓我們考慮到了這個迴圈的其他用途,當我們想要的temp值在某個區間怎麼辦嘛?這就需要我們靈活的加判別條件啦, 舉個栗子;

#include

"stdio.h"

intmain()

return

520;

我的父親不是程式設計師

我的父親不是程式設計師 我的父親不是程式設計師。首先說,我的父親不是真正的程式設計師。他是真正的靠自己的雙手打造了自己的天下。也可以說,我的父親是個知識分子了,他喜歡沒事的時候謝謝文章,寫寫詩,作作詞!說我的父親不是程式設計師得從高考結束說起。bug去了大學的那天,自己對一切都很滿足,大學,第一印象...

程式設計師,不是你們想象的那樣

長久以來,大家經常對程式設計師帶有各種誤解,感覺這個職業的人簡直就是另類?本文我們不講程式設計技術不講演算法,就來一一解開大家對程式設計師的誤解吧。誤解一 程式設計師都不善言語。從早到晚都坐在電腦面前敲 找bug,一坐下來就像屁股長釘子一樣不知道起來,總是一副悶悶的樣子。這就是大多數人心中對程式設計...

程式設計師 了解使用者的需求

最近一直在做乙個公司內部的認賬系統。由於是小公司,並且是第一版,需求並不是很明確,有些內容,邏輯得程式設計師自己琢磨 苦逼啊 然後呢,其中就有這麼個內容,由於原流程還需要涉及到訂單的狀態,比較複雜,就簡單的只用 認賬 開票來做個簡單的流程圖 1.財務的流程其實非常簡單,是這樣的 只需要最後的認賬,與...