c语言输入一个字符串(少于20个字符),求取并输出此字符串的长度 点击复制后,将打开C知道体验页 好要求不使用strlen函数
时间: 2024-05-07 16:19:38 浏览: 15
可以使用循环遍历字符串来实现字符串长度的计算。
具体思路如下:
1. 声明一个计数器变量count,用于记录字符串的长度。
2. 使用scanf函数读取用户输入的字符串,存储到一个字符数组中。
3. 遍历字符数组,对于数组中的每一个非空字符,计数器count加1。
4. 当遍历到字符串结束符'\0'时,停止遍历,并输出count的值作为字符串长度。
下面是一段示例代码:
```c
#include <stdio.h>
int main() {
char str[20];
int count = 0;
printf("请输入一个少于20个字符的字符串:");
scanf("%s", str);
for (int i = 0; str[i] != '\0'; i++) {
count++;
}
printf("字符串长度为:%d\n", count);
return 0;
}
```
注意,上述代码中使用了scanf函数读取用户输入的字符串。由于scanf函数会自动在字符串末尾添加结束符'\0',因此在遍历字符串时可以通过判断字符是否为结束符来停止遍历。
相关问题
c语言输入一个字符串(少于20个字符),求取并输出此字符串的长度
好的,你可以使用C语言中的`strlen()`函数来获取字符串的长度。`strlen()`函数需要引入`string.h`头文件。
下面是一个示例代码:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[20];
printf("请输入一个少于20个字符的字符串:");
scanf("%s", str);
int len = strlen(str);
printf("该字符串的长度为:%d\n", len);
return 0;
}
```
在上面的代码中,我们定义了一个长度为20的字符数组`str`来存储输入的字符串。然后使用`scanf()`函数获取用户输入的字符串。接着,使用`strlen()`函数获取字符串的长度,并将其打印出来。
C语言输入一个字符串(少于80个字符),将它的内容逆置后输出。
好的,以下是一个 C 语言的实现:
```c
#include <stdio.h>
#include <string.h>
int main() {
char str[80], reverse_str[80];
int i, len;
printf("请输入一个字符串,少于80个字符:\n");
fgets(str, 80, stdin);
len = strlen(str) - 1;
for (i = 0; i < len; i++) {
reverse_str[i] = str[len - i - 1];
}
reverse_str[len] = '\0';
printf("逆置后的字符串为:%s\n", reverse_str);
return 0;
}
```
简要解释一下代码:首先,定义两个字符数组 `str` 和 `reverse_str`,分别用于存放用户输入的字符串和逆置后的字符串。然后,使用 `fgets()` 函数从标准输入流中读取用户输入的字符串,将其存放在 `str` 数组中。
接着,使用 `strlen()` 函数获取字符串的长度,并将其保存在变量 `len` 中。然后,使用 `for` 循环遍历字符串中的每一个字符,将其逆置后存放在 `reverse_str` 数组中。最后,将 `reverse_str` 数组中的末尾字符设置为字符串结束符 `\0`,并使用 `printf()` 函数将逆置后的字符串输出到屏幕上。
希望这个程序能够解决您提出的问题。如果您还有其他问题,请随时提出!