选择排序,二维数组,字符型数组

二维数组 

选择排序

#include<stdio.h>
#include<stdlib.h>
#include<time.h>
int main()
{
    int i = 0;
    int min = 0;
    int j = 0;
    int a[5]={0};
    int t=0;
    int len=sizeof(a)/sizeof(a[0]);
    srand(time(NULL));   //srand():随机数种子,time(NULL):获得1970.1.1到现在的秒数
    printf("排序前:");
    for(i=0;i<len;i++)
    {
        a[i]=rand()%100;     //rand();获得随机数
        printf("%d\t",a[i]);
    }
    printf("\n");
    
    for(i=0;i<len-1;i++)
    {
        min=i;
        for(j=i+1;j<len;j++)
        {
          if(a[j]<a[min])
          {
            min=j;
          }
         
        }
        if(min!=i)
        {
            t=a[i];
            a[i]=a[min];
            a[min]=t;
        }
    }
    printf("排序后:");
    for(i=0;i<len;i++)
    {
     printf("%d\t",a[i]);
    }
    printf("\n");

}

字符型数组

注意:

1.char ch[16]={'h','t','t','p',0};    //打印出http

 2.char ch1[16]={"http0\0"};  //打印出http0,总共有7个字符,'h' 't' 't' 'p' '\0' 和结尾的'\0'
  int r =strlen(ch1);     //r=5,strlen:从字符串开头到'\0'之间的元素个数
  int s=sizeof(ch1);      //s=16 数组元素个数为16

 //char ch3[]={"http0\0"};
//int s2=sizeof(ch3);//求出元素个数包括'\0'共7个字符

  3. char ch2[16]={'h','t','t','p','\0'};   //打印出http ,'\0'和0相同

//char str[6]= {'h','e','l','l','o','o'};
    //printf遇到'\0'结束打印
    //打印的时候会因为没有'\0'会出现内存越界,打印后面内存单元的内容

//char str1[]= {'h','e','l','l','o'};     
    //printf遇到'\0'结束打印
    //打印的时候会因为没有'\0'(0)会出现内存越界,打印后面内存单元的内容

 

注意:

1.char ch[16]={'h','t','t','p',0};    //打印出http

 2.char ch1[16]={"http0\0"};  //打印出http0,总共有7个字符,'h' 't' 't' 'p' '\0' 和结尾的'\0'
  int r =strlen(ch1);     //r=5,strlen:从字符串开头到'\0'之间的元素个数
  int s=sizeof(ch1);      //s=16 数组元素个数为16

 //char ch3[]={"http0\0"};
//int s2=sizeof(ch3);//求出元素个数包括'\0'共7个字符



  3. char ch2[16]={'h','t','t','p','\0'};   //打印出http ,'\0'和0相同

//char str[6]= {'h','e','l','l','o','o'};
    //printf遇到'\0'结束打印
    //打印的时候会因为没有'\0'会出现内存越界,打印后面内存单元的内容

//char str1[]= {'h','e','l','l','o'};     
    //printf遇到'\0'结束打印
    //打印的时候会因为没有'\0'(0)会出现内存越界,打印后面内存单元的内容

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值