C语言基础 2

条件语句(Conditionals)

if语句

if 语句被叫做条件控制结构,因为它可以在前提条件成立的情况下执行语句。因为这个原因,if 也被认为是决策结构。
语法如下:

if (表达式	expression)
	执行语句	statements;

具体例子:

#include <stdio.h>

int main() {
  int score = 89;
  
  if (score > 75)
    printf("You passed.\n");
    
  return 0;
}

以上代码用Python可以写成一下样子:

score = 89

if score > 75:
	print('You passed.')

关系操作符(Relational Operators)

< less than
<= less than or equal to
> greater than
>= greater than or equal to
== equal to
!= not equal to
关系操作符与Python中的使用方法一样。
C语言代码例子:

int num = 41;
num += 1;
if (num == 42) {
   printf("You won!");
}

if - else 语句

if 语句中可以包括额外的else 条件,在表达式是FALSE的情况下来执行语句。
C语言代码如下:

#include <stdio.h>

int main() {
	int score = 89;
	
	if (score >= 90)//	如果分数大于等于90分
		printf("Top 10%%.\n");
	else //	否则的话
		printf("Less than 90.\n");
	
	return 0;
}

可以理解为:

如果 (条件成立)
	执行语句1;
否则
	执行语句2;

使用Python实现以上代码:

score = 89
if score >= 90:
	print('Top 10')
else:
	print('Less than 90')

条件表达式(Conditional Expressions)

可以使用 ?: 操作符来替代简单if-else语句, ?: 操作符只能包含一个if-else 语句。
一般的if-else语言代码如下:

#include <stdio.h>

int main() {
	int y;
	int x = 3;
	
	if (x >= 5)
		y = 5;
	else
		y = x;
	return 0;
}

而使用 ?: 就很简洁,代码如下:

#include <stdio.h>
int main(){
	int y;
	int x = 3;
	
	y = (x >= 5) ?  5 : x;
	return 0;
}

可以理解为:

y = (条件表达式)?(成立时的值):(否则的值);

if 嵌套(Nested if Statements)

if 嵌套,顾名思义就是在 if - else 语句中再写一个或者多个 if - else 语句
C语言的代码例子如下:

#include <stdio.h>

int main(){
	int score = 89;
	
	if (score >= 90)
		if (score >= 95)
			printf("Perfect\n")
		else 
			printf("Good\n")
	else
		printf("Less than 90\n")
	return 0
}

if - else if 语句(The if-else if Statement)

和Python中的elif一个道理, 当一个要筛选三个或者更多的条件时可以使用else if语句。
C语言代码如下:

#include <stdion.h>

int main(){
	int score = 89;
  
	if (score >= 90)
	  printf("%s", "Top 10%\n");
	else if (score >= 80)
	  printf("%s", "Top 20%\n");
	else if (score > 75)
	  printf("%s", "You passed.\n");
	else
	  printf("%s", "You did not pass.\n"); 
	return 0;
}

使用Python实现以上代码如下:

score = 89
if score >= 90:
	print('top 10%')
elif score >= 80:
	print('top 20%')
elif score > 75:
	print('passed')
else
	print('failed')

逻辑操作符(Logical Operators)

在条件语句中可以使用逻辑操作符来进行操作。

与 and &&

C语言版本:

if (n > 0 && n <= 100)
	printf("Range (1 - 100)\n")

而在Python中可以直接使用 and

if n > 0 and n <= 100:
	print('Range (1 - 100)')

或 or ||

C语言版本:

if (n < 0 || n > 100)
	printf("Out of range.\n")

Python版本:

if n < 0 or n > 100:
	print('Out of range.')

非 not !

C语言版本:

if (!(n == 'x' || n == 'X'))
  printf("Roman numeral is not 10.\n"); 

python 版本:

if not (n == 'x' or n == 'X'):
	print('Roman numeral is not 10.')

循环(loop)

while 循环

语法如下:

while (条件表达式	expression) {
  执行语句	statements
}
/**注意花括号**/

当满足条件的情况下,一直进行循环操作,知道条件不满足停止。
简单的C语言例子如下:

 #include <stdio.h>

int main() {
  int count = 1;
  
  while (count < 8) {
    printf("Count = %d\n", count);
    count++;
  }
    
  return 0;
}

C语言中while和Python中的while操作基本类似。
Python版本:

count = 1
while count < 8:
	print(count)
	count += 1

for 循环

for 是用来循环固定次数的循环结构
语法如下:

for (initvalue; condition; increment) {
  statements;
}

具体操作如下:

int i ;
int max = 10;

for (i = 0; i < max; i++){
	printf("%d\n",i);
}

以上代码在Python中的实现如下:

for i in range(10):
	print(i)

C语言中的for 循环可以包含多个表达式,各个部分用逗号隔开,比如:

for (x = 0, y = num; x < y; i++, y--) { 
  statements; 
}
// 此处为伪代码不可运行

循环嵌套

直接上例子
C语言版本:

#include <stdio.h>
int main(){
	int i, j;
	int table = 10;
	int max = 12;
	
	for (i = 1; i <= table; i++) {
		for (j = 0; j <= max; j++) {
  			printf("%d x %d = %d\n", i, j, i*j);
}
	printf("\n"); /* blank line between tables */ 
}
	return 0;
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值