C语言fun函数求字符串长度程序
时间: 2024-03-02 12:49:38 浏览: 22
C语言中并不存在`fun`函数,可能是您打错了单词。如果您想问如何使用自定义函数求取字符串长度,可以尝试以下代码:
``` c
#include <stdio.h>
int str_len(char *str) {
int len = 0;
while (*str != '\0') { // 遍历字符串,直到遇到字符串结束符'\0'
len++;
str++;
}
return len;
}
int main() {
char str[100];
int len;
printf("请输入一个字符串:");
fgets(str, 100, stdin); // 从标准输入读取一个字符串
len = str_len(str); // 调用自定义函数求取字符串长度
printf("该字符串的长度为:%d\n", len);
return 0;
}
```
上述代码中定义了一个自定义函数`str_len`,该函数使用指针遍历字符串,直到遇到字符串结束符`\0`,同时计数器`len`不断自增,最终返回字符串长度。在`main`函数中,我们调用了该自定义函数来求取输入字符串的长度,并输出结果。
相关问题
请编写一个函数fun,它的功能是:比较两个字符串的长度,(不得调用C语言提供的求字符串长度的函数),函数返回较长的字符串。若两个字符串长度相同,则返回第一个字符串。
好的,我会编写这个函数。以下是代码:
```
char* fun(char* str1, char* str2) {
int len1 = 0, len2 = 0;
char* p1 = str1;
char* p2 = str2;
// 计算第一个字符串的长度
while (*p1 != '\0') {
len1++;
p1++;
}
// 计算第二个字符串的长度
while (*p2 != '\0') {
len2++;
p2++;
}
// 返回较长的字符串
if (len1 >= len2) {
return str1;
} else {
return str2;
}
}
```
这个函数接受两个字符指针作为参数,分别表示需要比较长度的字符串。函数首先使用两个指针来计算每个字符串的长度,然后比较两个长度,最后返回较长的字符串。如果两个字符串的长度相同,则返回第一个字符串。注意,本函数没有调用C语言提供的求字符串长度的函数。
请编写一个函数fun,它的功能是:比较两个字符串的长度,(不得调用C语言提供的求字符串长度的函数),函数返回较长的字符串。若两个字符串长度相同,则返回第一个字符串。
以下是一个用C语言编写的函数fun,实现了比较两个字符串长度的功能:
```c
#include <stdio.h>
char* fun(char* str1, char* str2) {
int len1 = 0, len2 = 0;
// 计算第一个字符串的长度
while (*str1 != '\0') {
len1++;
str1++;
}
// 计算第二个字符串的长度
while (*str2 != '\0') {
len2++;
str2++;
}
// 比较字符串长度并返回较长的字符串
if (len1 >= len2) {
return str1 - len1;
} else {
return str2 - len2;
}
}
int main() {
char str1[] = "Hello";
char str2[] = "World";
char* result = fun(str1, str2);
printf("The longer string is: %s\n", result);
return 0;
}
```
注意:这里使用了指针的运算来获取字符串的起始位置,返回的是较长字符串的起始位置。