用C语言编写程序:利用指针求字符串的长度。
时间: 2024-02-13 08:03:49 浏览: 23
好的,这是一个简单的用指针求字符串长度的C语言程序:
```c
#include <stdio.h>
int strlen(char *str) {
int len = 0;
while (*str != '\0') {
len++;
str++;
}
return len;
}
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
int len = strlen(str);
printf("字符串长度为:%d\n", len);
return 0;
}
```
在这个程序中,我们定义了一个 `strlen` 函数,接收一个指向字符串的指针作为参数,并通过循环遍历字符串,每次将长度加一,直到遍历到字符串结尾的空字符为止。
在 `main` 函数中,我们首先定义一个字符数组 `str`,并通过 `scanf` 函数读入一个字符串。然后我们调用 `strlen` 函数,将其返回值赋值给变量 `len`,最后通过 `printf` 函数输出字符串长度。
希望这个程序能够帮助你理解指针的用法。
相关问题
用C语言编写程序,利用指针求字符串长度
可以使用以下代码来利用指针求字符串长度:
```c
#include <stdio.h>
int strlen(char *str) {
int len = 0;
while (*str != '\0') {
len++;
str++;
}
return len;
}
int main() {
char str[] = "Hello world!";
int len = strlen(str);
printf("The length of the string is %d\n", len);
return 0;
}
```
在上面的代码中,我们定义了一个 `strlen` 函数,该函数接收一个指向字符串的指针,并遍历字符串直到遇到空字符 `\0`,计算出字符串的长度并返回。在主函数中,我们定义了一个字符串 `str`,并使用 `strlen` 函数获取其长度,并打印输出。
请用C语言编写如下程序:利用指针实现从键盘输入一串字符,串,将此字符串倒置
下面是利用指针实现字符串倒置的C语言程序:
```c
#include <stdio.h>
#include <string.h>
void reverse(char *str) {
int len = strlen(str);
char *p = str, *q = str + len - 1;
while (p < q) {
char temp = *p;
*p++ = *q;
*q-- = temp;
}
}
int main() {
char str[100];
printf("请输入一个字符串:");
scanf("%s", str);
reverse(str);
printf("倒置后的字符串为:%s\n", str);
return 0;
}
```
在主函数中,首先定义一个字符数组 `str`,用于存放从键盘输入的字符串。然后调用 `reverse` 函数,将字符串倒置。最后输出倒置后的字符串。
在 `reverse` 函数中,首先使用 `strlen` 函数获取字符串的长度,并定义两个指针 `p` 和 `q`,分别指向字符串的首尾字符。然后使用循环,交换 `p` 和 `q` 指向的字符,直到 `p` 指向的字符超过了 `q` 指向的字符为止。