题目描述
写一个函数,求一个字符串的长度,在 main 函数中输入字符串,并输出其长度。
代码实现
方法一:
#include <stdio.h>
#include <stdlib.h>
int main( )
{
int length(char* s);
int len;
char str[20];
printf("请输入字符串:\n");
scanf_s("%s", &str,sizeof(str));
len = length(str);
printf("字符串有 %d 个字符。", len);
}
//求字符串长度
int length(char* s)
{
int i = 0;
while (*s != '\0')
{
i++;
s++;
}
return i;
}
方法二:
#include <stdio.h>
#include <stdlib.h>
int length(char* str)
{
char* p = str;
while (*p != '\0')
p++;
printf("字符串长度为:%d\n", p - str);
return 0;
}
int main()
{
char s[20];
printf("请输入字符串:\n");
scanf_s("%s", &s, sizeof(s));
length(s);
return 0;
}
方法三:
#include <stdio.h>
int main(void)
{
char c;
int count = 0;
printf("请输入一串字符:\n");
while ((c = getchar()) != '\n')
{
++count;
}
printf("该字符串的长度为:%d\n", count);
return 0;
}
方法四:
#include <stdio.h>
int str_len(char* str)
{
int i = 0;
while (str[i] != '\0')
i++;
return i;
}
int main(void)
{
char str[80] = { '\0' };
int ret;
printf("请输入字符串:\n");
gets_s(str);
ret = str_len(str);
printf("字符串有 %d 个字符。\n", ret);
return 0;
}