代码练习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;
}
相关推荐
快乐的划水a5 小时前
组合模式及优化
c++·设计模式·组合模式
星星火柴9366 小时前
关于“双指针法“的总结
数据结构·c++·笔记·学习·算法
艾莉丝努力练剑7 小时前
【洛谷刷题】用C语言和C++做一些入门题,练习洛谷IDE模式:分支机构(一)
c语言·开发语言·数据结构·c++·学习·算法
Cx330❀9 小时前
【数据结构初阶】--排序(五):计数排序,排序算法复杂度对比和稳定性分析
c语言·数据结构·经验分享·笔记·算法·排序算法
阿巴~阿巴~9 小时前
深入解析C++ STL链表(List)模拟实现
开发语言·c++·链表·stl·list
..过云雨10 小时前
01.【数据结构-C语言】数据结构概念&算法效率(时间复杂度和空间复杂度)
c语言·数据结构·笔记·学习
旺小仔.10 小时前
双指针和codetop复习
数据结构·c++·算法
jingfeng51410 小时前
C++ STL-string类底层实现
前端·c++·算法
郝学胜-神的一滴11 小时前
基于C++的词法分析器:使用正则表达式的实现
开发语言·c++·程序人生·正则表达式·stl
谱写秋天11 小时前
在STM32F103上进行FreeRTOS移植和配置(STM32CubeIDE)
c语言·stm32·单片机·freertos