[c语言中的数组排序]#include #include int numSort(int *a,int count_num) { int i,j,min=-1,temp; for(j=count_num-1;j>0;j--) for(i=j-1;i>=0;i--) if(a[j] > a[i]) { temp=a[i]; a[i]=a[j]...+阅读
指针数组函数的用法
请参考:
#include
const int fun1(int a,int b)
{
return a+b;
};
const int fun2(int a,int b)
{
return a-b;
};
typedef const int (* Fun)(int a,int b); //把 int 返回值 两个int参数的函数定义成Fun函数指针类型
int main()
{
Fun f[2]={fun1,fun2}; //形式相同的函数指针数组,方便函数的统一管理
int temp[2];
/*
int i;
for(i=0;i<2;i++)
temp[i]=f[i](1,1);
*/
temp[0]=f[0](3,6);
temp[1]=f[1](7,4);
printf("%d %d\n",temp[0],temp[1]);
return 0;
}
指向数组指针的运用
//定义指针数组(而不是数组指针)
//所谓指针数组就是"它是一个数组,它的每个元素是指针"
//所谓数组指针就是"它是一个指针变量,它指向一个数组的首地址"
typedefint*PointerArray10[10];
PointerArray10Data[3];
//可以理解Data为int*Data[3][10];
//可以直接赋值:
intTestData=32;//用来测试的数据
Data[1][2]=&TestData;//因为Data是指针数组,所以给它的元素赋指针
//我们来验证上面的赋值
PointerArray10*pWork=Data;//定义PointerArray10类型的指针指向Data
//因为Data为数组,所以直接用Data数组名是表示它的首地址
pWork++;//让pWork指向Data[1]首地址;
printf("Data[1][2]=[%d]\n",(*pWork)[2]);
//用int*来验证
int**pWork2=&(Data[0][0]);//定义int类型的指针指向Data第0行第0列元素,因为
//该元素是整型指针,所以应该定义指向整型指针的指针,在C语言中数组是按行存放的
//Data有3行(0~2),每行10列(0~9),所以要得到第1行第2列的数据需要将pWork2移动
//1行*10个元素/行+第2列(即计算[1][2]元素对Data[0][0]偏移量
pWork2=pWork2+1*10+2;
printf("Data[1][2]=[%d]\n",**pWork2);
c指针数组怎么用
指针数组,是指一个数组里面装着指针;
一下是指针数组的使用案例:
#include "stdafx.h"
#include
using namespace std;
int _tmain(int argc, _TCHAR* argv[])
{
int *ptr[5]; //指针数组
int p = 5, p2 = 8, *page, *page2;
page = &p;
page2 = &p2;
ptr[0] = &p;
ptr[1] = page2;
cout << *ptr[0] << endl;
cout << *page << endl;
cout << *ptr[1] << endl;
return 0;
}
运行结果:
C指针数组是什么?怎么用
指针数组
主要用来指向若干字符串,使字符串的处理更加灵活。同时,我们应该清楚知道,字符串本身就是一个一维数组。
对于指针数组应注意以下几点:
(1):数组中的元素均为指针类型数据
(2):在给数组赋值时,表面看到是比如字符串等,但实际数组元素本身的值并不是字符串,而是字符串的首地址
eg.
main()
{
void sort(char *name[],int n);
char *name[]={"Follow me","The C language","Great Wall","How to inprove your programming technice"};
//这里返回指针值的数组name[]各元素的值并不是以上这些字符串,而是这些字符串的首地址
......
}
延伸阅读:
C语言数组排序#include<stdio.h> void main() { int a[10] = { 10,2,3,4,5,6,9,8,7,1 }; int i,j,t; for(j=0;j<10;j++) for(i=0;i<10-1-j;i++) if(a[i]>a[i+1]) /* 由小到大,由大到小时改...
数组排序C语言#include <stdio.h> #include <iostream.h> #include <stdlib.h> #include<time.h> void main() { int a[100],i,c,b,d,e,n; cin>>n; srand((unsigned)time(NULL)); for(i=0...
C语言数组排列怎么做最常用的就是冒泡排序的方法了。 比如对10个数字进行排序,则程序是这样的 #include<stdio.h>void main(){int a[10];int i,j, t;printf("输入十个数字:\n");for(i=0;i<=9;i++){sca...
C语言中数组的排序方法中选择排序的原理是,每次从待排序数字中挑选出最大(最小)数字,放在有序序列的末尾。实际操作中,只需要在这个数组中将挑出来的数字与前面的数字交换即可。 例如: 4 1 5 2 3 找到最小...
C语言数组排序方法像是选择法排序,但不太简练! 正确的选择法为: #include <stdio.h> void main(void) { int a[9]={3,42,55,546,43,323,54,121,32},i,j,l,temp; for(i=0;i<9;i++) for(j=i+1;j<8;...
c语言整数数组排序#include"stdio.h" #define N 10 void sort(int a[],int method) { int i,k,t,j; switch(method) { case 1: for(i=0;i<N;i++) { for(j=0;j<N;j++) { if(a[j]>a[i]) { t=a[i];...
excel函数IF的用法IF 请参阅 执行真假值判断,根据逻辑计算的真假值,返回不同结果。 可以使用函数 IF 对数值和公式进行条件检测。 语法 IF(logical_test,value_if_true,value_if_false) Logical...
如何创建ArrayList数组如何创建ArrayList数组,用ArrayList的方法实现:使用一个数组储存ArrayList的元素:ArrayList 可以方便的实现列表操作, 但有时候需要建立一个ArrayList数组. 首先想到的是类似下...
C语言问题利用指针方法如何引导学生分析文本的篇章结构:基本解释 1、指针的本质是一个与地址相关的复合类型,它的值是数据存放的位置(地址);数组的本质则是一系列的变量。 2、数组名对应着(而不是指向)一...