从键盘输入一个字符串,输出这个字符串的长度(不能使用strlen)。C语言数组
时间: 2023-08-04 14:17:28 浏览: 49
可以使用循环遍历计算字符串的长度,代码如下:
```c
#include <stdio.h>
int main() {
char str[100];
int len = 0;
printf("请输入一个字符串:");
scanf("%s", str);
for (int i = 0; str[i] != '\0'; i++) {
len++;
}
printf("字符串长度为:%d\n", len);
return 0;
}
```
这里定义了一个字符数组 `str`,用于存储输入的字符串。然后使用循环遍历这个字符串,当遇到字符串结束符 `\0` 时,循环结束。在循环过程中,使用计数器 `len` 记录字符串的长度。最后输出字符串的长度即可。
相关问题
c语言从键盘输入一个字符串,输出这个字符串的长度(不能使用strlen)。
可以使用循环遍历字符串并计数的方式来求出字符串的长度,具体实现代码如下:
```c
#include <stdio.h>
int main() {
char str[100];
int len = 0;
printf("请输入一个字符串:");
scanf("%s", str);
// 循环遍历字符串,计数每一个字符,直到遇到字符串结束符'\0'
while (str[len] != '\0') {
len++;
}
printf("字符串长度为:%d\n", len);
return 0;
}
```
需要注意的是,输入的字符串长度不能超过数组大小,否则会发生数组越界的错误。可以使用fgets函数替代scanf函数来输入字符串,更加安全。
用c语言从键盘输入一个字符串,输出这个字符串的长度(不能使用strlen)。
好的,这可以通过循环遍历字符串来实现。以下是一个示例代码:
```c
#include <stdio.h>
int main()
{
char str[100];
int len = 0;
printf("请输入一个字符串:");
scanf("%s", str);
// 计算字符串的长度
while (str[len] != '\0') {
len++;
}
// 输出字符串的长度
printf("字符串的长度为:%d\n", len);
return 0;
}
```
在这个代码中,我们首先定义了一个长度为100的字符数组`str`,并从键盘输入一个字符串保存在这个数组中。然后,我们使用一个`while`循环遍历这个字符串,计算出它的长度。具体来说,我们通过判断当前字符是否为字符串的结束符`\0`来判断循环何时结束。最后,我们输出字符串的长度。
需要注意的是,在使用`scanf`函数从键盘输入字符串时,需要保证输入的字符串长度不超过`str`数组的长度,否则会出现缓冲区溢出的问题。为了避免这个问题,可以使用`fgets`函数来输入字符串,具体方式可以参考下面的代码:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str[100];
int len = 0;
printf("请输入一个字符串:");
fgets(str, 100, stdin);
str[strlen(str) - 1] = '\0'; // 去掉fgets读入的换行符
// 计算字符串的长度
while (str[len] != '\0') {
len++;
}
// 输出字符串的长度
printf("字符串的长度为:%d\n", len);
return 0;
}
```
在这个代码中,我们使用了`fgets`函数来输入字符串,并且在字符串末尾添加了一个结束符`\0`。