From f10b80e114307eb81195e1e3b1a72bdc9eade846 Mon Sep 17 00:00:00 2001
From: smallkun <smallerkun@foxmail.com>
Date: Fri, 14 Mar 2025 11:18:41 +0800
Subject: [PATCH] Auto commit

---
 2208/C语言/字符串处理.md   | 54 ++++++++++++++++++++++++++++++++++++++
 2208/C语言/源码/字符串-1.c | 24 +++++++++++++++++
 2208/C语言/源码/字符串-2.c | 24 +++++++++++++++++
 3 files changed, 102 insertions(+)
 create mode 100644 2208/C语言/源码/字符串-1.c
 create mode 100644 2208/C语言/源码/字符串-2.c

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 <stdio.h>
+
+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 <stdio.h>
+#include <string.h>
+
+int main(){
+	char str[100];
+	char temp;
+	int i, j;
+	
+	gets(str);
+	
+	for(i=0;i<strlen(str)-1;i++){
+		for(j=0;j<strlen(str)-1-i;j++){
+			if(*(str+j) > *(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 <stdio.h>
+
+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 <stdio.h>
+#include <string.h>
+
+int main(){
+	char str[100];
+	char temp;
+	int i, j;
+	
+	gets(str);
+	
+	for(i=0;i<strlen(str)-1;i++){
+		for(j=0;j<strlen(str)-1-i;j++){
+			if(*(str+j) > *(str+j+1)){
+				temp = *(str+j);
+				*(str+j) = *(str+j+1);
+				*(str+j+1) = temp;
+			}
+		}
+	}
+	
+	puts(str);
+	return 0;
+}
+