编写自定义函数返回一个字符串的字符个数,不包含'\0'。在主函数中输入若干字符串,利用自定义函数,输出它们的长度 c语言实现

时间: 2024-03-24 18:41:33 浏览: 26
以下是实现代码: ```c #include <stdio.h> int str_length(char *str) { int len = 0; while (*str != '\0') { len++; str++; } return len; } int main() { char str[100]; while (scanf("%s", str) != EOF) { int len = str_length(str); printf("字符串%s的长度为%d\n", str, len); } return 0; } ``` 解释一下代码:首先定义了一个自定义函数 `str_length`,该函数接受一个字符串指针作为参数,返回该字符串的字符个数(不包括字符串末尾的 '\0')。在函数内部,使用了一个 while 循环来遍历字符串,每遇到一个非 '\0' 的字符,就将计数器 len 加 1。最后返回 len 即可。 在主函数中,使用了一个 while 循环来不断输入字符串,直到遇到 EOF(即按下 Ctrl + Z)为止。然后调用自定义函数 str_length,得到字符串长度,输出即可。 需要注意的是,上述代码中的字符串长度是指字符个数,而不是字节个数。如果要计算字节个数,可以使用 `strlen` 函数。
相关问题

编写自定义函数返回一个字符串的字符个数,不包含'\\0'。在主函数中输入若干字符串,利用自定义函数,输出它们的长度。

可以使用以下代码实现: ``` #include <stdio.h> #include <string.h> int str_len(char *str) { int len = 0; while (*str != '\0') { len++; str++; } return len; } int main() { char str[100]; printf("请输入字符串:"); scanf("%s", str); printf("字符串长度为:%d\n", str_len(str)); return 0; } ``` 在上面的代码中,我们定义了一个自定义函数 `str_len`,它的作用是返回一个字符串的字符个数,不包含 '\0'。在主函数中,我们通过输入一个字符串,然后调用自定义函数来输出它的长度。

在主函数中输入一串字符,其中包含数字和非数字字符,通过调用一个自定义函数getdig

可以实现获取字符串中所有数字字符的功能。具体实现的步骤如下: 1. 在主函数中,输入一串字符。 2. 调用自定义函数getdig,将输入的字符串作为参数传入。 3. 在getdig函数中,声明一个空列表,用于存放数字字符。 4. 遍历传入的字符串的每个字符。 5. 通过isdigit()函数判断字符是否为数字字符。若是数字字符,则将其添加到列表中。 6. 遍历结束后,返回存放数字字符的列表。 7. 在主函数中,接收getdig函数返回的列表,并输出结果。 示例代码如下: ```python def getdig(string): digits = [] # 存放数字字符的列表 for char in string: if char.isdigit(): digits.append(char) return digits def main(): string = input("请输入一串字符:") digit_list = getdig(string) print("字符中的数字为:", "".join(digit_list)) if __name__ == "__main__": main() ``` 例如,当在主函数中输入字符串"abc123def456",则输出结果为"123456",表示从输入的字符串中提取出了数字字符。

相关推荐

最新推荐

recommend-type

python通过自定义isnumber函数判断字符串是否为数字的方法

主要介绍了python通过自定义isnumber函数判断字符串是否为数字的方法,涉及Python操作字符串判断的相关技巧,需要的朋友可以参考下
recommend-type

python简单算法04:判断一个字符串是否为回文串的排列之一

给定一个字符串,编写一个函数判定其是否为某个回文串的排列之一。 回文串是指正反两个方向都一样的单词或短语,排列是指字母重新排列,回文串不一定是字典中的单词。 例如: 输入:“tactcoa” 输出:True(排列有...
recommend-type

SQL SERVER2012中新增函数之字符串函数CONCAT详解

SQL Server 2012有一个新函数,就是CONCAT函数,连接字符串非它莫属。比如在它出现之前,连接字符串是使用"+"来连接,如遇上NULL,还得设置参数与配置,不然连接出来的结果将会是一个NULL。本文就介绍了关于SQL ...
recommend-type

C++不使用变量求字符串长度strlen函数的实现方法

主要介绍了C++不使用变量求字符串长度strlen函数的实现方法,实例分析了strlen函数的实现原理与不使用变量求字符串长度的实现技巧,需要的朋友可以参考下
recommend-type

Mysql字符串字段判断是否包含某个字符串的2种方法

假设有个表: 代码如下: CREATE TABLE users(id int(6) NOT NULL AUTO_INCREMENT,PRIMARY KEY (id),user_name VARCHAR(20) NOT NULL,emails VARCHAR(50) NOT NULL); 初始化表,并添加些记录。  代码如下: ...
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

MATLAB结构体与对象编程:构建面向对象的应用程序,提升代码可维护性和可扩展性

![MATLAB结构体与对象编程:构建面向对象的应用程序,提升代码可维护性和可扩展性](https://picx.zhimg.com/80/v2-8132d9acfebe1c248865e24dc5445720_1440w.webp?source=1def8aca) # 1. MATLAB结构体基础** MATLAB结构体是一种数据结构,用于存储和组织相关数据。它由一系列域组成,每个域都有一个名称和一个值。结构体提供了对数据的灵活访问和管理,使其成为组织和处理复杂数据集的理想选择。 MATLAB中创建结构体非常简单,使用struct函数即可。例如: ```matlab myStruct
recommend-type

详细描述一下STM32F103C8T6怎么与DHT11连接

STM32F103C8T6可以通过单总线协议与DHT11连接。连接步骤如下: 1. 将DHT11的VCC引脚连接到STM32F103C8T6的5V电源引脚; 2. 将DHT11的GND引脚连接到STM32F103C8T6的GND引脚; 3. 将DHT11的DATA引脚连接到STM32F103C8T6的GPIO引脚,可以选择任一GPIO引脚,需要在程序中配置; 4. 在程序中初始化GPIO引脚,将其设为输出模式,并输出高电平,持续至少18ms,以激活DHT11; 5. 将GPIO引脚设为输入模式,等待DHT11响应,DHT11会先输出一个80us的低电平,然后输出一个80us的高电平,
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。