C语言经典算法100例-068-练习使用指针3

本文通过C语言实现了一个数组向右滚动的示例。首先输入数组大小及元素,再设定滚动偏移量,最后显示滚动前后数组的变化。代码使用指针完成数组内元素的移动。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

直接看代码和注释吧。。。

//利用指针实现数组的滚动 本例实现数组像右滚动几位
#include <stdio.h>
#include <stdlib.h>	
int main()
{
    int arr[20];
    int i,n,offset;
    //输入数组大小和数组内容
    printf("Total numbers?\n");
    scanf("%d",&n);
    printf("Input %d numbers.\n",n);
    for(i=0;i<n;i++)
        scanf("%d",&arr[i]);
    //输入滚动偏移量
    printf("Set your offset.\n");
    scanf("%d",&offset);
    printf("Offset is %d.\n",offset);
    //打印滚动前数组
    print_arr(arr,n);
    //滚动数组并打印
    move(arr,n,offset);
    print_arr(arr,n);
}

//打印数组
void print_arr(int array[],int n)
{
    int i;
    for(i=0;i<n;++i)
        printf("%4d",array[i]);
    printf("\n");
}
//滚动数组
void move(int array[],int n,int offset)
{
    int *p,*arr_end;
    arr_end=array+n;      //数组最后一个元素的下一个位置
    int last;

    //滚动直到偏移量为0
    while(offset)
    {
        last=*(arr_end-1);
        for(p=arr_end-1;p!=array;--p)   //向右滚动一位
            *p=*(p-1);
        *array=last;
        --offset;
    }
}


C语言经典算法。 第一篇 基础与提高  实1利用库函数编写基本显示程序  实2变量属性  实3运算符与类型  实4关于程序结构  实5显示函数曲线图  实6二分法选代的应用  实7多变的立方体  实8一维整型数组应用(1)  实9一维整型数组应用(2)  实10一维整型数组应用(3)  实11一维整型数组应用(4)  实12二维数组应用(1)——显示杨辉三角  实13二维数组应用(2)——魔方阵  实14字符数组应用(1)——逻辑判断  实15字符数组应用(2)——数据模拟  实16二维数组应用——字符比较   实17利用指针进行数据处理  实18指针与字符串  实19利用指针处理二维数组  实20一级指针  实21利用指针传递参数值  实22结构体的应用  实23链表的应用(1)  实24链表的应用(2)  实25链表的应用(3)  实26共用体的应用  实27枚举类型应用  实28位运算  买29义件加密  实30文件的按记录随机读写 第二篇 图形与多媒体  实31改变文字背景色  实32及本颜色设置  实33制作表格  实34制作多样的椭圆  实35美丽的透视图形  实36错位窗口  实37能移动的矩形  实38多变的填充矩形  实39黄黑相间的矩形与圆  实40六叶图案  实41特殊图案  实42国际象棋棋盘  实43制作楼梯  实44使用线类型函数设置多个汉字  实45彩色群点  实46饼图  买47产品折线图  实48直方图  实49变大变色的拒形与国  实50多变的填充多边形  实51流星球  实52小球动态碰撞  买倒53多,曲线  实54多变的圆与环  实55优美的球体  实56运动的小车  实57统计动画消失次数  实58运行的时钟  实59直升飞机  实60演绎“生命游戏”  实61猜猜看  买62艺术清屏  买倒63制作火焰  实64动态绘制256条不同颜色的直线  实65红绿蓝三原色渐变 第三篇 综合小程序  实66两个矩阵相乘  实67艺术钟  实68家庭财务管理小程序  实69用系统时间实现随机数  实70闪动的多彩圆  实71检查系统有无鼠标  实72圆形光盘与矩形  实73动态渐变图案  实74往返两地间的小车  实75飘扬的红旗  实76显示蓝天白云图形  实77百叶窗 第四篇 计算机等级考试上机试题(二级) 第五篇 计算机等级考试上机试题(三级)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值