//剛寫的,測(cè)試通過(guò),如果有疑問(wèn),歡迎交流
通河ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場(chǎng)景,ssl證書未來(lái)市場(chǎng)廣闊!成為創(chuàng)新互聯(lián)公司的ssl證書銷售渠道,可以享受市場(chǎng)價(jià)格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:18982081108(備注:SSL證書合作)期待與您的合作!
#includestdio.h
int?strSub(char?*?str,?int?start,?int?length,?char?*?sSub){
int?count?=?0;
while(str!='\0'count??length){
sSub[count]?=?str[start?+?count];
count++;
}
return?count;
}
int?strCount(char?*?str,?char?*?sFind){
?int?count?=?0;
?for(int?i?=?0;?str[i]!='\0';i++){
?int?j?=?0;
?for(j?=?0;?str[i+j]!='\0'sFind[j]!='\0';j++){
?if(str[i+j]!=sFind[j])
?break;
?}
?if(sFind[j]?==?'\0')
?count++;
?}
?return?count;
}
int?main(){
?char?*?a?=?"abcbcfwijojfowebcjfewobc";
?char?*b?=?"bc";
?char?c[10];
?printf("%d\n",?strCount(a,?b));
?printf("%d?%s\n",?strSub(b,0,3,c),?c);
?return?0;
}
#include?stdio.h
int?strat(?char?*s,?char?c?)
{
while?(?*s?)
{
if?(?*s==c?)
return?1;
s++;
}
return?0;
}
char?*strsub(?char?*s,?char?*q)
{
char?*t=s,*new_s=s;
while?(?*t?)
{
if?(?!strat(?q,?*t)?)
*new_s++?=?*t?;
t++;
}
*new_s='\0';
return?s;
}
void?main()
{
char?str1[]="abcdefg";
char?str2[]="abc"?;
char?*p=strsub(?str1,str2);
printf("%s\n",?p?);
}
思路如下:
選擇A
B
C三個(gè)功能
main函數(shù)中的流程概述:
1.輸出提示信息,并捕捉用戶輸入。比如:
“請(qǐng)指定您需要的操作:
輸入“A”完全復(fù)制;
輸入“B”向后添加;
輸入“C”定位復(fù)制。
捕捉輸入;”
“請(qǐng)輸入您要處理的字符串。
字符串a(chǎn):
捕獲輸入;
字符串b:
捕獲輸入;”
2.用switch語(yǔ)句判斷輸入并調(diào)用相應(yīng)函數(shù),同時(shí)將兩個(gè)字符串傳遞給處理函數(shù)。
比如:
case
A:mystrcpy(字符串a(chǎn),字符串b);
case
B和case
C與case
A同理。
這樣主函數(shù)的框架就出來(lái)了#^_^
下面是三個(gè)功能函數(shù)的實(shí)現(xiàn)(注:因?yàn)橛玫綆?kù)函數(shù),所以要添加“string.h”頭文件):
1.選項(xiàng)A的函數(shù)功能通過(guò)調(diào)用庫(kù)函數(shù)strcpy實(shí)現(xiàn),在輸出結(jié)果語(yǔ)句前多輸出一句提示信息即可完成題目要求。
2.選項(xiàng)B的函數(shù)功能通過(guò)調(diào)用庫(kù)函數(shù)strcat實(shí)現(xiàn),在輸出結(jié)果語(yǔ)句前多輸出一句提示信息即可完成題目要求。
3.選項(xiàng)C的函數(shù)功能通過(guò)調(diào)用庫(kù)函數(shù)memcpy實(shí)現(xiàn)(strncpy也可以,不過(guò)要走些彎路:)),在輸出結(jié)果語(yǔ)句前多輸出一句提示信息即可完成題目要求。
當(dāng)然如果你對(duì)指針熟悉的話也可以不調(diào)用庫(kù)函數(shù),直接進(jìn)行地址操作^_^)Y條條大路通北京嘛,哈哈
差不多了,希望有所幫助哦#^_^
strlen是求字符串長(zhǎng)度的函數(shù)。
函數(shù)原型:unsigned int strlen(char *s)。
參數(shù):s是char類型的指針,指向要求長(zhǎng)度的字符串。
返回值:返回字符串的長(zhǎng)度,返回類型是無(wú)符號(hào)整型。
strlen所作的僅僅是一個(gè)計(jì)數(shù)器的工作,它從內(nèi)存的某個(gè)位置(可以是字符串開(kāi)頭,中間某個(gè)位置,甚至是某個(gè)不確定的內(nèi)存區(qū)域)開(kāi)始掃描,直到碰到第一個(gè)字符串結(jié)束符'\0'為止,然后返回計(jì)數(shù)器值(長(zhǎng)度不包含“\0”)。
擴(kuò)展資料:
通過(guò)對(duì)C語(yǔ)言進(jìn)行研究分析,總結(jié)出其主要特點(diǎn)如下:
1、簡(jiǎn)潔的語(yǔ)言
C語(yǔ)言包含的各種控制語(yǔ)句僅有9種,關(guān)鍵字也只有32 個(gè),程序的編寫要求不嚴(yán)格且以小寫字母為主,對(duì)許多不必要的部分進(jìn)行了精簡(jiǎn)。
實(shí)際上,語(yǔ)句構(gòu)成與硬件有關(guān)聯(lián)的較少,且C語(yǔ)言本身不提供與硬件相關(guān)的輸入輸出、文件管理等功能,如需此類功能,需要通過(guò)配合編譯系統(tǒng)所支持的各類庫(kù)進(jìn)行編程,故c語(yǔ)言擁有非常簡(jiǎn)潔的編譯系統(tǒng)。
2、具有結(jié)構(gòu)化的控制語(yǔ)句
C語(yǔ)言是一種結(jié)構(gòu)化的語(yǔ)言,提供的控制語(yǔ)句具有結(jié)構(gòu)化特征,如for語(yǔ)句、if、else語(yǔ)句和switch語(yǔ)句等,可以用于實(shí)現(xiàn)函數(shù)的邏輯控制,方便面向過(guò)程的程序設(shè)計(jì)。
參考資料:百度百科—strlen
參考資料:百度百科—C語(yǔ)言