最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

c語言1.2 詳解while

2022-06-18 18:11 作者:天絡  | 我要投稿

在寫c語言的過程中有時會添加調試語句來看自己寫到哪了,例如上一篇的計算整數(shù)有幾位的代碼

#include<stdio.h>

int main()4

int x;//定義變量

? int n=0;?

? ("%d",&x);?

? n++;?

? x/=10;?

? while(x>0) {

n++;??

x/=10;??

}

printf("%d\n",n);

? return 0;?

?}

只需要在while的循環(huán)里面加個printf("%d,%d",x,n);

就可以查看每次循環(huán)的步驟

例如輸入一個123456進去,運行之后就會把每次整除以及整除一次10,n自加一次顯示出來

/n換行

或者也會經(jīng)常見到在代碼中加printf(“hr1/2/3......”);這也是一種用來調試的手段,來讓自己分清自己的代碼寫到哪了。

而代碼會有邏輯錯誤,即便成功編譯了或者運行成功了也會有邏輯錯誤

如果把整除x/=10;去掉,只留一個自增n++;那么代碼就會無限循環(huán)下去

上面用了兩次n++; x/=10;

如果把第一次的去掉,當然程序也可以順利運行,并可以仍可以計算出123456為6位數(shù)。

不過需要驗證

測試程序常使用邊界數(shù)據(jù),如有效范圍兩端的數(shù)據(jù),特殊的倍數(shù)等。

以上面的為例,假設去掉第一段n++;x/=10;了,就不能在計算0,0也是個位數(shù),在輸入的時候就不會達成while(x>0)的的條件

在前面多加一段n++,就會在0的基礎上先+1,之后再繼續(xù)整除,就不會出現(xiàn)無法計數(shù)0的情況

同樣也可以寫成這樣

用如果,否則的語句也可以避免無法計數(shù)0的情況,如果0沒有構成x>0這一條件,while就不會執(zhí)行循環(huán),否則就執(zhí)行n++;然后程序結束,最后仍計數(shù)0為1位數(shù)

不過要記得在提交作業(yè)的時候,要把輸入的調試用的語句加上//注釋,避免系統(tǒng)報錯。

c語言1.2 詳解while的評論 (共 條)

分享到微博請遵守國家法律
华安县| 嘉义县| 武平县| 砚山县| 保山市| 石台县| 涟水县| 通辽市| 平邑县| 高安市| 来安县| 北川| 汶川县| 长阳| 广安市| 永川市| 静宁县| 休宁县| 鄂州市| 水富县| 安顺市| 合作市| 阜城县| 阿图什市| 电白县| 图片| 思茅市| 册亨县| 当阳市| 德江县| 蓝田县| 中方县| 宣威市| 恩施市| 彭阳县| 闻喜县| 石门县| 荔浦县| 天柱县| 任丘市| 大悟县|