##switch使用:
在C语言中,switch语句是一种用于多分支条件判断的语句。它允许我们根据不同的条件执行不同的代码块。在switch语句中,我们使用关键字case来指定每个条件分支。
下面是一个简单的示例,演示如何使用switch语句来判断一个数字是星期几:
```c
#include <stdio.h>
int main() {
int day;
printf("Enter a day of the week (1-7): ");
scanf("%d", &day);
switch (day) {
case 1:
printf("Monday\n");
break;
case 2:
printf("Tuesday\n");
break;
case 3:
printf("Wednesday\n");
break;
case 4:
printf("Thursday\n");
break;
case 5:
printf("Friday\n");
break;
case 6:
printf("Saturday\n");
break;
case 7:
printf("Sunday\n");
break;
default:
printf("Invalid input\n");
break;
}
return 0;
}
```
上述代码解释:
在这个例子中,我们首先使用scanf函数从用户输入中读取一个整数。然后,我们使用switch语句来判断这个数字是星期几。如果day等于1,则输出“Monday”;如果day等于2,则输出“Tuesday”,以此类推。如果day不等于1到7中的任何一个数字,则输出“Invalid input”。
★★★需要注意的是:
在switch语句中,每个case分支都必须以break语句结束,否则程序会继续执行下一个case分支,直到遇到break语句或switch语句结束为止。如果没有匹配任何case分支,则执行default分支(如果有的话)。
switch语句只能用于整数类型的条件判断,不能用于浮点数或字符串等其他类型的条件判断。
##if的使用
在C语言中,if语句是一种用于根据条件执行不同代码块的语句。它允许我们在程序中做出决策,并根据不同的条件执行不同的操作。if语句通常与else语句一起使用,以便在条件不成立时执行另一个代码块。
下面是一个简单的示例,演示如何使用if语句来判断一个数字是正数还是负数:
```c
#include <stdio.h>
int main() {
int num;
printf("Enter a number: ");
scanf("%d", &num);
if (num > 0) {
printf("The number is positive.\n");
} else if (num < 0) {
printf("The number is negative.\n");
} else {
printf("The number is zero.\n");
}
return 0;
}
```
在这个例子中,我们首先使用scanf函数从用户输入中读取一个整数。然后,我们使用if语句来判断这个数字是正数、负数还是零。如果num大于0,则输出“The number is positive.”;如果num小于0,则输出“The number is negative.”;否则,即num等于0,则输出“The number is zero.”。
★★★需要注意的是
if语句的条件表达式必须返回一个布尔值(即true或false)。如果条件表达式的值为true,则执行if语句后面的代码块;否则,执行else语句后面的代码块(如果有的话)。
除了if语句之外,C语言还提供了其他条件语句,如switch语句和条件运算符(?:)。
##while循环
while循环是最基本的循环结构之一。它的语法如下:
```c
while (condition) {
// 循环体
}
```
当条件为真时,循环体会一直执行,直到条件为假为止。下面是一个简单的例子,演示如何使用while循环计算1到10的和:
```c
#include <stdio.h>
int main() {
int i = 1;
int sum = 0;
while (i <= 10) {
sum += i;
i++;
}
printf("The sum is %d\n", sum);
return 0;
}
```
##do-while循环
do-while循环与while循环类似,但是它会在循环体执行至少一次之后才检查条件是否为真。它的语法如下:
```c
do {
// 循环体
} while (condition);
```
下面是一个使用do-while循环计算1到10的和的例子:
```c
#include <stdio.h>
int main() {
int i = 1;
int sum = 0;
do {
sum += i;
i++;
} while (i <= 10);
printf("The sum is %d\n", sum);
return 0;
}
```
##for循环
for循环是一种更通用的循环结构,它可以用于执行固定次数的循环。它的语法如下:
```c
for (initialization; condition; update) {
// 循环体
}
```
在循环开始时,initialization语句会被执行,然后循环体会一直执行,直到condition为假为止。每次循环结束时,update语句会被执行。
下面是一个使用for循环计算1到10的和的例子:
```c
#include <stdio.h>
int main() {
int i;
int sum = 0;
for (i = 1; i <= 10; i++) {
sum += i;
}
printf("The sum is %d\n", sum);
return 0;
}
```
##for的嵌套使用
C语言中,for循环是一种用于重复执行一组语句的语句。它可以让我们在程序中执行固定次数的循环,或者根据条件进行循环。有时候,我们需要在循环内部嵌套另一个循环,以便在循环内部执行更复杂的操作。
下面是一个简单的示例,演示如何使用for循环嵌套来计算1到100的所有偶数的和:
```c
#include <stdio.h>int main() {
int sum = 0;for (int i = 1; i <= 100; i++) {
for (int j = 2; j <= i; j++) {
if (i % j == 0) {
sum += i;
break;
}
}
}printf("The sum of all even-numbered integers from 1 to 100 is %d\n", sum);
return 0;
}
```
在这个例子中,我们使用两个for循环嵌套来计算1到100的所有偶数的和。外层循环从1到100遍历每个数字,内层循环从2到当前数字遍历每个数字的因子。如果当前数字能够被某个因子整除,则将其加入到sum中,并跳出内层循环。最终,sum将包含所有偶数的和。
★★★需要注意的是:
嵌套循环的层数不应该过多,否则代码可能会变得难以理解和维护。在编写嵌套循环时,应该尽可能地使代码简洁易懂,并避免过多的嵌套层数。