开发者学堂课程【C语言学习教程:字符串_习题课_4】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/387/detail/4913
字符串_习题课_4
习题讲解
(1)给定一个字符数组,判断某个字符串是否在这个字符数组中,比如"abdefghj78"中包含"defg”。
代码如下:
char str[]=”abcdefghj7defg8”;
char childStr[]=”defg”;
for (int i=0;i<strlen(str)-3;i++){
char tempStr[100]=””;
for (int k=0;k<strlen(childStr);k++){
tempStr[k]=str[i+k];
}
if (strcmp(tempStr,childStr)==0){
printf(“index=%d”,i);
puts(tempStr);
}
}
运行结果
index = 2 defg
index = 9 defg
2016-07-2709:49:32.059 字符串习题课[37444: 6720144]
Hello, World!
Prog ram ended with exit code: 0
(2)定义一个有11个元素的字符数组,输入11个字符,判断该字符数组中存储内容是否是一个大陆的手机号.已知国内的手机号都是以1开头,总共11位,每一位都是一个数字字符。
代码如下:
char phoneNumber[12]=””;
scanf(“%11s”,phoneNumber);
if (phoneNumber[0]!=’1’){
printf(“不是大陆手机\n”);
}else{
int flag=0;
for (int i=1;i<11;i++){
if (phoneNumber[i]<’0’||phoneNumder[i]>’9’){
flag=1;
break;
}}
if (flag==0){
printf(“是大陆手机\n”);
}else{
printf(“不合法的手机号\n”);
}}
运行结果:
1
不合法的手机号
20165-07-27 09:57:51.925字符串习题课[37481:6732267]
Hello, World!
Program ended with exit code: a|