写下今天的一点小感想。
成都创新互联于2013年创立,是专业互联网技术服务公司,拥有项目网站设计、成都网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元武城做网站,已为上家服务,为武城各地企业和个人服务,联系电话:18982081108#include <stdio.h>
int main()
{
int a, b ;
int m ;
scanf("%d %d %d", &a, &b, &m);
if( a == 1 && m == 1 )
printf("a=%d
", a);
else if( b == 1 )
printf("a=%d b=%d", a, b);
else if(b==2)
printf("a=%d b=%d", a, b);
return 0;
}
X代表任何整数
若输入1,X,1 则输出a=1;
若输入2,1,1 则输出a=2,b=1;
若输入2,2,1 则输出a=2,b=2;
若输入1,X,0 则输出a=1,b=X;
若输入2,1,0 则输出a=2,b=1;
若输入2,2,0 则输出a=2,b=2;
其实它的原理就是首先执行if(a==1 && m==1),若为真,输出a=1,直接return 0,不会再检查其他的else if
否则执行else if( b == 1 ) 此时他已经不管a是否为1,都会判断第二、三条else if。
我一开始以为后面的else if 中的a一定不为1, 其实是错误的。 它只排除了后面的情况一定没有a=1和m=1的情况
而a、m各自是否为1 是不确定的
要实现我刚才的功能, 语句应改为
#include <stdio.h>
int main()
{
int a, b, m ;
scanf("%d %d %d", &a, &b, &m);
if( a == 1 )
{
if( m == 1)
printf("a=%d
", a);
return 0;
}
else if( b == 1 )
printf("a=%d b=%d", a, b);
else if(b==2)
printf("a=%d b=%d", a, b);
return 0;
}
判断语句是否为真,若真,直接返回,若假(只排除了括号里面的一种情况),继续判断下条else if 直至结束
网页题目:关于ifelseif-创新互联
文章出自:https://www.cdcxhl.com/article42/hsihc.html
成都网站建设公司_创新互联,为您提供虚拟主机、网站制作、小程序开发、全网营销推广、网站排名、营销型网站建设
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联