I. if else
if-else 语句用于基于一个条件来决定是否执行某个代码块。如果条件为真(非零),则执行if
块中的代码;如果条件为假(零),则执行else块中的代码.
格式
if (条件) {
// 条件为真时执行的代码
}
else {
// 条件为假时执行的代码
}
举个例子
#include<stdio.h>
int main() {
int input = 0;
printf("面试通过了吗?(选择1或0)\n");//1 = yes, 0 = no
scanf("%d", &input);
if (input == 1) {
printf("have a job");
}
else {
printf("stay at home");
}
return 0;
}
当然,也可以稍作修改,多添加一个选择项
就像这样;
#include <stdio.h>
int main() {
int input = 0;
printf("面试通过了吗?(选择1或0或2)\n");
scanf("%d", &input);
if (input == 1) {
printf("获得一个工作");
}
else if (input==0){
printf("家里蹲");
}
else {
printf("关注kurumi1949,和我一起学习")
}
return 0;
}
你可以自由根据你的选项数量来调整else if。
II. while
while循环用于在给定条件为真的情况下重复执行代码块。循环会一直执行,直到条件变为假。
格式
接下来的头文件我就给省略了
while (条件) {
// 条件为真时反复执行的代码
}
()里面添加你想要达到的条件,例如 a>1,c<=1,b==1等等,
额外提一嘴,如果你想要表示当a等于某个值时,应该使用a == 1,而不是a = 1,'='是赋值,'=='才是比较是否相等。
来个例子
int main() {
int a = 15, b = 20;//a是买家的出价,b是卖家的心理预期
while (a < b) {
printf("a出价%d元\n",a);
printf("太少了,再加点吧\n");
a++;
}
printf("a出价%d元\n", a);
printf("成交\n");
return 0;
}
当未满足括号内的条件时,while会一直循环下去
就像这样
int main() {
int a = 15, b = 20;//a是买家的出价,b是卖家的心理预期
while (a!=5) {
printf("a出价%d元\n",a);
printf("太少了,再加点吧\n");
a++;
}
printf("a出价%d元\n", a);
printf("成交\n");
return 0;
}
当把条件改成a!=5(a不等于5)的时候,a最小也是15,且每次循环加一,使用无法使这个条件为假,它就会一直循环下去。
III. for循环语句
for循环是一种更结构化的循环,它允许在循环开始前初始化变量,定义循环执行的条件,以及在每次循环迭代后更新变量。这使得for循环特别适用于执行已知次数的迭代。
格式
for (初始化; 条件; 更新) {
// 条件为真时反复执行的代码
}
来个简单的示例
int main() {
int a;
for (a = 1; a <= 8; a++) {
printf("a = %d\n", a);
}
return 0;
}
这是运行结果,这段代码是从a开始数,每段循环a加1,打印a的值,当a <= 8时停止。
最后展示一个将所有结构组合使用的简单示例,以展示如何在实际程序中使用它们。
#include <stdio.h>
int main() {
int number = 5; // 这是我们将要检查和递减的数
// 使用if-else结构来检查number是否为正数
if (number <= 0) {
printf("数字必须大于零。\n");
return 1; // 使用非零返回值表示错误情况
}
else {
printf("倒数开始:\n");
}
// 使用for循环从number递减到1
for (int i = number; i > 0; i--) {
printf("%d\n", i);
}
printf("倒数结束。\n");
return 0; // 返回0表示程序成功执行
}
这个C程序首先检查一个预设的整数(在此例中为5)是否为正数。如果该数非正,程序会输出一条消息并以错误状态1结束。若该数为正,程序将从该数开始递减至1,每次递减都会打印当前的数字,最终在完成倒数后正常结束,并返回一个表示成功执行的状态码。