C 练习实例70
题目:写一个函数,求一个字符串的长度,在 main 函数中输入字符串,并输出其长度。
程序分析:无。
实例
// Created by www.runoob.com on 15/11/9.
// Copyright © 2015年 菜鸟教程. All rights reserved.
//
#include <stdio.h>
#include <stdlib.h>
int length(char *s);
int main() {
char str[100]; // 可以根据实际情况增大数组长度
printf("请输入字符串:\n");
scanf("%s", str);
int len = length(str); // 调用 length 函数计算字符串长度
printf("字符串有 %d 个字符。\n", len);
return EXIT_SUCCESS;
}
//求字符串长度
int length(char *s) {
int i = 0;
while (*s != '\0') {
i++;
s++;
}
return i;
}
以上程序执行输出结果为:
请输入字符串: www.runoob.com 字符串有 14 个字符。
C 语言经典100例
masterGKT
gkt***lic@163.com
#include<stdio.h> void length(char *str) { char *p=str; while(*p!='\0') p++; printf("字符串长度为:%d\n",p-str); } int main() { char s[]="www.runoob.com"; length(s); return 0; }masterGKT
gkt***lic@163.com
DDD
128***7578@qq.com
参考方法:
#include <stdio.h> int main(void) { char c; int count = 0; printf("请输入一串字符:\n"); while((c = getchar()) != '\n') { ++count; } printf("该字符串的长度为:%d\n",count); return 0; }DDD
128***7578@qq.com
HIT_CCC
117***2963@qq.com
参考方法:
#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(str); ret = str_len(str); printf("字符串有 %d 个字符。\n",ret); return 0; }HIT_CCC
117***2963@qq.com
ronnyz
221***8677@qq.com
参考方法:
#include <stdio.h> #include <stdlib.h> #define N 20 int getlen(char s[]){ int i=0,cnt=0; while(s[i++]!='\0') cnt++; return cnt; } int main(){ int len; char str[N]; gets(str); len=getlen(str); printf("%d\n",len); return 0; }ronnyz
221***8677@qq.com
十七
G25***58358@163.com
递归法实现:
#include #define N 20 /*计算字符串长度,递归法*/ int str_len(char *p_str) { if(*p_str != '\0') { return 1+str_len(p_str+1); } } int main(void) { char str[N]; scanf("%s",str); int len = str_len(str); printf("长度是%d\n",len); return 0; }十七
G25***58358@163.com