编写函数,通过指针求字符串的长度。 **输入格式要求:"%s" 提示信息:"enter string:" **输出格式要求:"string length=%d\n" 程序运行示例如下: enter string:nihao string length=5
时间: 2023-04-30 12:06:07 浏览: 165
这道题目要求我们编写一个函数,通过指针求得字符串的长度。输入格式要求为 "%s",输出格式要求为 "string length=%d\n"。
在程序运行示例中,输入 "nihao",输出 "string length=5\n"。
具体实现可以使用循环迭代,通过指针一个个遍历字符,并记录遍历的次数,最后输出即可。
相关问题
编写函数,通过指针求字符串的长度。 **输入格式要求:"%s" 提示信息:"Enter string:" **输出格式要求:"string length=%d\n" 程序运行示例如下: Enter string:nihao string length=5
下面是一个实现的示例代码:
```c
#include <stdio.h>
// 函数原型
int strLength(char *str);
int main()
{
char str[100];
printf("Enter string:");
scanf("%s", str);
int len = strLength(str);
printf("string length=%d\n", len);
return 0;
}
int strLength(char *str)
{
int len = 0;
while (*str != '\0') {
len++;
str++;
}
return len;
}
```
该函数的实现非常简单,使用一个 while 循环来遍历字符串,每遍历一个字符,就将长度加一,直到遍历到字符串的结尾(即遇到 '\0')。需要注意的是,这里使用了指针来遍历字符串,因为字符串本身就是一个字符数组,可以直接用指针来访问。
编写函数,通过指针连接两个字符串。 **输入格式要求:"%s" 提示信息:"Enter string 1:" "Enter string 2:" **输出格式要求:"a+b=%s\n"
下面是这个函数的代码实现:
```c
#include <stdio.h>
#include <string.h>
void combineString(char *str1, char *str2, char *result) {
int i = 0, j = 0;
while (str1[i] != '\0') {
result[i] = str1[i];
i++;
}
while (str2[j] != '\0') {
result[i + j] = str2[j];
j++;
}
result[i + j] = '\0';
}
int main() {
char str1[100], str2[100], result[200];
printf("Enter string 1:");
scanf("%s", str1);
printf("Enter string 2:");
scanf("%s", str2);
combineString(str1, str2, result);
printf("a+b=%s\n", result);
return 0;
}
```
该程序定义了一个 `combineString` 函数,它接受三个参数:两个字符串指针和一个结果字符串指针。函数通过指针连接两个字符串并将结果存储在结果字符串中。
在 `main` 函数中,程序提示用户输入两个字符串,然后调用 `combineString` 函数来连接这两个字符串,并将结果打印出来。
阅读全文