C 练习实例67

C 语言教程 · 2019-02-22 10:43:31

题目:输入数组,最大的与第一个元素交换,最小的与最后一个元素交换,输出数组。

程序分析:谭浩强的书中答案有问题。

实例

//利用指针实现数组的滚动 本例实现数组像右滚动几位 #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 语言教程 文章: https://www.codercto.com/courses/l/17.html

查看所有标签

Realm of Racket

Realm of Racket

Matthias Felleisen、Conrad Barski M.D.、David Van Horn、Eight Students Northeastern University of / No Starch Press / 2013-6-25 / USD 39.95

Racket is the noble descendant of Lisp, a programming language renowned for its elegance and power. But while Racket retains the functional goodness of Lisp that makes programming purists drool, it wa......一起来看看 《Realm of Racket》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

html转js在线工具
html转js在线工具

html转js在线工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具