#include <stdio.h>
int max(char ch[],int *num);
int main()
{
int num,len;
char English[100];
printf("请输入一行字符:");
gets(English);
len=max(English, &num);
printf("总共有%d个单词,平均长度为%d\n", num, len);
return 0;
}
int max(char ch[],int *num)
{
int maxlength=0,i=0,length=0,len=0, j = 0;
while(ch[i]!='\0')
{
if(ch[i]!=' ')
length++;
else if(ch[i]==' ')
{
if(length!=0)
{
j++;
len+=length;
}
length=0;
}
i++;
if(ch[i]=='\0')
{
if(length!=0)
{
j++;
len+=length;
}
}
}
*num = j;
len /= *num;
return len;
}
首先,定义和调用子函数的方法如下:
//定义子函数 返回类型 函数名(参数列表){ //函数体 }
//调用子函数 函数名(参数列表);
以字符串处理函数为例,常见的字符串处理函数有:
下面是一个示例代码,演示如何使用字符串处理函数:
int main() { char str1[20] = "Hello"; char str2[20] = "World"; char str3[20];
// 使用strcpy()函数将str1复制到str3中 strcpy(str3, str1); printf("str3 = %s\n", str3);
// 使用strcat()函数将str2拼接到str3中,形成"HelloWorld" strcat(str3, str2); printf("str3 = %s\n", str3);
// 使用strlen()函数获取str3的长度 printf("Length of str3 = %d\n", strlen(str3));
// 使用strcmp()函数比较str1和str2的大小关系 if(strcmp(str1, str2) < 0) { printf("str1 is less than str2.\n"); } else if(strcmp(str1, str2) > 0) { printf("str2 is less than str1.\n"); } else { printf("str1 is equal to str2.\n"); }
// 使用strtok()函数将字符串按照指定分隔符分割 char str4[50] = "apple,banana,orange"; char delimiter[2] = ","; char *token = strtok(str4, delimiter); while(token != NULL) { printf("%s\n", token); token = strtok(NULL, delimiter); }
return 0; }
这段代码先定义了几个字符串,然后依次演示了如何使用strcpy()、strcat()、strlen()、strcmp()和strtok()函数,输出结果如下:
str3 = Hello str3 = HelloWorld Length of str3 = 10 str1 is less than str2. apple banana orange
总之,C语言提供了很多实用的字符串处理函数,只需要了解这些函数的功能和使用方法,就能快速编写字符串相关的代码。