PTA:用函数实现从数列中删除一个数

题目:

编写一个函数实现:删除n个元素的数列中下标为k的元素。

测试程序将输入一个下标值,调用本函数,删除数列{1,4,13,9,6,11,18,14,25}中该下标位置的元素,并输出删除后的数列。

函数接口定义:

void deleted ( int a[], int n, int k);

其中 a 、n和 k 都是用户传入的参数。 a是数列所在数组的首地址; n 是数列元素个数, k 是[0, 8]区间内的个位数。

裁判测试程序样例:

c 复制代码
#include <stdio.h>
void deleted ( int a[], int n, int k);
int main()
{
    int a[9]={1,4,13,9,6,11,18,14,25},k;
    int i;
    scanf("%d",&k);
    deleted(a,9,k);
    for(i=0;i<8;i++)
         printf("%4d", a[i]);
    return 0;
 }
/*请将答案写在这里*/

输入样例:

输入一个[0,8]间的个位数

0

输出样例:

输出数组中各元素占4列

4 13 9 6 11 18 14 25

解题过程

c 复制代码
#include <stdio.h>
void deleted(int a[], int n, int k){
    if (k < 0 || k >= n){
        return;
    }
    for (int i = k; i < n - 1; i++) {
        a[i] = a[i + 1]; 
    }
}
相关推荐
glimix几秒前
使用C语言与Easy2D库开发推箱子游戏(1)
c语言·游戏·pushbox
明月下3 分钟前
【视觉算法——Yolo系列】Yolov11下载、训练&推理、量化&转化
算法·yolo
deng-c-f5 分钟前
Linux C/C++ 学习日记(63):Redis(四):事务
linux·c语言·c++
好奇龙猫9 分钟前
大学院-筆記試験練習:线性代数和数据结构(8)
数据结构·线性代数
DYS_房东的猫13 分钟前
《 C++ 零基础入门教程》第8章:多线程与并发编程 —— 让程序“同时做多件事”
开发语言·c++·算法
小郭团队24 分钟前
1_1_七段式SVPWM (传统算法反正切)算法理论与 MATLAB 实现详解
人工智能·stm32·嵌入式硬件·算法·dsp开发
翟天保Steven29 分钟前
医学影像-CBCT图像重建FDK算法
算法·医学影像·图像重建
松涛和鸣29 分钟前
DAY53 UART Serial Communication
c语言·单片机·嵌入式硬件·tcp/ip·51单片机
星诺算法备案31 分钟前
《算法安全自评估报告》的填报与实操(附模板)
人工智能·算法·备案·算法备案