初识 C 语言(4)

目录

一,循环语句

1.    for  循环的一般形式

2.    while  循环的一般形式

3.    do-while  循环的一般形式

二,数组

三,操作符

 1. 算术运算符

2. 关系运算符

3. 逻辑运算符

4. 位运算符

5. 赋值运算符

6. 自增自减运算符

7. 条件运算符

8. 逗号运算符


一,循环语句

在 C 语言中,主要有三种循环语句:

 for  循环

while  循环

 do-while  循环
 

1.    for  循环的一般形式为:

for (初始化表达式; 条件表达式; 更新表达式) {
    // 循环体
}

例如:使用  for  循环从  0  打印到  4

for (int i = 0; i < 5; i++) {    //首先初始化 i 为 0  ,然后判断 i < 5 这个条件,如果条件为真,                             

       printf("%d ", i);
}                          //就执行循环体中的  printf("%d ", i);  语句,打印出当前 i 的值
                       //这段代码的输出结果是: 0 1 2 3 4


 
 

2.    while  循环的一般形式为:

while (条件表达式) {
    // 循环体
}


例如: 使用  while  循环从  0  打印到  4

int j = 0;
while (j < 5) {
    printf("%d ", j);
    j++;
}          
                    //这段代码的输出结果是: 0 1 2 3 4


 
 
3.    do-while  循环的一般形式为:
 

do {
    // 循环体
} while (条件表达式);

例如:使用  do-while  循环来实现从 0 打印到 4

int k = 0;
do {
    printf("%d ", k);   //先执行一次循环体,然后再判断条件
    k++;
} while (k < 5);
                     //这段代码的输出结果是: 0 1 2 3 4



 

二,数组

在 C 语言中,数组是一组相同类型元素的有序集合。

声明、初始化和使用一个整数数组:
 

#include <stdio.h>

int main() {
    int arr[5] = {10, 20, 30, 40, 50};  // 声明并初始化一个包含 5 个整数类型的数组

    for (int i = 0; i < 5; i++) {  // 遍历数组并打印每个元素
        printf("%d ", arr[i]);
    }

    return 0;
}

数组的下标从 0 开始,到数组长度减 1 结束。

可以通过下标来访问和修改数组中的元素。

例:

#include <stdio.h>

int main() {
    int arr[5] = {10, 20, 30, 40, 50};

    // 访问数组元素
    printf("第一个元素是:%d\n", arr[0]);
    printf("第三个元素是:%d\n", arr[2]);

    // 修改数组元素
    arr[1] = 25;
    arr[4] = 55;

    // 打印修改后的数组
    for (int i = 0; i < 5; i++) {
        printf("%d ", arr[i]);
    }

    return 0;
}


三,操作符

在 C 语言中,常见的操作符包括以下几类:


 
1. 算术运算符:       + (加法)、 - (减法)、 * (乘法)、 / (除法)、 % (取余)
#include <stdio.h>

int main() {
    int a = 5, b = 3;

    // 算术运算符
    printf("a + b = %d\n", a + b);
    printf("a - b = %d\n", a - b);
    printf("a * b = %d\n", a * b);
    printf("a / b = %d\n", a / b);
    printf("a %% b = %d\n", a % b);  // 注意,在 printf 中,% 要写成 %%
 
    return 0;
}

2. 关系运算符:   == (等于)、 != (不等于)、 > (大于)、 < (小于)、 >= (大于等于)、 <= (小于等于)
#include <stdio.h>

int main() {
    int a = 5, b = 3;

  // 关系运算符
    printf("a == b: %d\n", a == b);
    printf("a!= b: %d\n", a!= b);
    printf("a > b: %d\n", a > b);

    return 0;
}
3. 逻辑运算符:       && (逻辑与)、 || (逻辑或)、 ! (逻辑非)
#include <stdio.h>

int main() {
    int a = 5, b = 3;

// 逻辑运算符
    printf("(a > 0 && b > 0): %d\n", (a > 0 && b > 0));
    printf("(a > 0 || b < 0): %d\n", (a > 0 || b < 0));

    return 0;
}
4. 位运算符:

1.  & (与):如果两个相应的二进制位都为 1,则结果位为 1,否则为 0。
 
例如: 5 & 3  ( 5  的二进制为  0101 , 3  的二进制为  0011 ),结果为  0001 ,即  1  。
2.  | (或):如果两个相应的二进制位至少有一个为 1,则结果位为 1,否则为 0。
 
例如: 5 | 3  结果为  0111 ,即  7  。
3.  ^ (异或):如果两个相应的二进制位不同,则结果位为 1,否则为 0。
 
例如: 5 ^ 3  结果为  0110 ,即  6  。
4.  ~ (取反):将每个二进制位取反,即 1 变为 0,0 变为 1。
例如: ~5  ( 5  的二进制为  0101 ),结果为  1010 ,即  -6  (在有符号整数中)。
5.  << (左移):将所有二进制位向左移动指定的位数,右边补 0。
 
例如: 5 << 2  ( 5  的二进制为  0101 ),结果为  20  (二进制为  10100 )。
6.  >> (右移):对于有符号数,如果是算术右移,左边补符号位;如果是逻辑右移,左边补 0。对于无符号数,总是逻辑右移,左边补 0。
 
例如: 5 >> 1  ( 5  的二进制为  0101 ),如果是算术右移,结果为  0010 ,即  2  ;如果是逻辑右移,结果也为  2  。

上面涉及到一些数(例:5,3,6,7)它们是如何转为二进制的?

如下:

5. 赋值运算符:       = 、 += 、 -= 、 *= 、 /= 、 %=  等
#include <stdio.h>

int main() {
    int a = 5, b = 3;

 // 赋值运算符
    a += b;  // 相当于 a = a + b
    printf("a after a += b: %d\n", a);

    return 0;
}
6. 自增自减运算符:    ++ (自增)、 -- (自减)
#include <stdio.h>

int main() {
    int a = 5, b = 3;

​// 自增自减运算符
    int c = 5;
    printf("c++: %d\n", c++);  // 先使用 c 的值,然后 c 增加 1
    printf("++c: %d\n", ++c);  // c 先增加 1,然后使用 c 的值

    return 0;
}
​
7. 条件运算符:    ? :

8. 逗号运算符:    ,

  • 14
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值