diff --git a/2208/C语言/字符串处理.md b/2208/C语言/字符串处理.md index cccb44d..fd3c48a 100644 --- a/2208/C语言/字符串处理.md +++ b/2208/C语言/字符串处理.md @@ -2,8 +2,62 @@ 从键盘上输入一个字符串, 计算字符串里有多少个空格、小写字母、大写字母、数字。 +```c +#include + +int main(){ + char str[100], space, low_letter, upp_letter, number; + space = low_letter = upp_letter = number = 0; + char *p; + gets(str); + p = str; + while(*p != '\0'){ + if(*p == ' '){ + space++; + }else if(*p >= 'a' && *p <= 'z'){ + low_letter++; + }else if(*p >= 'A' && *p <= 'Z'){ + upp_letter++; + }else if(*p >= '0' && *p <= '9'){ + number++; + } + p++; + } + printf("空格:%d 小写字母:%d 大写字母:%d 数字%d\n", + space, low_letter, upp_letter, number); + return 0; +} +``` + ### 2. 字符串排序 +```c +#include +#include + +int main(){ + char str[100]; + char temp; + int i, j; + + gets(str); + + for(i=0;i *(str+j+1)){ + temp = *(str+j); + *(str+j) = *(str+j+1); + *(str+j+1) = temp; + } + } + } + + puts(str); + return 0; +} + +``` + ### 3. 字符串插入 字符串插入: “1234567890” diff --git a/2208/C语言/源码/字符串-1.c b/2208/C语言/源码/字符串-1.c new file mode 100644 index 0000000..bc65d23 --- /dev/null +++ b/2208/C语言/源码/字符串-1.c @@ -0,0 +1,24 @@ +#include + +int main(){ + char str[100], space, low_letter, upp_letter, number; + space = low_letter = upp_letter = number = 0; + char *p; + gets(str); + p = str; + while(*p != '\0'){ + if(*p == ' '){ + space++; + }else if(*p >= 'a' && *p <= 'z'){ + low_letter++; + }else if(*p >= 'A' && *p <= 'Z'){ + upp_letter++; + }else if(*p >= '0' && *p <= '9'){ + number++; + } + p++; + } + printf("ո:%d Сдĸ:%d дĸ:%d %d\n", + space, low_letter, upp_letter, number); + return 0; +} diff --git a/2208/C语言/源码/字符串-2.c b/2208/C语言/源码/字符串-2.c new file mode 100644 index 0000000..1f41134 --- /dev/null +++ b/2208/C语言/源码/字符串-2.c @@ -0,0 +1,24 @@ +#include +#include + +int main(){ + char str[100]; + char temp; + int i, j; + + gets(str); + + for(i=0;i *(str+j+1)){ + temp = *(str+j); + *(str+j) = *(str+j+1); + *(str+j+1) = temp; + } + } + } + + puts(str); + return 0; +} +