C語言入門 Day_5 四則運算

目錄

前言

1.四則運算

2.其他運算

3.易錯點

4.思維導圖


前言

圖為世界上第一臺通用計算機ENIAC,于1946年2月14日在美國賓夕法尼亞大學誕生。發明人是美國人莫克利(JohnW.Mauchly)和艾克特(J.PresperEckert)

計算機的最開始的功能就是用來計算的,今天我們就開始學習計算機的計算語法。

?首先是數學中最基礎的四則運算加減乘除,我們來看看在C語言中如何實現這些計算吧!

1.四則運算

?C語言中的加減乘除四種符號分別用+,-,*,/這四個符號表示,加減符號和數學中一樣,而乘除則分別是星號*和斜杠符號/來表示。

讓我們來認識一下這四個符號:

1+1
4.0-2.0
3*5
10/2

1.+,整型的加法

2.-,浮點型的減法

3.*,整型的乘法

4./,整型的除法

我們可以直接在格式化輸出里面,打印計算的結果:

printf("計算的結果是%d",1+1);

1.%d,整型的替代符號

2.1+1的加法運算

3.加法符號

1.1-我們利用格式化輸出直接打印輸出一下15+85的運算結果:

printf("15+85的結果是%d",15+85);

輸出結果

15+85的結果是100

1.2-同樣我們也可以把計算結果賦值給變量,然后打印變量的值:

int answer=1;
answer=10-5;
printf("%d\n",answer);

1.定義一個變量answer,并賦值1

2.計算10-5的結果,并賦值給變量answer

3.打印變量answer的值

1.3-我們先給一個變量answer賦值一個計算的結果(99-77),然后打印這個變量:

int answer=99-77;
printf("%d\n",answer);

輸出結果

22

1.4-乘法也是一樣的,我們來輸出一個乘法的結果:

printf("%d\n",9*9);

輸出結果

81

比如這張圖? ? ? ? ? ?

C語言中整型的加法,減法,和我們數學是一模一樣的,從計算結果到計算符號

乘法的計算結果是一樣的,但是計算符號不一樣,數學中是x,C語言中是*

但除法很不一樣,對于計算結果來說,兩個整型的除法結果,不管是否能整除,結果都是一個整型。

如果除不盡有小數部分,C語言會直接舍棄,比如5除以2的結果是2.5,但是C語言中舍棄了小數部分,結果就是2,以及除法的符號是/

1.5-例如? 打印一下10除以3的結果:

printf("%d\n",10\3);

輸出結果

3

1.6-又如圖

上面的四則運算都是針對整型int的,兩個整型的四則運算結果是一個整型

而兩個浮點型float的四則運算結果則是一個浮點型

1.7-.我們來看看浮點型float的四則運算結果:

float number_a=3.0-2.0;
printf("%f",number_a);
printf("f",5.5-3.14);

1.定義一個浮點型的變量

2.格式化輸出一個浮點型

3.四則運算符號

1.8-我們直接打印一下兩個浮點型的計算結果2.0*5.0:

printf("%.2f\n",2.0*5.0)

輸出結果

10.00

1.9-.再計算一下浮點型的除法(5.0/2.0):

printf(".2%f\n",5.0\2.0);

輸出結果

2.50

可以看到兩個浮點型的除法結果,是一個浮點型,不會丟棄小數部分。但是最終顯示幾位小數也需要你保留到哪一位,例如值保留兩位,就使用%.2f

整型和浮點型的混合計算結果會轉化成一個浮點型,這個我們后天的課程會詳細展開,這里只需要提前有個印象。

?除了四則運算,我們還會介紹三種C語言中常見的運算,它們分別是,取模(取余)%,自增++,自減--

2.其他運算

在整數的除法中,除不盡的時候會有余數,在編程中直接求余數的運算叫做求余運算,或者取模運算。

運算符號是%

2.1-比如這里,10和3的余數就是1,10和4的余數就是2:

printf("%d\n",10%2);
printf("%d\n",10%3);

輸出結果

2
1

這個運算符應用是非常廣泛的,比如我們想要把用戶分為兩組,最簡單的辦法就是對用戶id進行2的取余數,結果只會有0和1,這樣就很快分成兩組了😁。

第二個要介紹的符號是++,又叫自加運算符,它的作用是讓變量的數字增加1,比如一個變量是10,進行++運算以后,就變成了11。

2.2-定義一個變量,并進行++運算:

int num_a=10;
num_a++;
printf("%d\n",num_a);

1.定義變量并賦值

2.變量num_a

3.自增運算符++

4.打印運算以后的結果,11

我可以看到num_a的值本來是10,經過num_a++以后,num_a的值變成了11,這就是自增運算符的作用。

