您好,登錄后才能下訂單哦!
本篇內容介紹了“C語言選擇、循環、函數、數組與操作符實例分析”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
如果你好好學習,校招時拿一個好offer,走上人生巔峰。如果你不學習,畢業等于失業,回家賣紅薯。這就是選擇!
#include<stdio.h> int main() { int a = 0; printf("1:好好學習,拿大廠offer 2、宿舍擺爛,畢業即失業\n\n"); printf("請選擇 1 或者 0 :->"); scanf("%d", &a); if (a == 1) { printf("加油,為你點贊!\n"); } else { printf("回家賣紅薯!\n"); } return 0; }
C語言中有三種循環,分別是:for循環、while循環、do while循環,下面我用例子來演示。
for循環
#include<stdio.h> int main() { int i = 0; for (i = 0; i < 10; i++) { printf("%d ", i); } return 0; }
while循環
#include<stdio.h> int main() { int i = 0; while (i < 10) { printf("%d ", i); i++; } return 0; }
do while循環
#include<stdio.h> int main() { int i = 0; do { printf("%d ", i); i++; } while (i < 10); return 0; }
其中 i 為循環變量,i++ 為循環變量增值,i<10 為循環結束條件。
函數就是一個具有特定功能的代碼塊,其作用是將代碼進行封裝,以提高代碼的重用性,提高開發效率。
#include<stdio.h> //Add就是一個函數,用來計算兩個參數的和 int Add(int x, int y) // 開頭的int:函數的返回值 中間的int:參數的類型 x、y:函數的參數 { return x + y; } int main() { int a = 0; int b = 0; int ret = Add(a, b); //調用Add函數 printf("%d\n", ret); return 0; }
數組的概念
數組是具有相同元素類型的集合。
數組的定義方式
#include<stdio.h> int main() { //第一種定義方式:指定大小,并對其進行初識化 int a1[10] = { 1,2,3,4,5,6,7,8,9,10 }; //第二種定義方式:指定大小,但不初識化 char a2[10]; //第三種定義方式:不指定大小,但必須得初始化,它會根據你初始化元素個個數自動計算數組的大小 float a3[] = { 1.0,2.0,3.0 }; return 0; }
數組的下標
C語言規定:數組的每個元素都有一個下標,且數組下標是從0開始的。數組可以通過下標來訪問數組元素。
數組的簡單使用
#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; }
C語言的操作符涉及到的細節以及知識面都比較廣,在這里我只是簡單的介紹一部分操作符的基本使用,更多的細節我會在后面的文章中進行講解。
1、算術操作符
+ - * / %
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; }
! 邏輯反操作
- 負值
+ 正值
& 取地址
sizeof 操作數的類型長度(以字節為單位)
~ 對一個數的二進制按位取反
– 前置、后置–
++ 前置、后置++
* 間接訪問操作符(解引用操作符)
(類型) 強制類型轉換
#include<stdio.h> int main() { int a = 10; int b = a++; //后置++,先使用,再++,即先把 a = 10 賦給 b ,a 再++,執行后 b=10,a=11 int c = ++a; //前置++,先++,再使用,即先讓 a++ 變成 12,再把 a 賦給 c ,執行后 c=12,a=12; printf("a = %d\nb = %d\nc = %d", a, b, c); return 0; } 1
> >= < <= != ==
&& 邏輯與
|| 邏輯或
#include<stdio.h> int main() { int a = 10; int b = 20; if (a == 10 && b == 20) //邏輯與,必須兩個條件都為真if語句才會執行 { printf("a && b\n"); } if (a == 10 || b == 30) //邏輯或,只有兩個條件都為假時if語句才不會執行 { printf("a || b\n"); } return 0; }
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; }
exp1, exp2, exp3, …expN
#include<stdio.h> main() { int x, y, z; x = y = 1; //逗號表達式,從左向右依次執行每個運算,但是只取最后一個逗號的結果 z = (x++, y++, ++y); //先執行前面兩個逗號,x++ -> x = 2, y++ -> y=2, 再最后一個逗號,z=++y,前置++,所以z=y=3 printf("x = %d\ny = %d\nz = %d\n", x, y, z); return 0; }
這里要特別注意:賦值運算符的優先級是高于逗號表達式的,也就是說,如果這里 z 后面沒有括號,那么編譯器會最先將 x 的值賦給 z,再執行后面的逗號表達式。
#include<stdio.h> main() { int x, y, z; x = y = 1; //逗號表達式,從左向右依次執行每個運算,但是只取最后一個逗號的結果 //賦值運算符優先級高于逗號表達式,先將 x 賦給 z,那么 z = 1; //再執行前面兩個逗號,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; }
[] () . ->
#include<stdio.h> struct Stu { //定義一個結構體類型 char name[15]; int age; char sex[6]; }; int main() { struct Stu s = { "張三",20,"男" }; //用結構體類型定義一個結構體變量 s 并對其初始化 printf("%s\t%d\t%s\n", s.name, s.age, s.sex); //用 . 操作符對結構體成員進行訪問 return 0; }
“C語言選擇、循環、函數、數組與操作符實例分析”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。