C/分支结构
外观
< C
导论
[编辑]在前面认识了基本的数据结构与输入输出后,你或许会想,“要是我想根据使用者的输入值,输出不同结果时该怎么做?”
就像这样:
如果 ( 輸入1 )
做這些事
...
如果 ( 輸入2 )
做這些事
...
如果 ( 輸入3 )
做這些事
...
...
这时候就需要运用 if/else 与 switch 句型进行判断了
判断
[编辑]if/else 子句
[编辑]最基本的判断子句,格式如下:
if ( 條件1 )
{
// 條件1成立時執行
}
也可以加上 else,这样当条件不成立时,else 内的叙述句就会执行
if ( 條件1 )
{
// 條件1成立時執行
}
else
{
// 條件1不成立時執行
}
例如判断使用者输入的整数是否为正数
#include<stdio.h>
int main ( int argc, int argv[] )
{
int a;
scanf("%d", &a);
if ( a <= 0 )
{
// a 不為正數時執行此行
printf("Wrong number!");
}
else
{
// a 為正數時執行此行
printf("You entered %d.", a);
}
return 0;
}
// 使用者輸入:5 輸出:You entered 5.
// 使用者輸入:-2 輸出:Wrong number!
一般来说,若 if/else 子句后的叙述句只有一行时不须加上大括号{}
#include<stdio.h>
int main ( int argc, int argv[] )
{
int a;
scanf("%d", &a);
if ( a <= 0 )
printf("Wrong number!"); // a 不為正數時執行此行
else
printf("You entered %d.", a); // a 為正數時執行此行
return 0;
}
但还是建议养成在每一个 if/else 子句后面加上大括号的习惯,这样不仅可以增加程式的易读性,也可以在建立大型专案时便于维护与修改
switch 子句
[编辑]//for Ex.
#include <stidio.h>
main()
{
int score=3; /*以5分制成绩为例*/
switch(c) /*如果结果为3,则打印字符串*/
{
case 5 : printf("Great!");
case 4 :
case 3 : printf("Your score is %d \n",c); break;
default: printf("You may need to work harder");
}
return 0;
}
逻辑运算子
[编辑]结语
[编辑]在C语言可以运用 if/else 句型与 switch 句型进行条件判断