代码练习2

  1. 求数组中的第二大值
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;
}
相关推荐
2401_8920709818 小时前
【Linux C++ 日志系统实战】LogFile 日志文件管理核心:滚动策略、线程安全与方法全解析
linux·c++·日志系统·日志滚动
yuzhuanhei18 小时前
Visual Studio 配置C++opencv
c++·学习·visual studio
qq_3395548219 小时前
英飞凌ModusToolbox环境搭建
c语言·eclipse
不爱吃炸鸡柳19 小时前
C++ STL list 超详细解析:从接口使用到模拟实现
开发语言·c++·list
十五年专注C++开发19 小时前
RTTR: 一款MIT 协议开源的 C++ 运行时反射库
开发语言·c++·反射
‎ദ്ദിᵔ.˛.ᵔ₎19 小时前
STL 栈 队列
开发语言·c++
张張40819 小时前
(域格)环境搭建和编译
c语言·开发语言·python·ai
2401_8920709819 小时前
【Linux C++ 日志系统实战】高性能文件写入 AppendFile 核心方法解析
linux·c++·日志系统·文件写对象
郭涤生19 小时前
STL vector 扩容机制与自定义内存分配器设计分析
c++·算法
༾冬瓜大侠༿20 小时前
vector
c语言·开发语言·数据结构·c++·算法