c语言字符串编程
#include <stdio.h>
char *StrCat(char *s,char *t)
{
int i=0,j=0;
char *s1,*t1;
s1=s;t1=t;
for(;*s1;s1++,i++);
for(;*t1;t1++,j++);
if(i<=j)
{
for(;*t;)*s1++=*t++;*s1='\0';
return s;
}
else
{
for(;*s;)*t1++=*s++;*t1='\0';
return t;
}
}
int main(int argc, char *argv[])
{
char a[100],b[100];
scanf("%s",a);
scanf("%s",b);
printf("%s",StrCat(a,b));
return 0;
}
❷ C语言:编程统计字符串s在字符串str中出现的次数
以下是 C 语言实现统计字符串 s 在字符串 str 中出现的次数的程序:
```c
#include <stdio.h>
#include <string.h>
// 统计字符串 s 在字符串 str 中出现的次数
int countSubstring(char str[], char s[]) {
int n = strlen(str); // 获取字符串 str 的长度
int m = strlen(s); // 获取字符串 s 的长度
int count = 0; // 计数器,初始化为 0
for (int i = 0; i <= n - m; i++) {
// 检查字符串 str 中以 i 开头、长度为 m 的子串是否等于 s
if (strncmp(str + i, s, m) == 0) {
count++; // 如果相等,则计数器加 1
}
}
return count;
}
int main() {
char str[100], s[100];
printf("请输入两个字符串:");
scanf("%s%s", str, s);
int count = countSubstring(str, s);
printf("%s 在 %s 中出现的次数是:%d\n", s, str, count);
return 0;
}
```
在上述代码中,我们首先定义了一个 `countSubstring()` 函数,该函数接受两个字符串作为参数,并返回字符串 `s` 在字符铅唤串 `str` 中出现的次数。在函数内部,我们使用一个循环依次检查 `str` 中每个长度为 `m` 的子串是否等于 `s`,如果相等,则计数器加 1。需要注意的是,在比较子串是否相等时,我肢激毁们历备使用了 `strncmp()` 函数,它可以指定要比较的字符数,避免了因为字符串长度不同而导致的错误。
在 `main()` 函数中,我们首先使用 `scanf()` 函数获取用户输入的两个字符串,并将其保存到字符数组 `str` 和 `s` 中。然后,我们调用 `countSubstring()` 函数,并传入两个字符串作为参数,以获取字符串 `s` 在字符串 `str` 中出现的次数。最后,我们输出结果到控制台中。
需要注意的是,在实际应用中,可能需要对用户输入进行验证和处理,以确保程序的健壮性和安全性。另外,也可以使用其他方法(如标准库函数)来实现统计字符串出现次数的算法。
❸ 用C语言编写一个在字符串中插入一个字符的程序
#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#defineN100
voidInsert(char*s);
intmain()
{
charstr[N];
printf("Inputastring:");
gets(str);
Insert(str);
printf("Insertresults:%s ",str);
return0;
}
voidInsert(char*s)
{
charstr[N];
char*t=str;
strcpy(t,s);
for(;*t!='