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]; 
    }
}
相关推荐
罗湖老棍子几秒前
花神游历各国(信息学奥赛一本通- P1550)(洛谷-P4145)
数据结构·算法·线段树·势能数·区间开平方根 区间查询
Mr_Xuhhh2 分钟前
LeetCode 热题 100 刷题笔记:数组与排列的经典解法(续)
算法·leetcode·职场和发展
炽烈小老头22 分钟前
【每天学习一点算法 2026/03/29】搜索二维矩阵 II
学习·算法·矩阵
靴子学长28 分钟前
Qwen3.5 架构手撕源码
算法·架构·大模型
寒月小酒31 分钟前
3.28 OJ
算法
寒秋花开曾相惜37 分钟前
(学习笔记)3.8 指针运算(3.8.5 变长数组)
java·c语言·开发语言·笔记·学习
AI成长日志41 分钟前
【笔面试算法学习专栏】堆与优先队列专题:数组中的第K个最大元素与前K个高频元素
学习·算法·面试
编程之升级打怪1 小时前
当前的软件和硬件开发难题
c语言
雅俗共赏1001 小时前
医学图像重建中常用的正则化分类
算法
IronMurphy1 小时前
【算法三十二】
算法