这段C语言代码用于计算一串字符的长度。代码的实现过程如下:
- 首先,定义一个名为
length
的函数,该函数接受一个指向字符数组的指针作为参数,并返回字符串的长度。在函数内部,使用while
循环遍历指针所指向的字符数组,直到遇到字符串的结束标志\0
。每经过一次循环,计数器i
自增,并移动指针到下一个字符位置。最后,将计数器的值作为字符串的长度返回。
int length(char *s)
{
int i = 0;
while (*s != '\0')
{
i++;
s++;
}
return i;
}
- 然后,在
main
函数中定义一个字符数组str
,用于存储输入的字符串。通过scanf
函数从控制台读取一个字符串并将其存储在str
中:
char str[20];
printf("输入字符串:\n");
scanf("%s", str);
- 接下来,调用
length
函数并将str
作为参数传递给它,以计算出字符串的长度。将计算结果保存在变量len
中:
int len = length(str);
- 最后,输出字符串的长度:
printf("字符串有%d个字符.", len);
根据代码逻辑,如果输入的字符串为"Fighting! Workers",则输出结果为"该字符串有16个字符"。
//计算一串字符的长度
//在main函数中输出一个字符,并且计算出该字符的长度。
#include<stdio.h>
#include<stdlib.h>
int length(char *s)
{
int i=0;
while(*s!='\0')
{
i++;
s++;
}
return i;
}
int main()
{
int len;
char str[20];
printf("输入字符串:\n");
scanf("%s",str);
len=length(str);
printf("字符串有%d个字符.",len);
}
//输入字符:Fighting! Workers
//输出结果:该字符串有16个字符