自增運算符會在后面的一種叫做循環的代碼結構中廣泛使用。

2.3-比如:

int number_b=1;
num_b++;
printf("%d\n",num_b);

輸出結果

2

有自增運算符++,就有自減運算符--,它的作用是讓變量的數字減少1。

比如一個變量是10,進行--運算以后,就變成了9。

2.4-定義一個變量并賦值,然后執行自減運算

int number_c=10;
num_c--;
printf("%d\n",num_C);

1.定義變量并賦值

2.變量名num_c

3.自減運算符

4.打印輸出變量的值

2.5-填入變量和自減運算符:

int number_c=10;
num_c--;
printf("%d\n",num_C)

輸出結果

9

我可以看到num_c的值本來是10,經過num_c--以后,num_c的值變成了9,--就是自減運算符,它的作用就是讓自己的數字自減少1

?四則運算的四個符號(加減乘除),和其他運算的三個符號(取模,自增,自減),這七個符號合在一起,就是C語言中的七個算術運算符了。

運算符又叫操作符,英文是operator,他們會對數據進行操作和運算。比如今天學習的七個操作符,要么是直接操作變量,要么是對常量進行運算。

3.易錯點

?eg:

整型的除法運算結果若含有小數,則會被直接舍棄,只保留整數部分。

除號的符號是斜杠/

反斜杠被用于換行符\n中。

4.思維導圖

在撰寫這篇文章時,我參考了《白紙編程》這個app的觀點和思想,我要感謝他們對我的啟發和幫助。

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/39179.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/39179.shtml
英文地址,請注明出處:http://en.pswp.cn/news/39179.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

代碼隨想錄第四十四天

代碼隨想錄第四十四天 Leetcode 518. 零錢兌換 IILeetcode 377. 組合總和 Ⅳ Leetcode 518. 零錢兌換 II 題目鏈接: 零錢兌換 II 自己的思路:想不到,忘記這個遞推公式了!!!而且初始化也要值得注意! 正確思路:由于這個…

js數組學習(ES6+)

文章目錄 js(ES6)數組學習1.Array.prototype.forEach(fn)2.Array.prototype.map(fn)3.Array.prototype.filter(fn)4.Array.prototype.reduce(fn)5.Array.prototype.some(fn) every6.Array.prototype.find(fn)7.Array.prototype.includes(item) js(ES6)數組學習 1.Array.protot…

kube-prometheus 系列3 使用 blackbox-exporter 進行 icmp 和 http 監控

