5.运算符

5.1 常见运算符种类

算数运算符
算数运算符可以进行算术运算

一元运算符:++ --
二元运算符:+ - * / %

关系运算符
关系运算符可以比较大小,长短,高低
> = <
&& 逻辑于
|| 逻辑或
赋值运算符

###5.2 运算符优先级

! () sizeof() ++
算数运算符
关系运算符
&& 、||
赋值运算符

案例1:取模的注意事项
取模注意要点:取模结果的符号只与第一位相同。
下面看这个小案例

#include <stdio.h>
int main()
{
    int a=48;
    a%=(-13);
    printf("%d",a);
    return 0;
}

运行这段代码会得到 9, 取模得到的结果是48决定的。

#include <stdio.h>
int main()
{
    int a=(-48);
    a%=(-13);
    printf("%d",a);
    return 0;
}

运行这段代码得到的结果为-9。

案例2:sizeof()的应用

#include <stdio.h>
int main()
{
printf("这个数字所占的空间为%d",sizeof(1900));
return 0;
}

运行这段代码这个数字所占的空间为4。

6.初探循环

循环的目的是为了让计算机重复做规则相同指令,下面开始介绍while循环。
基本语法

while(条件语句)
{
//循环操作语句
}

循环的三要素

循环变量和初值
循环变量的判断
循环变量的更新

初学者在写循环代码的时候,可以按照这三步来思考。
经典案例1:求累加1到100的结果

#include <stdio.h>
int main()
{
    int a=1;    /* 循环变量*/
    int sum=0;      /*初值*/
    while(a<=100){    /*对循环变量的判断*/
        sum +=a;
        a ++;  /*循环变量的更新*/
    }
     printf("%d",sum);
}

经典案例2:做一个简单的加密小程序,给输入的数字每位加5模10。

#include <stdio.h>
int main()
{
   /*将一个随机的数字取出每一位的数字,加五模十*/
    int num; 
    int a; /*定义初始变量*/
    printf("please input a number:"); /*随机输入一位数*/
    scanf("%d",&num);

    while(num>0){ /*判断数字是否还有下一位*/
        a= (num+5)%10;   /*将数字+5模10
        num/=10;  /*循环变量更新*/
        printf("%d",a); 
    }
    return 0;
}

经典案例3:打印斐波那契数列
观察数列的规律 1 1 2 3 5 8 13 21 34……

#include <stdio.h>
int main()
{
   int a = 1,b = 1;
   while(1)
   {
      printf("%d,%d",a,b);
      a = a + b;
      b = a + b;
   }
 return 0;
}

经典案例4:猴子吃桃的问题
有一只猴子拥有一堆桃子,它每次吃桃子的一半,然后扔掉一个桃子,到了第十天的时候,还剩下一个桃子,请问这堆桃子一共有多少?

#include <stdio.h>
int main()
{
    int peach; /*找到初始变量
    int days;
    peach=1;
    days=9;
    /*第十天的桃子数量是1,那么可以求第九天的桃子数量,所以初始的天数是第十天*/

    while(days>0){
        peach=(peach+1)*2;/*计算前一天桃子的数量*/
        days=days-1; /*变量自减,往前推算天数*/
    }
    printf("桃子总共的数量是%d",peach);
    return 0;
}

BY—刘华振
于老九学堂

Leave a Comment