简单子串查找--strstr的使用(ZCMU1108)
1108: 松哥的困惑
Time Limit: 1 Sec Memory Limit: 128 MB
Description
都到世界末日了,松哥都沒(méi)找到女朋友,因此松哥感到很困惑.沒(méi)想到到了世界末日都沒(méi)人喜歡我.松哥一生氣就發(fā)布了征友啟事,第二天,一共有n個(gè)人報(bào)名應(yīng)征松哥女友.松哥對(duì)女友的要求有三點(diǎn),第一點(diǎn),名字必須有三個(gè)字,第二點(diǎn),名字中要帶Li,第三點(diǎn)名字中要帶Ting.松哥希望你能從n個(gè)人中.松哥決定選取一人并和她約會(huì).你能找到是誰(shuí)嘛?
Input
多組測(cè)試數(shù)據(jù).
每組測(cè)試數(shù)據(jù)的第一行是一個(gè)正整數(shù)(n<=100).
接下來(lái)n行分別有n個(gè)名字.每個(gè)名字不超過(guò)20個(gè)字符.
名字的格式為:名+姓,且首字母大寫(xiě),比如沈利松就叫LiSongShen.
Output
對(duì)于每組數(shù)據(jù)輸出與松哥約會(huì)的名字.
輸入數(shù)據(jù)保證只有一個(gè)人滿足松哥的要求.
Sample Input
2
LiSongShen
LiTingXu
Sample Output
LiTingXu
Way1使用了strstr函數(shù):
Way2未使用strstr:
#include <stdio.h>#include <string.h>char a[25],b[25];int main(){int n,f;while(~scanf("%d",&n)){while(n--){memset(a,'\0',sizeof(a));scanf("%s",a);int num = 0, flag1 = 0,flag2 = 0,flag = 0;if(!flag){for(int i = 0; a[i] != '\0'; i++){if(a[i] >= 'A' && a[i] <= 'Z'){num++;}if(num >= 3){for(int j = 1; a[j] != '\0'; j++){if(a[j] == 'i' && a[j-1] == 'L'){flag1 = 1;break;}}if(flag1){char c[6];for(int k = 0; a[k] != '\0'; k++){memset(c,'\0',sizeof(c));int t = 0;for(int j = k; j< k+4; j++){c[t++] = a[j];}if(strcmp(c,"Ting") == 0){flag2 = 1;break;}}}if(flag2){flag = 1;strcat(b,a);break;}}}}}if(n == -1){for(int i = 0; b[i] != '\0'; i++)printf("%c",b[i]);printf("\n");memset(b,'\0',sizeof(b));}}return 0;}總結(jié)
以上是生活随笔為你收集整理的简单子串查找--strstr的使用(ZCMU1108)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 结构体排序二~1339: 考试排名(带技
- 下一篇: ZCMU 1048: 子串