網(wǎng)站首頁 編程語言 正文
1、選擇語句
如果你好好學(xué)習(xí),校招時拿一個好offer,走上人生巔峰。如果你不學(xué)習(xí),畢業(yè)等于失業(yè),回家賣紅薯。這就是選擇!
#include<stdio.h>
int main()
{
?? ?int a = 0;
?? ?printf("1:好好學(xué)習(xí),拿大廠offer ? ? 2、宿舍擺爛,畢業(yè)即失業(yè)\n\n");
?? ?printf("請選擇 1 或者 0 :->");
?? ?scanf("%d", &a);
?? ?if (a == 1)
?? ?{
?? ??? ?printf("加油,為你點贊!\n");
?? ?}
?? ?else
?? ?{
?? ??? ?printf("回家賣紅薯!\n");
?? ?}
?? ?return 0;
}
2、循環(huán)語句
C語言中有三種循環(huán),分別是:for循環(huán)、while循環(huán)、do while循環(huán),下面我用例子來演示。
for循環(huán)
#include<stdio.h>
int main()
{
?? ?int i = 0;
?? ?for (i = 0; i < 10; i++)
?? ?{
?? ??? ?printf("%d ", i);
?? ?}
?? ?return 0;
}
while循環(huán)
#include<stdio.h>
int main()
{
?? ?int i = 0;
?? ?while (i < 10)
?? ?{
?? ??? ?printf("%d ", i);
?? ??? ?i++;
?? ?}
?? ?return 0;
}
do while循環(huán)
#include<stdio.h>
int main()
{
?? ?int i = 0;
?? ?do {
?? ??? ?printf("%d ", i);
?? ??? ?i++;
?? ?} while (i < 10);
?? ?return 0;
}
其中 i 為循環(huán)變量,i++ 為循環(huán)變量增值,i<10 為循環(huán)結(jié)束條件。
3、函數(shù)
函數(shù)就是一個具有特定功能的代碼塊,其作用是將代碼進行封裝,以提高代碼的重用性,提高開發(fā)效率。
#include<stdio.h>
//Add就是一個函數(shù),用來計算兩個參數(shù)的和
int Add(int x, int y) ? // 開頭的int:函數(shù)的返回值 ?中間的int:參數(shù)的類型 ? x、y:函數(shù)的參數(shù)
{
?? ?return x + y;
}
int main()
{
?? ?int a = 0;
?? ?int b = 0;
?? ?int ret = Add(a, b); ?//調(diào)用Add函數(shù)
?? ?printf("%d\n", ret);
?? ?return 0;
}
4、數(shù)組
數(shù)組的概念
數(shù)組是具有相同元素類型的集合。
數(shù)組的定義方式
#include<stdio.h>
int main()
{
?? ?//第一種定義方式:指定大小,并對其進行初識化
?? ?int a1[10] = { 1,2,3,4,5,6,7,8,9,10 };
?? ?//第二種定義方式:指定大小,但不初識化
?? ?char a2[10];
?? ?//第三種定義方式:不指定大小,但必須得初始化,它會根據(jù)你初始化元素個個數(shù)自動計算數(shù)組的大小
?? ?float a3[] = { 1.0,2.0,3.0 };
?? ?return 0;
}
數(shù)組的下標(biāo)
C語言規(guī)定:數(shù)組的每個元素都有一個下標(biāo),且數(shù)組下標(biāo)是從0開始的。數(shù)組可以通過下標(biāo)來訪問數(shù)組元素。
數(shù)組的簡單使用
#include <stdio.h>
int main()
{
? ? int i = 0;
? ? int arr[10] = { 1,2,3,4,5,6,7,8,9,10 };
? ? for (i = 0; i < 10; i++)
? ? {
? ? ? ? printf("%d ", arr[i]);
? ? }
? ? printf("\n");
? ? return 0;
}
5、操作符
C語言的操作符涉及到的細(xì)節(jié)以及知識面都比較廣,在這里我只是簡單的介紹一部分操作符的基本使用,更多的細(xì)節(jié)我會在后面的文章中進行講解。
1、算術(shù)操作符
+ - * / %
2、移位操作符
>> <<
3、位操作符
& ^ |
4、賦值操作符
= += -= *= /= &= ^= |= >>= <<=
#include<stdio.h>
int main()
{
?? ?int a = 10;
?? ?if (a == 20) ?// ==:判斷語句,判斷 a 與 20 是否相等
?? ?{
?? ??? ?printf("判斷:%d\n", a);
?? ?}
?? ?if (a = 20) ?// =:賦值語句,把 10 賦給 a,這條語句始終為真
?? ?{
?? ??? ?printf("賦值:%d\n", a);
?? ?}
?? ?return 0;
}
5、單目操作符
- ! 邏輯反操作
- - 負(fù)值
- + 正值
- & 取地址
- sizeof 操作數(shù)的類型長度(以字節(jié)為單位)
- ~ 對一個數(shù)的二進制按位取反
- – 前置、后置–
- ++ 前置、后置++
- * 間接訪問操作符(解引用操作符)
- (類型) 強制類型轉(zhuǎn)換
#include<stdio.h>
int main()
{
int a = 10;
int b = a++; //后置++,先使用,再++,即先把 a = 10 賦給 b ,a 再++,執(zhí)行后 b=10,a=11
int c = ++a; //前置++,先++,再使用,即先讓 a++ 變成 12,再把 a 賦給 c ,執(zhí)行后 c=12,a=12;
printf("a = %d\nb = %d\nc = %d", a, b, c);
return 0;
}
1
6、關(guān)系操作
> >= < <= != ==
7、邏輯操作符
&& 邏輯與
|| 邏輯或
#include<stdio.h>
int main()
{
?? ?int a = 10;
?? ?int b = 20;
?? ?if (a == 10 && b == 20) ? //邏輯與,必須兩個條件都為真if語句才會執(zhí)行
?? ?{
?? ??? ?printf("a && b\n");
?? ?}
?? ?if (a == 10 || b == 30) ? //邏輯或,只有兩個條件都為假時if語句才不會執(zhí)行
?? ?{
?? ??? ?printf("a || b\n");
?? ?}
?? ?return 0;
}
8、條件操作符
exp1 ? exp2 : exp3
#include<stdio.h>
int main()
{
?? ?int a = 10;
?? ?int b = 20;
?? ?int max = a > b ? a : b; ?//條件操作符,如果 a>b 條件成立,就把 a 賦給 max,否則 b 賦給 max
?? ?printf("max = %d\n", max);
?? ?return 0;
}
9、逗號表達(dá)式
exp1, exp2, exp3, …expN
#include<stdio.h>
main()
{
?? ?int x, y, z;
?? ?x = y = 1;
?? ?//逗號表達(dá)式,從左向右依次執(zhí)行每個運算,但是只取最后一個逗號的結(jié)果
?? ?z = (x++, y++, ++y); ? ?//先執(zhí)行前面兩個逗號,x++ -> x = 2, y++ -> y=2, 再最后一個逗號,z=++y,前置++,所以z=y=3
?? ?printf("x = %d\ny = %d\nz = %d\n", x, y, z);
?? ?return 0;
}
這里要特別注意:賦值運算符的優(yōu)先級是高于逗號表達(dá)式的,也就是說,如果這里 z 后面沒有括號,那么編譯器會最先將 x 的值賦給 z,再執(zhí)行后面的逗號表達(dá)式。
#include<stdio.h>
main()
{
?? ?int x, y, z;
?? ?x = y = 1;
?? ?//逗號表達(dá)式,從左向右依次執(zhí)行每個運算,但是只取最后一個逗號的結(jié)果
?? ?//賦值運算符優(yōu)先級高于逗號表達(dá)式,先將 x 賦給 z,那么 z = 1;
?? ?//再執(zhí)行前面兩個逗號,x++ -> x = 2, y++ -> y=2, 再最后一個逗號,++y -> y = 3
?? ?z = x++, y++, ++y;
?? ?printf("x = %d\ny = %d\nz = %d\n", x, y, z);
?? ?return 0;
}
10、下標(biāo)引用、函數(shù)調(diào)用和結(jié)構(gòu)成員
[] () . ->
#include<stdio.h>
struct Stu { ? ? ? ? //定義一個結(jié)構(gòu)體類型
?? ?char name[15];
?? ?int age;
?? ?char sex[6];
};
int main()
{
?? ?struct Stu s = { "張三",20,"男" }; ? //用結(jié)構(gòu)體類型定義一個結(jié)構(gòu)體變量 s 并對其初始化
?? ?printf("%s\t%d\t%s\n", s.name, s.age, s.sex); ?//用 . 操作符對結(jié)構(gòu)體成員進行訪問
?? ?return 0;
}
原文鏈接:https://blog.csdn.net/m0_62391199/article/details/124099647
相關(guān)推薦
- 2022-05-22 Python?IO文件管理的具體使用_python
- 2022-07-30 如何重置CentOS 7的Root密碼?
- 2023-05-20 Golang中map的三種聲明定義方式實現(xiàn)_Golang
- 2023-01-15 Android開發(fā)可添加頭尾的RecycleView的實現(xiàn)_Android
- 2022-10-11 sharedUid、系統(tǒng)簽名、預(yù)置應(yīng)用
- 2022-10-02 echarts動態(tài)獲取Django數(shù)據(jù)的實現(xiàn)示例_python
- 2022-05-22 部署ASP.NET?Core程序到Windows系統(tǒng)_基礎(chǔ)應(yīng)用
- 2022-10-11 云服務(wù)器搭建redis主從復(fù)制以及哨兵模式(附踩坑記錄)
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細(xì)win安裝深度學(xué)習(xí)環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎(chǔ)操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認(rèn)證信息的處理
- Spring Security之認(rèn)證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權(quán)
- redisson分布式鎖中waittime的設(shè)
- maven:解決release錯誤:Artif
- restTemplate使用總結(jié)
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務(wù)發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結(jié)構(gòu)-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標(biāo)對象命令
- Spring中的單例模式應(yīng)用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠(yuǎn)程分支