日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

九度OJ 1168:字符串的查找删除 (查找)

發布時間:2024/9/5 编程问答 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 九度OJ 1168:字符串的查找删除 (查找) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

時間限制:1 秒

內存限制:32 兆

特殊判題:否

提交:4276

解決:1699

題目描述:

給定一個短字符串(不含空格),再給定若干字符串,在這些字符串中刪除所含有的短字符串。

輸入:

輸入只有1組數據。
輸入一個短字符串(不含空格),再輸入若干字符串直到文件結束為止。

輸出:

刪除輸入的短字符串(不區分大小寫)并去掉空格,輸出。

樣例輸入:
in #include int main() {printf(" Hi "); }
樣例輸出:
#clude tma() {prtf("Hi"); }
提示:

注:將字符串中的In、IN、iN、in刪除。

來源:
2009年北京航空航天大學計算機研究生機試真題

思路:

含空格的輸入可以用gets函數。


代碼:

#include <stdio.h> #include <string.h>#define M 100int match(char c1, char c2) {if ('A' <= c1 && c1 <= 'Z')c1 += 'a'-'A';if ('A' <= c2 && c2 <= 'Z')c2 += 'a'-'A';return (c1 == c2); }void delete(char *s, int len) {int i;for (i=0; i<strlen(s)-len; i++)s[i] = s[i+len];s[i] = '\0'; }int main(void) {int j, k, m;int matched;char s[M], mod[M];//scanf("%s", mod);gets(mod);while (gets(s)){for (j=0; j<strlen(s); j++){if (s[j] == mod[0]){matched = 1;for (m=j, k=0; m<strlen(s) && k<strlen(mod); m++, k++){if (! match(s[m], mod[k])){matched = 0;break;}}if (m == strlen(s) && k<strlen(mod))matched = 0;if (matched == 1)delete(s+j, strlen(mod));}else if (s[j] == ' ')delete(s+j, 1);}printf("%s\n", s);}return 0; } /**************************************************************Problem: 1168User: liangrx06Language: CResult: AcceptedTime:0 msMemory:912 kb ****************************************************************/

轉載于:https://www.cnblogs.com/liangrx06/p/5083859.html

總結

以上是生活随笔為你收集整理的九度OJ 1168:字符串的查找删除 (查找)的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。