安裝kube-prometheus 后默認在monitoring namespace中有創建 blackbox-exporter deployment。但默認沒有icmp的module配置,無法執行ping探測。因為即使有icmp module,默認配置也是無法執行ping探測的(這篇文章要解決的就是這個問題&#xff0…

CentOS 7 下 Keepalived + Nginx 實現雙機高可用

CentOS 7 下 Keepalived Nginx 實現雙機高可用 文章目錄 CentOS 7 下 Keepalived Nginx 實現雙機高可用服務器準備服務信息服務架構 服務安裝nginxKeepalived 服務配置nginxKeepalived 啟動服務nginxkeepalived 服務驗證查看 VIP 狀態CURL 命令訪問瀏覽器訪問 高可用驗證停止…

146. LRU 緩存

題目描述 請你設計并實現一個滿足 LRU (最近最少使用) 緩存 約束的數據結構。 實現 LRUCache 類: LRUCache(int capacity) 以 正整數 作為容量 capacity 初始化 LRU 緩存int get(int key) 如果關鍵字 key 存在于緩存中,則返回關鍵字的值,否…

vue+springboot 前后端分離 上傳文件處理后再下載,并且傳遞參數

vue代碼 <template><div><input type"file" ref"fileInput" accept".json"/><el-button click"upload">上傳</el-button></div> </template><script> export default {name: "…

【第二階段】kotlin的lambda學習

匿名函數lambdm表達式 1.兩數相加 fun main() {//匿名函數lambda表達式//兩數相加 等價&#xff1a;val addResult:(Int,Int)->String{a,b->"兩數相加結果&#xff1a;${ab}"}val addResult{a:Int,b:Int->"兩數相加結果${ab}"}println(addResul…

Stable Diffusion WebUI 從零基礎到入門

本文主要介紹Stable Diffusion WebUI的實際操作方法&#xff0c;涵蓋prompt推導、lora模型、vae模型和controlNet應用等內容&#xff0c;并給出了可操作的文生圖、圖生圖實戰示例。適合對Stable Diffusion感興趣&#xff0c;但又對Stable Diffusion WebUI使用感到困惑的同學&am…

CSS變形與動畫(二):perspctive透視效果 與 preserve-3d 3d效果(奧運五環例子)

文章目錄 perspective 3d透視效果preserve-3d 3d嵌套效果例子 奧運五環 backface-visibility 背面效果 perspective 3d透視效果 perspective 指定了觀察者與 z0 平面的距離&#xff0c;使具有三維位置變換的元素產生透視效果。z>0 的三維元素比正常大&#xff0c;而 z<0 …

試崗第一天問題

1、公司的一個項目拉下來 &#xff0c;npm i 不管用顯示 后面百度 使用了一個方法 雖然解決 但是在增加別的依賴不行&#xff0c;后面發現是node版本過高&#xff0c;更換node版本解決。 2、使用插件動態的使數字從0到100&#xff08;vue-animate-number插件&#xff09; 第一…

ChatGPT or BingChat

你相信我們對大模型也存在「迷信權威」嗎&#xff1f; ChatGPT 的 GPT-4 名聲在外&#xff0c;我們就不自覺地更相信它&#xff0c;優先使用它。但我用 ChatALL 比較 AI 大模型們這么久&#xff0c;得到的結論是&#xff1a; ChatGPT GPT-4 在大多數情況下確實是最強&#xf…

插入、希爾、歸并、快速排序(java實現)

目錄 插入排序 希爾排序 歸并排序 快速排序 插入排序 排序原理&#xff1a; 1.把所有元素分為兩組&#xff0c;第一組是有序已經排好的&#xff0c;第二組是亂序未排序。 2.將未排序一組的第一個元素作為插入元素&#xff0c;倒序與有序組比較。 3.在有序組中找到比插入…

Linux 內核內存管理 page_address 函數

文章目錄 一、page_address1.1 page_address1.2 page_to_pfn1.3 PFN_PHYS1.4 __va(x)1.5 總結1.6 page_to_virt 二、使用demo 一、page_address 1.1 page_address 內核用 struct page 結構體來表示系統中的每個物理頁面&#xff0c;該結構體用來跟蹤和管理這些物理頁面的使用…

MySQL面試題一

MySQL 索引使用有哪些注意事項呢&#xff1f; 可以從兩個維度回答這個問題&#xff1a; 索引哪些情況會失效&#xff0c;索引不適合哪些場景 索引哪些情況會失效 查詢條件包含or&#xff0c;會導致索引失效。隱式類型轉換&#xff0c;會導致索引失效&#xff0c; 例如age字…

Idea的基本使用帶案例---詳細易懂

一.idea是什么 有專業人士說&#xff0c;idea是天生適合做微軟&#xff0c;當時我還想肯定是夸大其詞了&#xff0c;但當你用起來的時候確實很爽&#xff0c;&#x1f60a;&#x1f60a; ntelliJ IDEA是一種集成開發環境&#xff08;IDE&#xff09;&#xff0c;由JetBrains開發…

后仿知識總結

基本詞語的概念&#xff1a; &#xff08;1&#xff09;Place&Routing pr&#xff0c;布局布線 sdf基礎概念&#xff1a; 靜態時序分析圣經翻譯計劃——附錄B&#xff1a;SDF&#xff08;上&#xff09; - 知乎 (zhihu.com) 靜態時序分析圣經翻譯計劃——附錄B&#x…

繼承和多態C++

這里寫目錄標題 繼承public、protected、private 修飾類的成員public、protected、private 指定繼承方式改變訪問權限 C繼承時的名字遮蔽問題基類成員函數和派生類成員函數不構成重載C基類和派生類的構造函數構造函數的調用順序基類構造函數調用規則 C基類和派生類的析構函數C多…

MTK Android隱藏NavigationBar

安卓MTK屏蔽NavigationBar, 在SDK中通過搜索關鍵字修改&#xff0c;可適用大部分MTK及安卓版本&#xff0e; 方法介紹 搜索device/mediatek與device/mediateksample下的.xml把config_showNavigationBar值置為false 如下為搜索指令 find device/mediatek -name “*.xml” | xa…

系統架構師---開發方法---敏捷開發

目錄 前言 極限編程 四大價值觀 溝通 簡單 反饋 勇氣 尊重&#xff1a; 十二個最佳實踐 計劃游戲 小型發布 隱喻 簡單設計 測試先行 重構 結對編程 集體代碼所所有制 持續集成 每周工作40小時 現場客戶 編碼標準 前言 2001年2月&#xff0c;在美國的猶他州…

Grafana展示k8s中pod的jvm監控面板/actuator/prometheus

場景 為保障java服務正常運行&#xff0c;對服務的jvm進行監控&#xff0c;通過使用actuator組件監控jvm情況&#xff0c;使用prometheus對數據進行采集&#xff0c;并在Grafana展現。 基于k8s場景 prometheus數據收集 配置service的lable&#xff0c;便于prometheus使用labl…