c語言zixue

該文主要是記錄我學習中遇到的一些重點、易出問題的內容

教材p16.17

先從一個簡單的例子開始吧

#include <stdio.h>  //編譯預處理命令
int main()  //程序的主函數
{printf("To C");  //輸出語句return 0;  //返回語句
}

#include <stdio.h>是編譯預處理命令,功能是包含標準輸入輸出頭文件? 預處理命令必須以#開頭

int main()是主函數的函數首部,每個c程序有且只有一個主函數

左花括號表示函數起始,右花括號表示函數結束

第二章知識

標識符:只能含有字母,數字和下劃線,且數字不能做第一個字符

格式說明符:

格式:

%[標志][寬度修飾符][.精度][長度]格式字符

其中的方括號是可選項,格式字符是必選項

%---表示格式說明符開始

標志---+,-, # ,空格

+ ---輸出結果右對齊,左邊補齊空位,正負數都輸出符號

-? ---輸出結果左對齊,右邊補齊空位,負數輸出符號,正數不輸出正號

# ---在輸出o類八進制整數時加前導0,在輸出x類十六進制的整數時前導0x或是0X,其余無影響

空格 ---輸出值為正數時冠以空格,輸出值為負數時冠以負號

輸入函數scanf

#include <stdio.h>
int main()
{int a,b,sum;printf("請輸入兩個整數:");scanf("%d,%d", &a, &b);sum=a+b;printf("求和:%d+%d=%d\n",a, b,sum);return 0;
}

此時中文輸入,可以看到出現了問題,但是換成英文輸入經過查詢,要了解到scanf函數的輸入時是區分中英文輸入的

字符的輸入:

  1. getchar()函數直接獲取字符,但是需要輸入換行符才獲取并回顯
  2. getch()函數直接獲取,即不需輸入換行符就直接讀取,但是不回顯
  3. getche()函數直接獲取字符,不需輸入換行符直接獲取并且直接回顯,即輸入將會顯示兩個所輸入的字符,其中第一個是輸入的,第二個是輸出回顯的
  • getch()函數和getche()函數需要頭文件conio.h,否則將會報錯

單字符------用單引號(定界符)引用

字符串------用雙引號(定界符)引用

表達式值的類型,c語言會自動轉換,比如1/2時,由于1,2都是整數,原得到的計算值應該時0.5,但是由于自動轉換就會保存為整數,導致得到的時0

自動類型轉換:1.同類型的運算結果類型不變

????????????????????????? 2.混合運算中,運算結果取高一級的數據類型

強制類型轉換:利用轉換值類型運算符(),將運算對象的類型轉換為指定類型

(類型名)運算對象
eg.
(int)3.1415----->3
(float)3.1415---->3.141500

自動轉換的解決辦法——將其中一個的類型轉換為更高的類型

eg.height=1/2a*t*t(這里的結果無論a,t多大都一定為0),為了改變這個情況,我們就將1

或者2改為1.0或者2.0

第三章

關系運算符

關系運算符==與賦值運算符=的比較

===
比較運算符,比較左右兩邊是否相等賦值運算符,將右側的值賦給左側

int a=1,b=3,c=4

  1. a+b==c?? 正確
  2. c==a+b? 正確

int a=1,b=3,c;

  1. c=a+b? 正確,將a+b的值賦給了c
  2. a+b=c? 錯誤,賦值運算符的左側只可以是變量

不可以寫'A'<=x<='Z',雖然等價于'A'<=x以及x<='Z',但是c語言中運行錯誤,因為不能如python語言一樣,要改為'A'<=x&&x<='Z'[c語言不支持連續判斷大小,只能用&&連接]

邏輯運算符

運算符名稱
&&
||

其中與和或運算符可能存在“短路的情況”:

  1. 與運算符&&:當左側為假時,右側就不用再次計算了,因為一假為假
  2. 或運算符||:當左側為真時,右側就不計算了,因為一真為真

連續的關系判斷盡量用邏輯運算符連接

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

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

相關文章

卷積神經網絡(CNN)的主要架構

