哪位幫忙看一下為什麼這段程式達不到預期的效果吧謝謝

時間 2022-11-23 17:21:28

1樓:尋平陽

1全部int i,n,k=0;

for(i=0;a[i]!='\0';i++)

k++;n=k;

//上面兩句的目的是獲得字串的長度

//輸入*a*b*******,則k=11

//上面這幾句沒問題,關鍵是下面三句判斷上有些問題。

for(i=k;a[i]!='*';i--)

n=i+1;

a[n]='\0';

//如果要實現你要的功能,上面三句應該是從字串的最後乙個位元組向前依次查詢'*',直到找到不是'*'的那個位元組,然後該位元組之後的那個位元組,即最後找的那個'*'變成'\0'。

1、因為k是字串長度,所以最後乙個位元組應該是a[k-1],所以for迴圈應該是for(i=k-1;

2、因為依次查詢'*',直到不是'*'才跳出,所以for迴圈應該是for(i=k-1;a[i]=='*'

3、因為不是'*'迴圈會跳出,所以n=i即是迴圈找到的最後乙個'*'。

所以應該修改為

for(i=k-1;a[i]=='*';i--)

n=i;

a[n]='\0';

另for迴圈要避免越界,所以更為

for(i=k-1;(a[i]=='*')&&(i>=0);i--)

n=i;

a[n]='\0';

2樓:匿名使用者

//...

void fun( char *a )

void fun( char *a )

或者這樣

void fun( char *a )

3樓:戀紅

void fun( char *a )}

4樓:欱洛

void fun( char *a )

5樓:匿名使用者

#include

void fun( char *a )

1 {int i,n,k=0;

2 for(i=0;a[i]!='\0';i++)3 k++;n=k;

4 for(i=k;a[i]!='*';i--)5 n=i+1;

6 a[n]='\0';

序號為2的那個迴圈在迴圈結束時那個i是使a[i]指向\0的而下面得迴圈就會只進行一次所以不能達到結果

6樓:匿名使用者

for(j=0;j<26;j++)

pp[j]=n;k++;}

樓上的改法沒錯,你的fun函式**質量太差了:

我給你優化一下:

void fun(char *tt, int pp)}}

哪位高手幫忙看一下 600081東風科技主力已經出貨了還是在震倉

個人意見 此股屬主力故意做盤,前期因 要求而背離主市場,故短期做調整,自然是正常,但從趨勢上來看,基本是 趨勢並未完全走壞,所以主以週線為市的化,持股者應減倉,若想主力洗籌的時機掙錢,建議做超 或根據自身 的深淺減倉,忌追高,只等主力方向明確後,再行操作。另外,以現在的情況來看,若節後開盤跳空低開低...

幫忙看一下這是什麼車,幫忙看一下這是什麼車

為了吸引更多眼球,弄出這麼科幻的車,其實沒什麼用。更加不想知道這是什麼車。這是一款概念車,沒錢的人是開不到的車 這就是傳說中的蝙蝠車 一種介於設想和現實之間的汽車。汽車設計師利用概念車向人們展示新穎 獨特 超前的構思,反映人類對先進汽車的夢想與追求。這並不算是車,應該算移動的雕塑,乙個殼子 輪子。屬...

早上8 30左右,哪位幫忙看一下有什麼可以助運呢!還有最好再來個!呵呵!謝謝了

出生 公元1979年2月19日8時30分 陽曆 農曆 一九七九年正月廿三日辰時 生辰八字 己未年 丙寅月 丁巳日 甲辰時 八字過硬,八字喜水,五行缺水,水就是此命的 喜神 你可佩戴綠幽靈助運!生日 公曆 1979年 2月 19日 8時30分生日 農曆 己未年 正月 廿三 辰時 八 字 己未 丙寅 丁...

哪位好心人幫忙給看一下心臟CT結果

哦,有幾點必須說明的。首先一點,就是多排螺旋ct目前至多只能是乙個粗篩,並不代表其結果是非常準確的。所以有疑問的情況都建議進一步作冠狀動脈造影。那才是目前最準確的診斷方法。第二點,如果冠狀動脈狹窄超過70 那麼需要進行血管再通 植入支架或者外科搭橋 的必要 如果是左主幹,那麼50 也有必要 第三點,...

大家分析一下,為什麼,大家分析一下為什麼女朋友和我分手?

可能別人說他等於在說他傻所以他不想叫別人知道 其實你已經喜歡上那個愛你的人了,只是你自己不敢承認罷了!去和愛你的人表白吧,什麼叫不可能,還沒爭取就要放棄嗎?加油!情侶之間真心沒有.夫妻的卻有很多.也有人說,愛情像酒,越久越醇 還有人說,愛情像風,來去無蹤 要我說,愛情像筷子,他們之間誰也離不開誰,為...