C語言是結構化的程序設計語言!
結構有三大類:順序結構,選擇結構,循環結構!
順序結構:順序結構是最簡單的,只要按照解決問題的順序寫出相應的語句就行,它的執行順序是自上而下,依次執行。
舉個例子:
#include<stdio.h> int main() { int i=1;//這段代碼中i依次為1,2,3 printf("%d ",i);//同時打印1,2,3,這里的代碼就是按順序結構進行下去的 i++; printf("%d ",i); i++; printf("%d ",i); return 0; }
選擇結構:選擇結構用于判斷給定的條件,根據判斷的結果判斷某些條件,根據判斷的結果來控制程序的流程。主要是使用if語句,以及switch語句。
if語句
1:單分支結構
if(表達式) 語句;
#include<stdio.h> int main() { int age; scanf("%d",&age); if(age<18) { printf("未成年 "); } return 0; }
2:多分支結構
if(表達式1) 語句1; else if(表達式2) 語句2; else 語句3;
#include<stdio.h> int main() { int age; scanf("%d",&age); if(age<18) { printf("未成年 "); } else if(age>=18&&age<=30) { printf("青年 "); } else { printf("中年以及老年 "); } return 0; }
注:當if語句中的表達式結果為真,則語句執行
懸空else
看看這段代碼,你知道它會打印什么嗎?
#include<stdio.h> int main() { int a=0; int b=0; if(a==1) if(b==2) printf("hehe "); else printf("haha "); return 0; }
如果你覺得會打印東西,那么恭喜你,回答錯誤!!!
告訴你給秘密,下面的這段代碼等于上面的那段代碼!
#include<stdio.h> int main() { int a=0; int b=0; if(a==1) { if(b==2) { printf("hehe "); } else { printf("haha "); } } return 0; }
看完上面的代碼估計你就明白了!else是與最近的if匹配,而不是與對其的if匹配!
switch語句:switch語句常常用于多分支的情況。
switch(整形表達式) { 語句項; } 語句項 //是一些case整形常量表達式: 語句
#include<stdio.h> int main() { int time; scanf("%d",&time); switch(time) { case 1: printf("春天 "); break;//break是指跳出循環 case 2: printf("夏天 "); break; case 3: printf("秋天 "); break; case 4: printf("%冬天 "); break; default://default是指case沒有規定的位置,可以寫在任何一個case標簽可以出現的位置 printf("輸入錯誤 "); break; } }
循環語句:循環結構是在一定條件下反復執行某段程序的流程結構,被反復執行的程序被稱為循環體。
while循環
while(表達式) 循環語句;
#include<stdio.h> int main() { int i=0; while(i<=10) { i++; if(i==5) continue;//continue是用于終止本次循環,然后直接跳轉到while語句的判斷部分,進行下一次循環的入口判斷 printf("%d ",i); } return 0; }
do~while循環:循環至少執行一次,不是經常使用!
do 循環語句; while(表達式); //與while語句的區別就是do~while是先執行,然后再判斷,while語句相反!
for循環
for(表達式1:表達式2:表達式3) 循環語句: 表達式1:初始化 表達式2:判斷 表達式3: 調整
#define _CRT_SECURE_NO_WARNINGS 1//打印乘法口訣表 #include<stdio.h> int main() { int i,j; for(i=1;i<=9;i++) { for(j=1;j<=i;j++) { printf("%d*%d=%d ",j,i,j*i); } printf(" "); } return 0; }
總結
本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關注服務器之家的更多內容!
原文鏈接:https://blog.csdn.net/qq_52988578/article/details/115605604