zoukankan      html  css  js  c++  java
  • C语言必掌握知识点

    个人总结,学c的赶快看


    1….++a 和 a++ 的差别:

              ++a  先加在赋值  a++ 先赋值在加  后者赋给变量b的值为a而不是a+1后的值

    2….按位与  同为1时为1,其它为0     如:  1110 & 1010 =1010
         按位或 同为0时为0。其它为1     如:1110 | 1010 =1110

    3….  ~:非运算  按位取反  如: ~1111  =  0000

    4…. 按位异或  同样位数字不同为1  同样为0  如:1010  ^ 0110 =110
     左移一位相当于成乘上2
     
    5….条件为一个范围时 (表达式  与、或 表达式)
              scanf时,变量前加&符号   switch里面为表达式,case后为冒号。碰到break终止  continue 仅仅结束本次循环

    6…. 条件运算符 ?    a>b ?

    a:b   真为前者 假为后者


    7….求两个数的最大公约数和最小公倍数
        用欧几里德算法辗转相除法)求两个数的最大公约数的过程例如以下:
    先用大的一个数除以小的一个数,得第一个余数;
    再用小的一个数除以第一个余数。得第二个余数;又用第一个余数除以第二个余数,得第三个余数。这样逐次用后一个数去除前一个余数,直到余数是0为止。那么,最后一个除数就是所求的最大公约数(假设最后的除数是1,那么原来的两个数是互质数)。

    比如求1515和600的最大公约数,
    第一次:用1515除以600,商2余315。
    第二次:用600除以315,商1余285;
    第三次:用315除以285,商1余30。
    第四次:用285除以30,商9余15;
    第五次:用30除以15,商2余0。
    1515和600的最大公约数是15。
    
    
    两个正整数的最小公倍数=两个数的乘积÷两个数的最大公约数
    
    
    8…产生随机数
    arr[i]=10+rand()%90  表示产生10到100的随机数

    9….所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数

    本身。比如:153是一个“水仙花数”,由于153=1的三次方+5的三次方+3的三次方。

    10…字符串不知道长度的时候  for ( ; arr[i] ;)

    11….定义一个20个元素的数组,要求范围在x=30--y=70之间(用随机数)  如:循环体内: a[i] = arc4random()%41+30     ---------------->      arc4random()%(y-x+1)+x

    12…冒泡排序 // n个元素 比較n-1趟 

    13…..字符在数组中的应用
    strlen()  长度
    strcpy()  拷贝
    strcat()   拼接
    strcmp()   比較  //目的串  源串


     char str[] = {'o','k'}
     char str[] = "ok"  
    差别:
    第二个隐含一个结束符 ' '

    14..//字符数组的初始化,最easy理解的方式就是逐个字符赋给数组中各元素

        

        char str[10]={'I','','a','m','h','a','p','p','y'}; 


    15…

    //仅仅要不遇到回车,就一直取输入的字符

        char a = 0;

        while ((a = getchar()) != ' ') {

            printf("a = %c ", a);

        }

  • 相关阅读:
    Dubbo笔记(二)
    Dubbo笔记(一)
    初识多线程
    Redis底层结构全了解
    用golang刷算法--归并排序算法
    谈谈golang中的channel
    用golang刷算法--快速排序算法
    谈谈golang中的引用类型与地址分配
    Arch安装后的配置(超详细)
    ArchLinux安装(Deepin v20桌面环境)
  • 原文地址:https://www.cnblogs.com/blfbuaa/p/6733902.html
Copyright © 2011-2022 走看看