新手请教,C语言中为什么if if else的嵌套语句中,执行了第一个if第二个会不执行?(输出的答案是2)

作者&投稿:剑航 (若有异议请与网页底部的电邮联系)
为什么while语句中嵌套的if语句,条件符合第二个if,却还是执行第一个表达式呢,不执行第二个呢?~

if(a=1) //你这边写的是=,不是== ,=是赋值,一定成功的
sum1++;
if(a=0) //这边也是
sum2++;

看第一个if后面有没有分号
if()if();这时候就是嵌套的
if();if();这时候就是单独的 补充:一般使用时:
if(/*判断条件*/){ if(/*判断条件*/) cout<<"这是嵌套if语句";}if(/*判断条件*/) cout<<"这是第一条if语句";//这时候分号在cout的后面if(/*判断条件*/) cout<<"这是第二条if语句";//这时候分号在cout的后面

因为第一个if条件不满足,不能执行里面嵌套的第二个if

else总是最近匹配的

你多写一对括号就明白了

#include <stdio.h>
{
int a=2,b=-1,c=2;
if(a<b){
if(b<0) c=0;
else c+=1;
}

printf("%d",c);
}

else总是与最近的if匹配,因为第一句if(a<b)不成立所以直接跳过下面的if-else语句,输出c等于2没变

因为第一个没执行。

#include <stdio.h>
int main(void)
{
int a=2,b=-1,c=2;
if(a<b)
{
if(b<0)
c=0;
else
c+=1;
}
printf("%d",c);
}


我是c语言初学者!我想请教下!在c语言中为什么要引入指针这个概念!它的...
C语言引入指针,是为了直接操作计算机内存。这个功能使得可以用C语言写操作系统、驱动程序之类系统底层的程序。指针的微妙之处:1、每个指针本身有一个对应的内存单元,这个内存单元中可以存放别的变量、函数等等的内存地址。2、指针是有类型的。如char*,int*,float*,double*,void*等等。3、指针类型,...

请问c语言中形参为指针是为设么实参有时加&有时不加,求高手解答。
int m=*b;\/\/int m=a;如果你这一行写的是c=func2(a);

编写c语言中,为甚么要多输入一个数程序才往下执行
scanf函数__仅在每一个数据域均有数据,并按回车后__结束。scanf("%10d%10f\\n",&num[a],&x[a]);这一句数据域有3个:%10d、%10f 和 \\n!这里\\n是作为数据域,所以必须在遇到__第二个__\\n时scanf才结束。也就是说,你必须多输入一个回车才能使scanf结束。至于输出为什么又是正确的,那...

请教C语言高手为小弟解答的疑惑
4,int* pIndex=&nArray;如果这么写的话,逻辑上是错的,&nArray表示一个二级指针,而pIndex是一个一级指针。

请教高手,C语言中,把变量定义在主函数之外和定义在主函数之内有什么区别...
1、main函数里定义的是局部变量,只是在main函数里有效。2、如果程序里有多个函数,定义的全局变量在这些函数里都可以使用,而在main中定义的只能在main中使用,其他函数不可以直接调用。3、题目中的两个程序的区别只在于程序一的a和s变量是全局变量,程序二的a和s变量是局部变量。4、全局变量是程序的...

高手指教下:在计算机C语言中
fread函数和fwrite函数 1.函数功能 用来读写一个数据块。2.一般调用形式 fread(buffer,size,count,fp);fwrite(buffer,size,count,fp);3.说明 (1)buffer:是一个指针,对fread来说,它是读入数据的存放地址。对fwrite来说,是要输出数据的地址。(2)size:要读写的字节数;(3)count:要进行...

C语言 新手请教
pdata[i] = pdata[j]; pdata[j] = tmp; } } }}void print_array(const char*desc, int *pdata, int count){ int i; printf("%s: ", desc); for (i=0;i<count;i++) { printf("%d ", pdata[i]); } printf("\\n")...

请教大佬们关于C语言中for循环的两个问题?
for循环是C语言的循环语句,它不是函数。Main里定义的变量,只要在作用域内有语句给变量赋值,其值都会被改变。但是如果Main里定义了int i,同时有for(int i = 0; ;){}这样的语句那在for里面改变i的值,Main里的i不变。因为for里面的局部变量i只作用在for语句内,而且Main里的i不会作用在for...

请教高手C语言编程!
printf("输入字符串:\\n");gets(string);\/\/接收键盘输入第一个字符串 printf("输入要删除的子串:\\n");gets(s); \/\/接收要删除的子符串 k=0;n2=strlen(s);\/\/设N2为删除字符串的长度 for(i=0;string[i]; )\/\/开始删除,循环结束条件是从原字符串第一个字母到最后一个字母.{ for(k=0...

请教C语言中NULL指针的概念
NULL被定义为0,在C中约定,一旦指针为NULL,即为该指针指向的内容不可用。在DOS(WINDOWS的基础)中,物理地址0开始的部分单元被操作系统占用,如果试图读写0地址的内容将被视为非法的,会立刻结束用户程序而退出。

重庆市18652044876: 新手请教,C语言中为什么if if else的嵌套语句中,执行了第一个if第二个会不执行?(输出的答案是2) -
武贱止咳: else总是最近匹配的 你多写一对括号就明白了#include <stdio.h> { int a=2,b=-1,c=2; if(a<b){ if(b<0) c=0; else c+=1; } printf("%d",c); }

重庆市18652044876: C语言中#if 0 和#end if 是什么意思? -
武贱止咳: 是预处理指令,这些指令是预编译时执行的,为预编译如果xxx为真,编译A,假编译B,0为假不编译.1. 在编程中选择结构中最实用的就是if语句,打开编程软件C-FREE,Ctrl+N新建一个cpp.2. 输入图中的程序,该程序的作用是对输入的三个数字按大小排序.3. 注意图中if语句的格式:if(条件){条件成立的结果}.按F5执行程序.4. 输入你想要输入的三个数字,每按一个按一次回车键.5. 检查得出的结果是否符合从小到大排列,然后再重新仔细看下程序中if语句的意义,程序中X是起交换作用.

重庆市18652044876: 计算机C语言中的关键字:if是什么意思? -
武贱止咳: 判断语句

重庆市18652044876: C语言中if函数是怎么用的?代表什么?举例... -
武贱止咳: if是如果的意思,比如说达到这个条件 示例 if(x==0){ 执行这个代码 }

重庆市18652044876: c语言中if的问题为什么我的程序老是错误 -
武贱止咳: if 是C语言中32个关键字之一它的使用方法很简单,我来给你做个详细解释: if是条件编译语句它的例如一下:char m = 1;if(m ) // 判断M的值是真还是假,0是假1是真,如果M为真就执行一下括号语句.{// 执行相应语句}else // 当M的值为假,上面语句不成立就执行下面语句{// 执行相应语句} 注意你程序里面判断语句 if(n>=10&&n<=20);后面加了个分号,那就不是条件判断语句了,就变成语句执行了,把分号去掉.

重庆市18652044876: 为什么C语言里面if语句里面是错的却不执行else if -
武贱止咳: 1.如果if条件成立,当然不会执行else子句.而会执行if子句 2.如果误将if条件中的相等操作符==误写成了赋值号=,而且=后面的值不是0,那么这个条件将一直成立,所以不会执行else子句 3.如果else后面有多条执行语句,而又没有加上括号,那么当if条件不成立时只会执行else后面的第一条语句,其它的语句不在else范围内,不管条件是否成立,它们都会执行. 4.如果根本没有else子句,那么...

重庆市18652044876: C语言里面if 和else的用法? -
武贱止咳: if语句是指c语言中用来判定所给定的条件是否满足,根据判定的结果(真或假)决定执行给出的两种操作之一.if的返回值为真或假,可以用bool型变量进行存储,占用一字节 c语言提供了三种形式的if语句: 1、If(表达式)语句. 例如: If(x>y)...

重庆市18652044876: C语言中if..else 和if...else if 以及if..if有什么区别呢,还有“{ }”什么时候用呢 -
武贱止咳: else总是与它前面最接近的且未曾配对的IF配对; 在执行完靠近if,else的语句也就是他们后边第一个分号语句后, 下边的分号语句也继续执行,不跳过, 给你写一个标准的IF嵌套语句吧,看后希望你明白些,{}怎么用. if(a>b){ if(b>c){if(c>d)printf("abcdef");elseprintf("fedcba");}elseprintf("abc"); } else printf("def"); 看明白了么

重庆市18652044876: 新手请教,C语言中为什么ififelse的嵌套语句中,执行了第一个if第二个会不执行?(输出的答案是2) -
武贱止咳: 当然可以了...if..else语句表示的是选择下一步应该执行的内容..没有对内容作具体要求(不要有语法错误..囧..)

重庆市18652044876: C语言中的if语句的问题 if(条件一)语句一 else if(条件二)语句二 else -
武贱止咳: 在c语言中正常格式是if(条件){结果}else{结果}.这是为了严谨才这么做的,不过有时为了方便else是可以省略不写的. 下面举一个简单例子: #include int main() {int a,b;a=4;b=5;if(a>b){printf("%d",a);}else{printf("%d",b);}return 0; } 若把else去掉的话,结果一样.但是如果是初学者,还是严谨一些、

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网