void Insert_list(Sqlist L,int pos,ElemType e)//在POS處插入e
成都創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括玉門(mén)網(wǎng)站建設(shè)、玉門(mén)網(wǎng)站制作、玉門(mén)網(wǎng)頁(yè)制作以及玉門(mén)網(wǎng)絡(luò)營(yíng)銷(xiāo)策劃等。多年來(lái),我們專(zhuān)注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,玉門(mén)網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶(hù)以成都為中心已經(jīng)輻射到玉門(mén)省份的部分城市,未來(lái)相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶(hù)的支持與信任!
{
int i;
if(pos 1 || pos L.length+1)
printf("The num is out!");
L.elem = (ElemType *)realloc(L.elem,(++L.length)*sizeof(ElemType));
//問(wèn)題很繞主要就出在length你剛開(kāi)始就加了1
if(pos == L.length)
L.elem[L.length-1] = e;
else
{
i = L.length - 2;
while(i != pos - 2) {
L.elem[i+1] = L.elem[i];
i--;
}
L.elem[++i] = e;
}
}
如果修改如下,是不是更容易理解:
void Insert_list(Sqlist L,int pos,ElemType e)//在POS處插入e
{
int i;
if(pos 1 || pos L.length+1)
printf("The num is out!");
L.elem = (ElemType *)realloc(L.elem,(L.length + 1)*sizeof(ElemType));
if(pos == L.length + 1) //如果為之前的長(zhǎng)度+1
L.elem[L.length] = e; //那么直接插在最后
else
{
i = L.length - 1; //否則從之前的最后一個(gè)元素開(kāi)始遍歷,也就是之前的長(zhǎng)度-1的位置開(kāi)始
while(i != pos - 2) { //找到pos-2的位置,其實(shí)是找pos-1的位置,即插入位置,但是為了移動(dòng)元素,必須到pos-2,因?yàn)閜os-1處的元素也需要向后移動(dòng),如果是到pos-1的話,那么pos-1處的元素將丟失
L.elem[i+1] = L.elem[i];
i--;
}
L.elem[++i] = e;//最終在pos-1處插入元素
}
L.length++;//最后再讓長(zhǎng)度加1
}
這樣寫(xiě)似乎比較容易理解,先增加長(zhǎng)度會(huì)使問(wèn)題復(fù)雜化
測(cè)試前提:showList中iL.length而不是L.length+1
測(cè)試樣例
int main()
{
Sqlist L;
Init_list(L);
Insert_list(L,1,1);
Insert_list(L,1,2);
Insert_list(L,2,3);
Insert_list(L,4,4);
Insert_list(L,3,5);
Show_list(L);
}
測(cè)試結(jié)果
2 3 5 1 4 ,沒(méi)有問(wèn)題
樓主的意思是在str1中刪除str2中出現(xiàn)的字符?那么改成:
#includestdio.h
void main ()
{
char str1[9]={'t','i','n','m','f','g','y','f','s'};
char str2[3]={'A','s','g'};
int i,k,l;
for(i=0;i9;i++)
{
l=0;
for(k=0;k3;k++)
{
if (str1[i]=str2[k])
{l=1;break;}
}
if l!=1
printf("%c",str1[i]);
}
}
利用C語(yǔ)言刪除字符串中所有指定的字符方法如下:
1.基本方法是,編寫(xiě)函數(shù)fun:deletechar()。這個(gè)函數(shù)需要接受兩個(gè)參數(shù)的傳入,一個(gè)為該字符串str,另一個(gè)為想刪除的字符c。通過(guò)對(duì)整個(gè)字符串的逐個(gè)遍歷,凡是檢測(cè)到字符為c,則刪除此字符。具體實(shí)現(xiàn)代碼如下:
2.在主函數(shù),只需要接受用戶(hù)輸入的字符串,然后調(diào)用deletechar()函數(shù),最后輸出結(jié)果即可。主函數(shù)代碼實(shí)現(xiàn)部分如下:
擴(kuò)展資料:
1.remove()是C語(yǔ)言中的函數(shù),一般作用是刪除數(shù)組、鏈表對(duì)象所有的元素。函數(shù)原型是
2.remove()函數(shù)用于刪除指定的文件,其原型如下:
參考資料:remove()函數(shù)-百度百科
既然是數(shù)組,表示數(shù)據(jù)為線性陣列了,想刪除其中一個(gè)數(shù)據(jù),是不可能的,只能用該位置以后的數(shù)據(jù)整體平移一個(gè)位置覆蓋當(dāng)前位置。例如:數(shù)組數(shù)據(jù)
1
2
3
4
5
6
7,想刪除3,那么得到的新數(shù)組為1
2
4
5
6
7,其中
4
5
6
7
數(shù)據(jù)的位置相對(duì)原始數(shù)組位置整體平移減小1。
當(dāng)然想是想快速刪除數(shù)據(jù),可以考慮使用數(shù)據(jù)鏈表,對(duì)數(shù)組單鏈即可
本文標(biāo)題:c語(yǔ)言什么函數(shù)有刪除數(shù)據(jù) c語(yǔ)言什么函數(shù)有刪除數(shù)據(jù)
URL鏈接:http://jinyejixie.com/article20/hpcoco.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、服務(wù)器托管、用戶(hù)體驗(yàn)、App設(shè)計(jì)、、企業(yè)網(wǎng)站制作
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)