程序的大體思路可以是這樣:

成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),青銅峽企業(yè)網(wǎng)站建設(shè),青銅峽品牌網(wǎng)站建設(shè),網(wǎng)站定制,青銅峽網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營(yíng)銷,網(wǎng)絡(luò)優(yōu)化,青銅峽網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競(jìng)爭(zhēng)力。可充分滿足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長(zhǎng)自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
str1是原字符串,str2是待插入的字符串,position是待插入的位置,我們可以這樣,用一個(gè)指針p_cur指向字符串1 str1中的待插入位置position,另一個(gè)指針p_end指向字符串1 str1的尾部,每次插入字符前,把str1中從當(dāng)前位置開(kāi)始一直到結(jié)束字符全部后移一個(gè)位置,空出當(dāng)前位置,然后把要插入的字符放進(jìn)這個(gè)位置,這樣就完成了一個(gè)字符的插入,重復(fù)這個(gè)步驟,直到str2被完全插入。
代碼如下:
#include stdio.h
#include string.h
void insert_str(char str1[],char str2[],int position)
{
/*
insert_str()函數(shù)
功能:將字符串str2插入到str1的position位置處
參數(shù):char str1,char str2 ,int position
返回值:無(wú)
*/
int i;
char *p_end,*p_cur,*p;/*p_end指向第一個(gè)字符串的尾部,p_cur指向被插入的位置*/
p_end=str1+strlen(str1)-1;
p_cur=str1+position-1;
for(i=0;str2[i]!='\0';i++)
{
for(p=p_end;p=p_cur;p--)
{
*(p+1)=*p;/*從p_cur到p_end的全部元素后移一個(gè)位置,此時(shí)p_cur指向的位置就空出來(lái)了*/
}
*p_cur=str2[i];/*把字符串2中的字符插入空出來(lái)的位置*/
p_cur++;/*p_cur下移一個(gè)位置*/
p_end++;/*多了一個(gè)字符,因此p_end也下移一個(gè)位置*/
}
}
void main()
{
char s1[100],s2[20];
int position;
printf("輸入字符串1:\n");
gets(s1);
printf("輸入插入位置:");
do
{
scanf("%d",position);
while(getchar()!='\n');/*這一句可以把輸入position的時(shí)候輸入的回車去掉*/
}while(position0||positionstrlen(s1));
printf("輸入字符串2:\n");
gets(s2);
insert_str(s1,s2,position);
printf("字符串被插入后變成:\n");
puts(s1);
}
這個(gè)很簡(jiǎn)單啊。基本的思路就是先查找到插入或者刪除的數(shù)字所在數(shù)組的位置,如果是插入,就把之后的依次想后挪動(dòng)一個(gè),然后插入;如果是刪除,把之后的依次想前移動(dòng)一個(gè)就行了,不過(guò)別忘了處理最后一個(gè)數(shù)字就行了。要是還有問(wèn)題,我?guī)湍銓?xiě)個(gè)算了。
1、打開(kāi)C-Free,按ctrl+N創(chuàng)建一個(gè)新的文件。
2、然后開(kāi)始調(diào)用函數(shù)。
3、按F9進(jìn)行調(diào)試后發(fā)現(xiàn)沒(méi)有錯(cuò)誤。
4、按F5執(zhí)行程序。
5、輸入想要輸入的數(shù)字。
6、按ENTER鍵輸出結(jié)果,檢驗(yàn)符合結(jié)果,說(shuō)明函數(shù)調(diào)用成功。
c語(yǔ)言是函數(shù)式語(yǔ)言,所以函數(shù)很重要,舉個(gè)例子 #includestdio.h int abc(int a ,int b) /* abc 前的 int 表示這個(gè)函數(shù)的返回值是整數(shù),abc 是函數(shù)名稱,括號(hào)里的是定義了兩個(gè)參數(shù)它們都是整數(shù)*/ { int a=123; printf("%d",a); } 這個(gè)是我們自己寫(xiě)的函數(shù),還有現(xiàn)成的c庫(kù)函數(shù),直接調(diào)用就行,限于篇幅,其實(shí)你仔細(xì)的摳書(shū),書(shū)上都有,我就是看書(shū)學(xué)會(huì)的
int
add(int
x,int
y);
int
sub(int
x,int
y);
int
mul(int
x,int
y);
int
div(int
x,int
y);
#include
math.h
#include
stdio.h
void
main()
{
int
a,b,c,d,e,f,g,h,i;
printf("XXXXXXXXXXXXXXX計(jì)算器");
printf("\n");
for(c=1;c=30;c++)
printf("*");
printf("\n");
printf("請(qǐng)輸入一個(gè)整數(shù)");
printf("\n");
scanf("%d",a);
printf("\n");
for(c=1;c=30;c++)
printf("-");
printf("\n");
printf("請(qǐng)選擇您要做的運(yùn)算:1.+,2.-,3.*,4./5.abs,6.sqrt");
printf("\n");
for(c=1;c=30;c++)
printf("*");
printf("\n");
scanf("%d",d);
printf("\n");
if(d==5)
{printf("%d",abs(a));goto
end;}(如果想做絕對(duì)值,就直接做abs函數(shù)(它是個(gè)庫(kù)函數(shù)).做完后就goto"end"--也就是函數(shù)的最后.)
if(d==6)
{printf("%.2f",sqrt(a));goto
end;};}(如果想做開(kāi)平方,就直接做sqrt函數(shù)(它是個(gè)庫(kù)函數(shù)).做完后就goto"end"--也就是函數(shù)的最后.)
printf("請(qǐng)?jiān)俅屋斎胍粋€(gè)整數(shù)");
(如果是做雙目的就開(kāi)始輸入第二個(gè)數(shù)b)
printf("\n");
scanf("%d",b);
printf("\n");
switch(d)
{
case
1:add(a,b);break;
case
2:sub(a,b);break;
case
3:mul(a,b);break;
case
4:div(a,b);break;
default:printf("date
input
error!\n");
}
end:
printf("\n");}
int
add(int
x,int
y)
{
int
m;
m=x+y;
printf("%d",m);
return
m;
}
int
sub(int
x,int
y)
{
int
m;
m=x-y;
printf("%d",m);
return
m;
}
int
mul(int
x,int
y)
{
int
m;
m=x*y;
printf("%d",m);
return
m;
}
int
div(int
x,int
y)
{
int
m;
m=x/y;
printf("%d",m);
return
m;
}
(你試試看吧!應(yīng)該可以!呵呵)
網(wǎng)頁(yè)標(biāo)題:c語(yǔ)言如何插入函數(shù),C語(yǔ)言中如何使用函數(shù)
文章網(wǎng)址:http://chinadenli.net/article20/dsepeco.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供做網(wǎng)站、手機(jī)網(wǎng)站建設(shè)、網(wǎng)站改版、定制網(wǎng)站、網(wǎng)站維護(hù)、電子商務(wù)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(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)