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]; 
    }
}
相关推荐
wu_ye_m7 分钟前
学习c语言第34天 用函数每次输出+1,链式访问,int和void
c语言·学习·算法
Lucky_ldy9 分钟前
数据结构从入门到精通:链表的分类
数据结构·链表
凉、介14 分钟前
深入理解 ARMv8-A|Application Binary Interface (ABI)
c语言·笔记·学习·嵌入式·arm
星马梦缘18 分钟前
算法设计与分析 作业三 答案与解析
算法·线性规划·二分图匹配·多元最短路·流网络·bellmanford·匈牙利树算法
微风欲寻竹影19 分钟前
Java数据结构——二叉树相关OJ题目详解
java·数据结构
微风欲寻竹影20 分钟前
Java数据结构——二叉树(Binary Tree)详解
java·数据结构·算法
想吃火锅100521 分钟前
【leetcode】3.无重复字符的最长字串js版
算法·leetcode·职场和发展
smith成长之旅24 分钟前
08 | Mem0 框架分析: BM25 的 Sigmoid 归一化
数据库·python·算法
dongf201926 分钟前
R 语言随机森林算法
算法·随机森林·r语言
AZaLEan__39 分钟前
图论:拓扑排序
算法·深度优先