学习C - C If
if语句的一般形式或语法是:if(expression)
Statement1;
Next_statement;
请注意,第一行末尾没有分号。
第二行可以直接写在第一行之后,如下所示: if(expression) Statement1;
括号中的表达式可以是导致值为true或false的任何表达式。
如果表达式为true,则执行Statement1,之后程序继续使用Next_statement。
如果表达式为false,则会跳过Statement1,并使用Next_statement立即继续执行。
因为if语句的控制表达式预期会产生一个布尔结果,所以编译器将安排将产生数值结果的if表达式的结果转换为bool类型。
这里有一个语句说明了这一点: if(count)
printf("The value of count is not zero.\n");
如果count不为0,则只会产生输出,因为count的值为0将导致if表达式的值为false。
count的任何非零值将导致表达式为true。
以下代码显示了if语句的简单示例
#include
int main(void)
{
int number = 0;
printf("\nEnter an integer between 1 and 10: ");
scanf("%d",&number);
if(number > 5)
printf("You entered %d which is greater than 5\n", number);
if(number < 6)
printf("You entered %d which is less than 6\n", number);
return 0;
}
上面的代码生成以下结果。
if else
if..then的语法模型可以表示如下:if (conditional) {
// do something
}else{
// do another job
}
可以通过逻辑或/和比较操作获得条件。
if-else语句的语法如下:if(expression)
Statement1;
else
Statement2;
Next_statement;
在这里,你有一种或两种情况。您将始终执行Statement1或Statement2,具体取决于表达式是否导致值为true或false。
如果expression为true,则执行Statement1,并继续执行Next_statement。
如果expression为false,则执行else关键字后面的Statement2,并继续执行Next_statement。
#include
int main(void)
{
const double PRICE = 3.50; // Unit price in dollars int quantity = 0;
printf("Enter the number that you want to buy:");
scanf(" %d", &quantity); // Read the input
double total = 0.0; // Total price if(quantity > 10) // 5% discount total = quantity * PRICE * 0.95;
else // No discount total = quantity*PRICE;
printf("The price for %d is $%.2f\n", quantity, total);
return 0;
}
上面的代码生成以下结果。
If 语句中的代码块
您可以使用if语句中大括号{}之间的语句块。
当if表达式的值为true时,可以提供要执行的几个语句。
涉及语句块的if语句的一般形式如下所示: if(expression)
{
StatementA1;
StatementA2;
. . .
}
else
{
StatementB1;
StatementB2;
. . .
}
Next_statement;
例子
这里是示例代码:
#include
int main() {
int a, b;
a = 5;
b = 8;
if(a>b || a-b
printf("conditional-->a>b || a-b