Y1.编写一函数实现对起始地址是a,长度是n的整型数组从小到大排序。函数原型为:void sort(int *a, int n); 2.编写一个函数,接收一个字符串,统计其中任意两个及两个以上相邻字符相同的子串的个数。比如字符串"abbcccaddd"子串有"bb"、"cc"、"cc"、"dd"、"dd"、"ccc"和"ddd",共7个。函数原型为:int fun(const char *str); 3.编写一个函数,接收一个字符串,统计其中数字字符个数及字母字符个数。函数原型为:void fun(const char *str, int* char_N, int* letter_N); 要使用c语言并且不适使用min函数
时间: 2024-02-25 09:52:37 浏览: 71
简单的图形函数库的设计与实现
5星 · 资源好评率100%
好的,以下是三个题目的C语言代码实现:
1. 实现整型数组从小到大排序
```c
void sort(int *a, int n) {
int i, j, temp;
for (i = 0; i < n - 1; i++) {
for (j = i + 1; j < n; j++) {
if (*(a + i) > *(a + j)) {
temp = *(a + i);
*(a + i) = *(a + j);
*(a + j) = temp;
}
}
}
}
```
2. 统计字符串中任意两个及两个以上相邻字符相同的子串的个数
```c
int fun(const char *str) {
int count = 0;
int i, j, k;
for (i = 0; *(str + i) != '\0'; i++) {
for (j = i + 1; *(str + j) != '\0'; j++) {
if (*(str + i) == *(str + j)) {
count++;
for (k = j + 1; *(str + k) != '\0'; k++) {
if (*(str + i) == *(str + k)) {
count++;
} else {
break;
}
}
}
}
}
return count;
}
```
3. 统计字符串中数字字符个数及字母字符个数
```c
void fun(const char *str, int* char_N, int* letter_N) {
*char_N = 0;
*letter_N = 0;
int i;
for (i = 0; *(str + i) != '\0'; i++) {
if (*(str + i) >= '0' && *(str + i) <= '9') {
(*char_N)++;
} else if ((*(str + i) >= 'a' && *(str + i) <= 'z') || (*(str + i) >= 'A' && *(str + i) <= 'Z')) {
(*letter_N)++;
}
}
}
```
希望对你有帮助!
阅读全文