新聞中心

        C語言試題大全一

        作者: 時間:2016-11-24 來源:網(wǎng)絡(luò) 收藏
        1. 寫一函數(shù),實現(xiàn)刪除字符串str1中含有的字符串str2.

        /* 用遞歸做 */
        void deletesubstr(char* str1, const char* str2)
        {
        int len=strlen(str1);
        char* newstr;
        char* sp;
        if(str1==NULL||str2==NULL)
        return;
        if(strlen(str1) return;
        if(sp=strstr(str1,str2))
        {
        newstr=malloc(len+1);
        strncpy(newstr,str,sp-str);
        strcpy(newstr+(sp-str),sp+strlen(str2));
        strcpy(str1,newstr);
        free(newstr);
        deletesubstr(str1,str2);
        }
        else
        return;
        }

        2.雅虎筆試題(字符串操作)
        給定字符串A和B,輸出A和B中的最大公共子串。
        比如A="aocdfe" B="pmcdfa" 則輸出"cdf"

        答案:
        //Author: azhen
        #include
        #include
        #include

        char *commanstring(char shortstring[], char longstring[])
        {
        int i, j;

        char *substring=malloc(strlen(shortstring)+1);

        if(strstr(longstring, shortstring)!=NULL) //如果……,那么返回shortstring
        return shortstring;

        for(i=strlen(shortstring)-1;i>0; i--) //否則,開始循環(huán)計算
        {
        for(j=0; j<=strlen(shortstring)-i; j++){
        memcpy(substring, &shortstring[j], i); // 從最長的字符串開始
        substring[i]= 主站蜘蛛池模板: 郸城县| 淮安市| 千阳县| 云霄县| 黔西| 临夏市| 绿春县| 乌兰浩特市| 乌恰县| 宁国市| 泰和县| 邵阳市| 信阳市| 海口市| 津市市| 祁门县| 搜索| 策勒县| 和平县| 灌云县| 芒康县| 荆州市| 探索| 大姚县| 五峰| 濮阳市| 顺义区| 义乌市| 工布江达县| 无为县| 岳阳市| 和静县| 朝阳县| 岑巩县| 墨玉县| 峨山| 两当县| 托克逊县| 梅河口市| 茂名市| 枝江市|