zoukankan      html  css  js  c++  java
  • iOS第4天数组排序

    
    #import <Foundation/Foundation.h>
    
    int main(int argc, const char * argv[]) {
        //创建5个整型变量
        //对器 ctrl + i
    //    int a = 1;
    //    int b = 2;
    //    int c = 3;
    //    int d = 4;
    //    int f = 5;
    //    
    //    int n1 = 0;
    //    int n2 = 0;
    //    int n3 = 0;
    //    int n4 = 0;
    //    int n5 = 0;
    //    int n6 = 0;
    //    int n7 = 0;
    //    int n8 = 0;
    //    int n9 = 0;
    //    int n10 = 0;
        //数组
        /*
         本质: 快速定义多个相同数据类型的变量
         定义: 数据类型 数组名[数组元素个数] = {值1, 值2, ..., 值n};
         移动:cmd alt + []
         数组的确定:定义出来的是相同数据类型的变量
         //注意1:最后一个数组元素的下标是:数组元素的个数 -1
         //注意2:c语言,不会检测数组下标越界
         */
        //    short array1[10] = {1,2,3,5};
        //    char array2[10] = {'a','b'};
        //    int c[5] = {0};
        //    int  d[] = {9, 5, 2, 7};//在没有给定数组元素个数的时候,可以按照该模式,此时一定要写轻搓所有的初值
        //    //创建 float ,short,char 类型的数组,元素各十个
    //    int array[10] = {1,2,3,4,5,6,7,8,9,10};
    //    for (int i = 0 ; i < 10 ;i++)
    //    {
    //        printf("array[%d] = %d",  i, array[i]);
    //    }
        //定义20个元素
        /*
        int a[10] = {0};
        int b[10] = {0};
        int c[10] = {0};
        for (int i = 0 ; i < 10; i++) {
            a[i] = arc4random() % (40 - 20 + 1) + 20;
            
            printf("a%d 
    ",a[i]);
      
        }
        for (int i = 0; i < 10; i++) {
            b[i] = a[i];
            printf("b = %d 
    ", b[i]);
        }
        for (int i = 0; i < 10 ; i++) {
            c[i] = a[i] + b[i];
        }
         */
    //    int a[10] = {0};
    //    int max = 0;
    //    for (int i = 0; i < 10  ; i++) {
    //        a[i] = arc4random() % (40 - 20 +1) + 20;
    //        
    //        
    //        
    //        printf("%d ",a[i]);
    //        max = max > a[i] ? max : a[i];
    //    }
    //    printf("最大值是%d",max);
        
        
        //冒泡排序
        /*
        int a[5] = {38,24,18,29,10};
        //5个元素第1趟比较了4次,第2趟比较了3次,第3趟比较了2次,第4次比较1次
        
        int tem = 0;
        //这里的i<4不是5防止数组元素越界
        //这里是走了一趟,找到了最大值
        //外层循环控制比较的趟数
        //外层循环 -1可减可不减,-1是为了提高程序的效率
       for (int j = 0; j < 5 - 1; j++) {
        //内层循环控制比较的次数
        //内层循环,-1必须减,目的:防止数组下标越界
        //内层循环,-j可减可不减,-j是为了提高效率
            for (int i = 0; i < 5 - 1 -j ; i++) {
                if (a[i] > a[i+1]) {
                    //如果前面的大于后面的交换
                    tem = a[i];
                    a[i] = a[i+1];
                    a[i+1] = tem;
                }
            }
        }
    
        for (int i = 0; i < 5; i++) {
            printf("%d ",a[i]);
        }
         */
        /*
        //运行的快捷键cmd+R;
        //定义十个元素的整型数组,[10, 30]随机数,升序排列,然后输出
        int  a[10] = {0};
        int temp = 0;
        for (int i = 0; i < 10; i++) {
            a[i] = arc4random() % (30 - 10 +1) + 10;
        }
    //    for (int i = 0; i < 10 - 1;  i++) {
    //        for (int j = 0; j < 10 - 1 - i;  j++) {
    //            if (a[j] > a[j+1]) {
    //                temp = a[j];
    //                a[j] = a[j+1];
    //                a[j+1] = temp;
    //            }
    //        }
    //    }
        for (int i = 0; i < 10 - 1; i++) {
            for (int j = 0; j < 10 - 1 - i; j++) {
                if (a[j] < a[j + 1]) {
                    temp = a[j];
                    a[j] = a[j + 1];
                    a[j + 1] = temp;
                }
            }
        }
        for (int i = 0; i < 10 ; i++) {
            printf("%d ",a[i]);
        }
         */
        //字符数组
        //定义数组
        /*
        char charArray[7] = {'n', 's', 'd', 'b', 'b', 'b', 's'};
        char str[] = "iPhone";//字符串,末尾存在隐含字符
        printf("%s 
    ",str);
        //访问单个
        printf("%c 
    ", charArray[0]);
        for (int i = 0; i < 7; i++) {
            printf("%c ",charArray[i]);
        } 
         */
        //字符串
        //字符串是字符数组,但是字符数组不一定是字符串.
        //%s 从字符串第一个字符开始输出,直到遇到  结束输出
        //srrlen 求的是字符串看到的长度
        //1.计算字符串长度的函数
        char string1[] = "iPad";
         int length = (int)strlen(string1);
        printf("%d 
    ", length);
        //2.字符串拷贝函数: strcpy(), 将后一个字符串的内容,拷贝给前一个字符串.
        //注意:后一个字符串的长度,不能超过前一个字符串
        char string2[] = "iPod";
        // char  string3[]  = "iPone";
        strcpy(string1, string2);
        printf("%s
    ",string1);
        printf("%s
    ",string2);
        //3.字符串的拼接函数: strcat(),将后一个字符串拼接到前一个字符串的后面(从前一个字符串的位置开始拼接)
        strcat(string2, string2);
        printf("%s
    ",string2);
        //4.字符串比较函数: strcmp(),前一个字符串,与后一个字符串,逐个进行,直到寻找到不相等的字符结束;返回的是,前一个字符串与后一个字符串不相等字符串之间的差值(前一个字符串中的字符,减去后一个字符串中的字符
        int result = strcmp(string1 , string2);
        printf("%d 
    ", result);
        return 0;
    }
  • 相关阅读:
    anaconda的一些命令
    ffmpeg播放RTSP的一点优化
    CUDA JPEG编码
    获取CPU和内存的使用率
    《OpenCL编程指南》之 与Direct3D互操作
    OpenGL全景视频
    win32调用系统颜色对话框
    [转]RGB数据保存为BMP图片
    NVML查询显卡信息
    ffmpeg nvenc编码
  • 原文地址:https://www.cnblogs.com/wohaoxue/p/4656198.html
Copyright © 2011-2022 走看看