1、這個(gè)程序有BUG,執(zhí)行時(shí)極可能報(bào)告段錯(cuò)誤(segmentation fault)。錯(cuò)誤原因在于:指針p沒(méi)有初始化。
成都創(chuàng)新互聯(lián)主營(yíng)雙清網(wǎng)站建設(shè)的網(wǎng)絡(luò)公司,主營(yíng)網(wǎng)站建設(shè)方案,成都app軟件開(kāi)發(fā)公司,雙清h5小程序制作搭建,雙清網(wǎng)站營(yíng)銷推廣歡迎雙清等地區(qū)企業(yè)咨詢
2、代碼沒(méi)問(wèn)題。有一個(gè)本程序的實(shí)例在運(yùn)行了,先關(guān)閉這個(gè)再運(yùn)行就行了。
3、建議不要把數(shù)組變量和一般int變量放在一起賦值,int c[10]={...};int i;第一個(gè)for循環(huán)是i=0不是i=o,數(shù)字和字母,如果你是直接COPY來(lái)的錯(cuò)誤就在這里。輸出結(jié)果是1234567890 。
4、導(dǎo)致編譯不通過(guò)。myss函數(shù)聲明時(shí),行末沒(méi)有添加在system(pause);后添加return 0;另外在main函數(shù)內(nèi)連續(xù)使用兩個(gè)以上scanf的時(shí)候會(huì)導(dǎo)致輸入值錯(cuò)誤。
1、若要進(jìn)行可定長(zhǎng)數(shù)字序列的創(chuàng)建,建議使用鏈表。
2、折半查找必須是排序過(guò)的有序表?;旧?,所有常規(guī)的查找算法,都是針對(duì)的有序表,無(wú)序的表,只能逐個(gè)比較。
3、代碼不夠簡(jiǎn)潔??!在打印出來(lái)的S和I中間加了一個(gè)制表符,否則兩個(gè)數(shù)可能不太容易識(shí)別。
4、在變量j參與的for循環(huán)里面,G的值沒(méi)有提前置零。你的邏輯是拿男方的總數(shù)去和每一個(gè)女方的總數(shù)可能值去比較,所以每輪比較前G值應(yīng)該置零。
5、程序員有時(shí)必需調(diào)用一個(gè)空浮點(diǎn)庫(kù)函數(shù)(例如sqrt(), 或任何一個(gè)函數(shù)都可以)以強(qiáng)制裝載浮點(diǎn)支持。
scanf的格式加\n,含義特殊,不是輸入一個(gè)回車,而是輸入完一個(gè)數(shù)字后,必須等待一個(gè)非空格、制表符、回車的輸入,程序才會(huì)繼續(xù)。
比如這個(gè)錯(cuò)誤rror C2065: Applicance : undeclared identifier,你就可以百度一下undeclared identifier,你就會(huì)知道是因?yàn)槲凑f(shuō)明的標(biāo)識(shí)符,也就是沒(méi)有先定義就使用了。其他的也可以這樣,一個(gè)個(gè)的改。
1)在判斷相等時(shí)把“=”和“==”搞混,只要你編過(guò)像樣的程序肯定犯過(guò)這個(gè)錯(cuò)誤,就算你是高手,照犯不誤。我認(rèn)為這事最容易出錯(cuò)還不容易檢查的地方。(2)數(shù)組越界,因?yàn)閏不對(duì)數(shù)組邊界進(jìn)行檢查,很容易越界。