深入了解C語言結構化的程序設計
C語言是結構化的程序設計語言!
結構有三大類:順序結構,選擇結構,循環(huán)結構!
順序結構:順序結構是最簡單的,只要按照解決問題的順序寫出相應的語句就行,它的執(zhí)行順序是自上而下,依次執(zhí)行。
舉個例子:
#include<stdio.h>
int main()
{
int i=1;//這段代碼中i依次為1,2,3
printf("%d\n",i);//同時打印1,2,3,這里的代碼就是按順序結構進行下去的
i++;
printf("%d\n",i);
i++;
printf("%d\n",i);
return 0;
}

選擇結構:選擇結構用于判斷給定的條件,根據判斷的結果判斷某些條件,根據判斷的結果來控制程序的流程。主要是使用if語句,以及switch語句。
if語句
1:單分支結構
if(表達式) 語句;
#include<stdio.h>
int main()
{
int age;
scanf("%d",&age);
if(age<18)
{
printf("未成年\n");
}
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("未成年\n");
}
else if(age>=18&&age<=30)
{
printf("青年\n");
}
else
{
printf("中年以及老年\n");
}
return 0;
}

注:當if語句中的表達式結果為真,則語句執(zhí)行
懸空else
看看這段代碼,你知道它會打印什么嗎?
#include<stdio.h>
int main()
{
int a=0;
int b=0;
if(a==1)
if(b==2)
printf("hehe\n");
else
printf("haha\n");
return 0;
}
如果你覺得會打印東西,那么恭喜你,回答錯誤!?。?/p>
告訴你給秘密,下面的這段代碼等于上面的那段代碼!
#include<stdio.h>
int main()
{
int a=0;
int b=0;
if(a==1)
{
if(b==2)
{
printf("hehe\n");
}
else
{
printf("haha\n");
}
}
return 0;
}
看完上面的代碼估計你就明白了!else是與最近的if匹配,而不是與對其的if匹配!
switch語句:switch語句常常用于多分支的情況。
switch(整形表達式)
{
語句項;
}
語句項
//是一些case整形常量表達式:
語句
#include<stdio.h>
int main()
{
int time;
scanf("%d",&time);
switch(time)
{
case 1:
printf("春天\n");
break;//break是指跳出循環(huán)
case 2:
printf("夏天\n");
break;
case 3:
printf("秋天\n");
break;
case 4:
printf("%冬天\n");
break;
default://default是指case沒有規(guī)定的位置,可以寫在任何一個case標簽可以出現(xiàn)的位置
printf("輸入錯誤\n");
break;
}
}
循環(huán)語句:循環(huán)結構是在一定條件下反復執(zhí)行某段程序的流程結構,被反復執(zhí)行的程序被稱為循環(huán)體。
while循環(huán)
while(表達式) 循環(huán)語句;
#include<stdio.h>
int main()
{
int i=0;
while(i<=10)
{
i++;
if(i==5)
continue;//continue是用于終止本次循環(huán),然后直接跳轉到while語句的判斷部分,進行下一次循環(huán)的入口判斷
printf("%d ",i);
}
return 0;
}
do~while循環(huán):循環(huán)至少執(zhí)行一次,不是經常使用!
do 循環(huán)語句; while(表達式); //與while語句的區(qū)別就是do~while是先執(zhí)行,然后再判斷,while語句相反!
for循環(huán)
for(表達式1:表達式2:表達式3)
循環(huán)語句:
表達式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("\n");
}
return 0;
}
總結
本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關注腳本之家的更多內容!
相關文章
C語言之結構體定義 typedef struct 用法詳解和用法小結
這篇文章主要介紹了C語言的結構體定義typedef struct用法詳解和用法小結,typedef是類型定義,typedef struct 是為了使用這個結構體方便,感興趣的同學可以參考閱讀2023-03-03

