求一个字符串的长度,不要使用strlen()函数
方法一(计数器法):
#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>int main() {int my_strlen(char* str);char str[50] = { 0 };printf("请输入要求长度的字符串:");gets(str);printf("该字符串的长度为%d\n", my_strlen(str));return 0;}int my_strlen(char* str) {int count = 0;while (*str++ != '\0') {count++;}return count;}
运行结果:
方法二(递归法):不使用第三变量
#define _CRT_SECURE_NO_WARNINGS#include<stdio.h>int my_strlen(char* str) {if (*str != '\0') {return(1+my_strlen(str+1));}else{return 0;}}int main() {int my_strlen(char* str);char str[50] = { 0 };printf("请输入要求长度的字符串:");gets(str);printf("该字符串的长度为%d\n", my_strlen(str));return 0;}
运行结果: