if语句:if和else
C语言是结构化的,这里指的结构是,选择结构,顺序结构,循环结构。
今天要讲的是选择结构中的if语句。
1.if
if语句的语法结构如下:
1 if(表达式)
2 语句;
表达式成立(为真),则语句执行,表达式不成立(为假),则语句不执行,在C语言中,0为假,非0为真,,也就是表达式的结果如果是0,则语句不执行,表达式的结果不是0,则语句执行。
例子:输入一个整数,判断是否为奇数。
#include <stdio.h>
int main()
{
int num=0;
scanf("%d",&num);
if(num%2==1)
printf("%d是奇数\n",num);
return 0;
}
2.else
如果一个数不是奇数,就是偶数,如果我们要用C语言来判断奇偶数,该怎么编写代码呢?
这里就需要if……else……语句了,语法形式如下:
1 if(表达式)
2 语句1;
3 else
4 语句2;
例子:输入一个整数,判断奇偶数,并打印出来。
#include <stdio.h>
int main()
{
int num=0;
scanf("%d",&num);
if(num%2==1)
printf("%d是奇数\n",num);
else
printf("%d是偶数\n",num);
return 0;
}
3.if分支中包含多条语句
默认if和else语句中都只能控制一条语句,比如:
#include <stdio.h>
int main()
{
int age=0;
scanf("%d",&age);
if(age>=18)
printf("成年了\n");
printf("可以交女朋友了\n");
return 0;
}
上面的代码,你会发现输入的值不管是>=18,“可以交女朋友了”这句话都会打在屏幕上
这是因为if语句只能控制一条语句,“成年了”,当if语句为真,则打印,当if语句为假吗,则不打印,但“可以交女朋友了”并不受if语句控制,则不管是否为真,都要打印。如果我们要同时打印两条语句,,那就要使用{}将代码括起来,else后也要括上大括号。如下:
#include <stdio.h>
int main()
{
int age=0;
scanf("%d",&age);
if(age>=18)//if后使用{}控制多条语句,这个叫程序块或者复合语句
{
printf("成年了\n");
printf("可以交女朋友了\n");
}
return 0;
}
#include <stdio.h>
int main()
{
int age=0;
scanf("%d",&age);
if(age>=18)//if后使用{}控制多条语句,这个叫程序块或者复合语句
{
printf("成年了\n");
printf("可以交女朋友了\n");
}
else//else后使用{}控制多条语句,这个叫程序块或者复合语句
{
printf("未成年\n");
printf("不可以早恋哦\n");
}
return 0;
}
完