卷積神經網絡&#xff08;CNN, Convolutional Neural Networks&#xff09;是深度學習中最重要的模型之一&#xff0c;廣泛應用于計算機視覺、目標檢測、語義分割等任務。自 LeNet 誕生以來&#xff0c;CNN 結構經歷了多個重要發展階段&#xff0c;出現了許多經典架構&#xff…

【開源代碼解讀】AI檢索系統R1-Searcher通過強化學習RL激勵大模型LLM的搜索能力

關于R1-Searcher的報告&#xff1a; 第一章&#xff1a;引言 - AI檢索系統的技術演進與R1-Searcher的創新定位 1.1 信息檢索技術的范式轉移 在數字化時代爆發式增長的數據洪流中&#xff0c;信息檢索系統正經歷從傳統關鍵詞匹配到語義理解驅動的根本性變革。根據IDC的統計…

從0到1入門Docker

一、快速入門 Docker run命令中的常見參數 -d&#xff1a;讓容器后臺運行--name&#xff1a;給容器命名&#xff08;唯一&#xff09;-e&#xff1a;環境變量-p&#xff1a;宿主機端口映射到容器內端口鏡像名稱結構&#xff1a;Repository &#xff1a;TAG&#xff08;鏡像名&…

接口自動化入門 —— Jmeter實現在接口工具中關聯接口處理方案

1. JMeter 接口關聯處理的核心概念 接口關聯是指在多個接口請求之間共享數據&#xff0c;例如將一個接口的返回值作為另一個接口的輸入參數。常見的場景包括&#xff1a; 使用登錄接口返回的 Token 作為后續接口的認證信息。 將一個接口返回的 ID 作為另一個接口的請求參數。…

Flink-學習路線

最近想學習一下Flink&#xff0c;公司的實時需求還是不少的&#xff0c;因此結合ai整理了一份學習路線&#xff0c;記錄一下。 當然&#xff0c;公司也有Scala版本Flink框架&#xff0c;也學習了一下。這里只說Java版本 1. Java基礎 目標: 掌握Java編程語言的基礎知識。 內容…

ranger集成starrock報錯

org.apache.ranger.plugin.client.HadoopException: initConnection: Unable to connect to StarRocks instance, please provide valid value of field : {jdbc.driverClassName}.. com.mysql.cj.jdbc.Driver. 可能的原因 JDBC 驅動缺失&#xff1a;運行環境中沒有安裝 MySQL …

python Jsonpath表達式語法取值

python Jsonpath 語法規則&#xff1a; 演示數據&#xff1a;{"status":"0","msg":"成功","data": [ {"foo1": "bar1"},{"foo1": "bar2"}]} 根節點&#xff1a;$ $.status $.…

Blender-MCP服務源碼2-依賴分析

Blender-MCP服務源碼2-依賴分析 有個大佬做了一個Blender-MCP源碼&#xff0c;第一次提交代碼是【2025年3月7號】今天是【2025年月15日】也就是剛過去一周的時間&#xff0c;所以想從0開始學習這個代碼&#xff0c;了解一下大佬們的開發思路 1-核心知識點 from mcp.server.fas…

反射(第三篇)、代理模式、靜態代理和動態代理、InvocationHandler實際應用

DAY11.3 Java核心基礎 反射&#xff08;第三篇&#xff09; 前兩篇我們學習了反射的概念和基本操作 實際開發中&#xff0c;反射應用于那里&#xff1f; 動態代理 java中的動態代理就是一個重要的作用 代理模式 代理模式是java中常用的設計模式 指的是在處理一個業務邏輯…

Unity 封裝一個依賴于MonoBehaviour的計時器(上) 基本功能

靈感來自下面這本書的協程部分,因此我就自己嘗試寫了一個 我的新書Unity3D游戲開發&#xff08;第3版&#xff09; | 雨松MOMO程序研究院 如果你不知道什么是協程:unity保姆級教程之協同程序_unity協同-CSDN博客 一句話概括:協程就是單線程的異步操作,其作用于Unity的主線程 1…

數學建模 第一節

