- 求数组中的第二大值
cpp
#include <stdio.h>
#include <stdlib.h>
int main() {
int arr[10]={1,9,2,8,7,3,4,6,5,10};
int first, second,i;
if (arr[0] > arr[1]) {
first = arr[0];
second = arr[1];
} else {
first = arr[1];
second = arr[0];
}
for(i = 2; i < 10; i++) {
if(arr[i] > first) {
second = first;
first = arr[i];
} else if(arr[i] > second && arr[i] != first) {
second = arr[i];
}
}
if(second == first) {
printf("没有第二大的值\n");
} else {
printf("第二大的值是: %d\n", second);
}
return 0;
}
2终端输入带空格的字符串,删除字符中的空格
cpp
#include <stdio.h>
#include <string.h>
void removeSpaces(char* str) {
int i, j = 0;
int len = strlen(str);
for (i = 0; i < len; i++) {
if (str[i] != ' ') {
str[j++] = str[i];
}
}
str[j] = '\0'; // 终止符
}
int main() {
char str[100];
// 提示用户输入字符串
printf("请输入一个带空格的字符串: ");
fgets(str, sizeof(str), stdin);
// 移除换行符(如果存在)
size_t len = strlen(str);
if (len > 0 && str[len - 1] == '\n') {
str[len - 1] = '\0';
}
// 删除字符串中的空格
removeSpaces(str);
// 输出结果
printf("删除空格后的字符串是: %s\n", str);
return 0;
}