数组初始化,倒置,清空以及排序

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

void swap(int *left, int *right)
{
	int tmp;
	tmp = *left;
	*left = *right;
	*right = tmp;
}

void init(int arr[], int len)
{
	int i = 0;
	for (i = 0; i < len; i++)
		arr[i] = i;
}
void empty(int arr[], int len)
{
	int i = 0;
	for (i = 0; i < len; i++)
		arr[i] = 0;
}

void reverse(int arr[],int len)
{
	int left = 0;
	int right = len - 1;
	while (left < right)
	{
		swap(&arr[left], &arr[right]);
		left++;
		right--;
	}
}

void sort(int arr[], int len)
{
	int i = 0;
	for (i = 0; i < len; i++)
	{
		printf("%d: %d\n", (i + 1), arr[i]);
	}
}

int main()
{
	int i = 0;
	int str[10];
	int len = sizeof(str) / sizeof(str[0]);
	init(str,len);
	for (i = 0; i < len; i++)
	{
		printf("%d ", str[i]);
	}
	printf("\n");
	reverse(str,len);
	for (i = 0; i < len; i++)
	{
		printf("%d ", str[i]);
	}
	printf("\n");
	sort(str, len);
	printf("\n");
	empty(str, len);
	for (i = 0; i < len; i++)
	{
		printf("%d ", str[i]);
	}
	printf("\n");
	system("pause");
	return 0;
}
时间: 2024-11-15 11:58:54

数组初始化,倒置,清空以及排序的相关文章

c#清空数组&amp;初始化数组&amp;动态数组

清空数组>>>Array.Clear [去MSDN查看] 1 string[] str = new string[2]; 2 for (int i = 0; i < str.Length; i++) 3 str[i] = i.ToString(); 4 Array.Clear(str, 0, str.Length); 5 for (int i = 0; i < str.Length; i++) 6 Console.WriteLine(string.IsNullOrEmpty(

动态数组,数组初始化,数组内存释放,向数组中添加一个元素,向数组中添加多个元素,数组打印,顺序查找,二分查找,查找数组并返回地址,冒泡排序,改变数组中某个元素的值,删除一个数值,删除所有,查找含有

 1定义接口: Num.h #ifndef_NUM_H_ #define_NUM_H_ #include<stdio.h> #include<stdlib.h> /************************************************************************/ /*数组的结构体类型                                                    */ /*******************

利用函数调用实现数组初始化、逆置和清零

4.创建一个数组, 实现函数init()初始化数组. 实现empty()清空数组. 实现reverse()函数完成数组元素的逆置. 要求:自己设计函数的参数,返回值. #include <stdio.h> //数组变化 void init(int arr[],int len) //数组初始化 { int i=0; int num=0; printf("初始化数组.\n"); for(i=0;i<len;i++) { scanf("%d",&

PHP数组基础知识总结以及排序

最近刚刚实习,经常用到php的数组,所以总结一下,以后不用随时去乱搜. 一:基础知识 PHP支持数字索引数组和关联数组,关联数组允许使用更有意义的数据(如字符串)作为索引.以及允许间隔性地使用数组和字符串作为数组的索引. 1.数组定义: $arr = [1,2,3,4];//数字索引数组 php5.4以上提供的新方式 $arr = ['a'=>1,'b'=>2];//关联索引数组 $arr = array(1,2,3,4); $arr = array('a'=>1,'b'=>2);

qsort 函数的使用——对普通数组、指针数组、二维数组中的元素进行排序

在ANSI C中,qsort函数的原型是 #include <stdlib.h> void qsort(void *base, size_t nmemb, size_t size, int (*compar) (const void *, const void *)); 解释:qsort函数对含有nmemb个元素的数组进行排序,而base指针指向数组的第一个元素.这个数组的元素个数由size指定. compar函数对qsort的比较操作进行定义,所以可以定制数字的比较,字符串的比较,甚至结构体

Java之路(四)数组初始化

本文主要讲数组的初始化方法.可变参数列表以及可变参数列表对函数重载的影响. 数组初始化 定义数组的方式: int[] arr1; 或  int arr1[]; 数组初始化 通过上边的定义,我们只是得到了一个数组的引用.这时已经为引用分配了存储空间,但是还没有给数组对象本身分配任何空间.想要给数组对象分配存储空间,必须使用初始化表达式. a.在数组创建的地方进行初始化,如: int[] arr1 = {1,2,3,4,5}; 这种方式等价于使用new来进行存储空间分配. b.给数组的引用赋值,如:

PHP usort 使用用户自定义的比较函数对数组中的值进行排序

From: http://www.php100.com/cover/php/2395.html usort (PHP 4, PHP 5) usort — 使用用户自定义的比较函数对数组中的值进行排序 说明 bool usort ( array &$array , callback $cmp_function ) 本函数将用用户自定义的比较函数对一个数组中的值进行排序.如果要排序的数组需要用一种不寻常的标准进行排序,那么应该使用此函数. 比较函数必须在第一个参数被认为小于,等于或大于第二个参数时分

数组之 -- 数组元素的比较、排序

前言: 当我们在使用Java,应该"优选容器而不是数组".只有在证明性能成为问题,并且切换到数组对性能提高有所帮助时,你才应该使用数组. 排序: 排序必须根据对象的实际类型执行比较操作.一种自然的解决方案是为每种不同的类型各编写一个不同的排序方法,但是这样的代码难以被新的类型所复用. 程序设计的基本目标是:"将保持不变的事物与会发生改变的事物相分离",而这里,不变的是通用的排序算法,变化的是各种对象相互比较的方式.因此,不是将进行比较的代码编写成不同的子程序,而是使

C++中数组初始化

#include<iostream>using std::cout;using std::endl;int arr1[5];int arr2[5] = {1,3,5};int main(){int arr3[5];int arr4[5] = {2,4,6};int *pi1 = new int[5];int *pi2 = new int[5]();for(int i = 0; i != 5; i++)   cout << arr1[i] << " "

编程题:实现一维数组初始化的几种形式。

#include<stdio.h> void main() { int n; int a[5]={0,1,2,3,4}; int b[5]={1,2}; float c[]={1,2,3,4,5}; for(n=0;n<5;n++) printf("%5d",a[n]); printf("\n"); for(n=0;n<5;n++) printf("%5d",b[n]); printf("\n"); f