目錄?????? 前言 一 優化模型的類型 二 線性規劃1 線性規劃2 三 0-1規劃 總結 前言 數學建模主要是將問題轉化為模型&#xff0c;然后再以編程的形式輸出出來 算法都知道&#xff0c;數學建模也需要用到算法&#xff0c;但是不是主要以編程形式展示&#xff0c;而是…

Vulkan視頻解碼decode顯示display之同步

在ReleaseDisplayedPicture函數中消耗圖片資源并且顯示display完成&#xff0c;設置兩個標志m_hasConsummerSignalFence true 和m_hasConsummerSignalSemaphore true virtual int32_t ReleaseDisplayedPicture(DecodedFrameRelease** pDecodedFramesRelease, uint32_t nu…

網絡空間安全(32)Kali MSF基本介紹

前言 Metasploit Framework&#xff08;簡稱MSF&#xff09;是一款功能強大的開源安全漏洞檢測工具&#xff0c;被廣泛應用于滲透測試中。它內置了數千個已知的軟件漏洞&#xff0c;并持續更新以應對新興的安全威脅。MSF不僅限于漏洞利用&#xff0c;還包括信息收集、漏洞探測和…

設計模式學習記錄

設計模式23種 創建型抽象工廠模式工廠模式生成器模式原型模式單例模式 結構型適配器模式橋接模式組合模式裝飾模式外觀模式享元模式代理模式 行為型責任鏈模式命令模式解釋器模式迭代器模式中介者模式備忘錄模式觀察者模式狀態模式策略模式模版方法模式訪問者模式 創建型 與對…

2.5 python接口編程

在現代軟件開發的復雜生態系統中&#xff0c;不同系統、模塊之間的交互協作至關重要。接口編程作為一種關鍵機制&#xff0c;定義了組件之間的通信規范與交互方式。Python 憑借其卓越的靈活性、豐富的庫資源以及簡潔易讀的語法&#xff0c;在接口編程領域占據了重要地位&#x…

mesh開發解析

開源的Mesh網絡協議棧及相關項目&#xff1a; 1.B.A.T.M.A.N.(Better Approach to Mobile Ad-hoc Networking)? 簡介&#xff1a;B.A.T.M.A.N.是一種用于多跳自組織網絡的路由協議&#xff0c;適用于無線Mesh網絡。它通過優化數據傳輸路徑&#xff0c;確保網絡的高可靠性和動…

PyTorch PINN實戰:用深度學習求解微分方程

在人工智能與計算數學的交匯點&#xff0c;物理信息神經網絡&#xff08;Physics-Informed Neural Networks&#xff0c;PINN&#xff09;正引領著一場求解微分方程的革命。傳統上&#xff0c;微分方程是描述自然現象和工程問題中各種關系的重要工具&#xff0c;但其求解往往依…

【WiFi 7核心技術及未來挑戰】

作為剛剛開始從事這一領域的人&#xff0c;淺淺學習了一下WiFi 7&#xff08;IEEE 802.11be&#xff09;。Wi-Fi 7發展迅速&#xff0c;提供前所未有的速度、更低的延遲和更高的可靠性。但從頻譜政策到能效挑戰&#xff0c;再到成本&#xff0c;仍有許多問題亟待解決。 Wi-Fi 7…

Oracle Linux Server 7.9安裝fail2ban

yum search oracle-epel-release yum install oracle-epel-release-el7 search fail2ban yum install fail2ban nano /etc/fail2ban/jail.d/00-firewalld.conf # defalut這里是設定全局設置&#xff0c;如果下面的監控沒有設置就以全局設置的值設置。 [DEFAULT] # 用于指定哪…

目標在哪里?——尋找人生的意義與方向

在職場中&#xff0c;許多人都會經歷這樣的困惑&#xff1a;工作看似順利&#xff0c;卻逐漸失去了成就感和成長感。一位在500強企業工作的學員就遇到了這樣的問題。她曾考慮過轉型做培訓&#xff0c;但苦于找不到明確的切入點&#xff0c;對未來的目標感到迷茫。她不禁問自己&…