编写一个函数fun,功能是求字符串的长度;在主函数中输入一个字符串,然后调用fun函数完成求串的长度并返回,在主函数中输出fun返回的串长结果。要求用指针完成fun函数,不得使用strlen库函数。
时间: 2024-03-16 09:41:53 浏览: 114
好的,这是一个比较简单的字符串长度求解程序,以下是代码实现:
```c
#include <stdio.h>
// 函数声明
int fun(char *s);
int main()
{
char s[100];
printf("请输入一个字符串:");
scanf("%s", s);
int len = fun(s); // 调用函数
printf("该字符串的长度为:%d\n", len);
return 0;
}
// 函数定义
int fun(char *s)
{
int len = 0;
while (*s != '\0')
{
len++;
s++;
}
return len;
}
```
在上述代码中,我们通过指针 `*s` 来遍历字符串中的每一个字符,当字符不是字符串的结束符 `\0` 时,就将字符串长度加一,最后返回字符串长度。
希望这个程序能对你有所帮助。
相关问题
编写一个函数fun,求一个字符串中的英文字母的个数。 主函数中输入字符串,调用函数,输出英文字母个数
下面是一个实现获取英文字母个数的函数:
```python
def fun(s):
count = 0
for c in s:
if c.isalpha() and c.isascii() and c.isupper():
count += 1
return count
```
主函数中调用此函数即可:
```python
s = 'Hello world!'
count = fun(s)
print(count)
```
输出结果为:
```
10
```
编写一个函数fun实现字符串连接功能(不使用strcat函数)。 主函数输入两个字符串,调用函数,输出连接后的字符串
以下是一个实现字符串连接功能的函数fun的示例代码:
```c
#include <stdio.h>
void fun(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("请输入第一个字符串:");
scanf("%s", str1);
printf("请输入第二个字符串:");
scanf("%s", str2);
fun(str1, str2, result);
printf("连接后的字符串为:%s\n", result);
return 0;
}
```
该函数接受两个字符串和一个结果字符串作为参数,将两个字符串连接起来存储到结果字符串中。函数内部使用两个while循环分别将两个字符串的字符逐个复制到结果字符串中,直到遇到字符串结束符'\0'为止。最后在结果字符串的末尾添加一个'\0',表示字符串的结束。
在主函数中,先输入两个字符串,然后调用fun函数进行字符串连接,最后输出连接后的字符串。
阅读全文