元小白(猿小白)进阶日记:三(if)

好久没写了,赶紧来总结一下最近学的东西,选择语句和循环语句以及和break、continue的运用,分支语句:if,switch,**循环语句:**while,for,do while.**东西太多了,决定分开总结,这部分总结if

1、if

if(表达式)
	语句1;

if(表达式)
	语句1;
else
	语句2;

if(表达式1)
	语句;
	else if(表达式2)
		语句2;
	else
		语句3;

以上表达式为1,执行语句1,否则执行语句2。
如果条件成立要执行多条语句,则要用{…},将语句列表包含起来,否则此if只控制与其最近的第一条语句。条件成立,执行完这一条语句后其他条件仍会执行,条件不成立则不执行此语句,其他语句仍会执行。

if(表达式)
{
	语句列表1;
}
else
{
	语句列表2;
}

例如:

  #include<stdio.h>
        int main()
        {
        	int a=0;
        	int b=2;
    	if(a==1)
    		printf("hehe\n ");
    		printf("haha\n ");
    	return 0;
    }

此程序,条件a==1;不满足,仍会输出haha。

误区一:

int num = 0;
	 if (num=5)这是一个赋值语句。
	if (5==num)这是一个判断语句。不容易出错。

误区二:else会与最近的if连接。
例如:

 #include<stdio.h>
    int main()
    {
    	int a=0;
    	int b=2;
	if(a==1)
		if(b==2)
			printf("hehe\n ");
	else
	printf("haha\n ");
	return 0;
}

最终会不会输出任何东西,不符合a==1的条件,不会进入if语句,else与第二个if对应,为增加程序可读性,出现误解,建议写程序时if后都加上{…}。

误区三:

if(condition)
	return x;
return y;

这是一个正确的代码,condition 成立,返回x,不成立,返回y。而不是不论条件是否成立,都会返回y。此代码相当于:

if(condition)
{
	return x;
}
else
{
	return y;
}

练习代码一:判断一个数是否为奇数

扫描二维码关注公众号,回复: 5848535 查看本文章
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<stdlib.h>
int main()
{
	int i = 0;
	scanf("%d", &i);
	if(i%2!=0)
	{
		printf("%d是奇数", i);
	}
	else
	{
		printf("%d不是奇数", i);
	}
return 0;
}

猜你喜欢

转载自blog.csdn.net/weixin_44748803/article/details/88978085