语法没有错,逻辑错了,y=3x-110;永远都不会执行。因为关系运算符是左至右结合的,所以1<=x<10被等效于(1<=x)<10,而1<=x要么是0,要么是1,永远都小于10,所以1<=x<10总是为“真”,后面的else当然就不会执行了。
C语言中else if语句与if。 else语句分别是什么意思?我搞糊涂了
if是 如果,else是否则,所以if else就是如果……,做……,否则做……。而else if是否则 如果……,做……。举个例子,如果x>1,y=0,否则若x<0,y=1
17、在C语言中,实现选择的语句有:if语句、ifelse语句、ifelseifelse语句 和( )语句#include "stdioh"
main()
{
int a,b;
a=b=1;
loop: if(b<=11)
{
b=b+2;
a=ab;
goto loop;
}
else
{
printf("13 511=%d",a);
getch();
}
}
c语言中这些语句分别是什么意思:while(a++): while(!e):if(-1);if(a++);if(-1);就是为真时,因为零表示假。while(!e)中!e相当于e==0,具体原因没看懂,百度一下,有关于这个问题的解释的! 追问: while(a++)呢, 这个比较 纠结 、、
C语言中“%%”与“%”分别是什么意思?%%没有特殊含义,% 单列出来就是取模运算符
C语言是一门通用计算机编程语言,应用广泛。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。
尽管C语言提供了许多低级处理的功能,但仍然保持着良好跨平台的特性,以一个标准规格写出的C语言程序可在许多电脑平台上进行编译,甚至包含一些嵌入式处理器(单片机或称MCU)以及超级电脑等作业平台。
以下几种是在C语言中常见的几种表示:
在格式化IO语句,如Scanf/Printf/Format等之中,百分号是特殊格式化字符
%n 回车 %d 输出整数 %% 输出一个百分号
c语言中“else”是什么意思?ifelse
也就是当条件先满足if,如果没有满足这个条件的情况下则去判断是否满足else
你可以理解成单项判断,也就是“或者”的关系,
当你判断条件的时候需要满足if或者else,当然这里else可以有多个。
c语言中if语句后的条件是什么意思是一种特殊的表达式——逻辑表达式,其结果是逻辑值:真或假,根据结果决定是否执行条件语句给出的执行部分语句。
在C语言中,对于if语句,else字句与if字句的配对约定是大致如下:
1、
if()
{
}
2、
if()
{
}
else
{
}
3、
if()
{
}
else if()
{
}
4、
if()
{
}
else if()
{
}
else
{
}
C语言,if语句什么意思if (led & 0x21) 若led 和0x 21都成立 ( &是与的意思),执行dir = (dir ^ 0x1)
c语言中,求分段函数,是三段我用 if() 语句1; if() 语句2; else 语句3;你好,你这样写肯定是的,我给你分析一下,当程序执行到第一个if时要判断if语句的条件,假设满足条件则执行了语句1,这是对的,是吧,例如你求的是y的值,假设语句1是y=x+1,则第一个if语句执行完后y=x+1;接着执行第二个if语句,此时肯定是不满足if的条件的是吧?(因为满足了第一个就不会再满足第二个),所以就要执行第二个if的第二个语句即else语句,假设语句3为y=y+2,则最终的结果就是y=y+2,也就是语句3所以在这样的情况下,你一定要排除你已经用过的情况不能再使用,所以只需改为: if() 语句1;else if() 语句2; else 语句3;即可。
第一种:先执行if,如果真则执行A代码段。else不执行
if(true){
代码段A
} else {
代码段B
}
第二种:先执行if,如果假则执行else 的B代码段
if(true){
代码段A
} else {
代码段B
}
第三种:先执行if,如果假则执行else if 如果真则执行B代码段。else不执行
if(false){
代码段A
} else if(true){
代码段B
} else {
代码段C
}
一般这种问题是少加了大括号
比如
if(A)aaa();
else
这样的
如果改成
if(A)aaa();
bbb();
else
就会出错
解决方式为
if(A){
aaa();
bbb();
}
else
用if语句可以构成分支结构。它根据给定的条件进行判断,以决定执行某个分支程序段。下面我就跟你们详细介绍下c语言中if else的用法,希望对你们有用。
c语言中if else的用法如下:
C语言的if语句有三种基本形式。
语句的三种形式
1) 第一种形式为基本形式:if
if(表达式) 语句
其语义是:如果表达式的值为真,则执行其后的语句,否则不执行该语句。其过程可表示为下图。
#include <stdioh>
int main(void){
int a,b,max;
printf("\n input two numbers: ");
scanf("%d%d",&a,&b);
max=a;
if (max<b) max=b;
printf("max=%d",max);
return 0;
}
本例程序中,输入两个数a、b。把a先赋予变量max,再用if语句判别max和b的大小,如max小于b,则把b赋予max。因此max中总是大数,最后输出max的值。
2) 第二种形式为: if-else
if(表达式)
语句1;
else
语句2;
其语义是:如果表达式的值为真,则执行语句1,否则执行语句2 。其执行过程可表示为下图。
#include <stdioh>
int main(void){
int a, b;
printf("input two numbers: ");
scanf("%d%d",&a,&b);
if(a>b)
printf("max=%d\n",a);
else
printf("max=%d\n",b);
return 0;
}
输入两个整数,输出其中的大数。改用if-else语句判别a,b的大小,若a大,则输出a,否则输出b。
3) 第三种形式为if-else-if形式
前二种形式的if语句一般都用于两个分支的情况。当有多个分支选择时,可采用if-else-if语句,其一般形式为:
if(表达式1)
语句1;
else if(表达式2)
语句2;
else if(表达式3)
语句3;
…
else if(表达式m)
语句m;
else
语句n;
其语义是:依次判断表达式的值,当出现某个值为真时,则执行其对应的语句。然后跳到整个if语句之外继续执行程序。 如果所有的表达式均为假,则执行语句n。然后继续执行后续程序。 if-else-if语句的执行过程如下图所示。
#include <stdioh>
int main(void){
char c;
printf("input a character: ");
c=getchar();
if(c<32)
printf("This is a control character\n");
else if(c>='0'&&c<='9')
printf("This is a digit\n");
else if(c>='A'&&c<='Z')
printf("This is a capital letter\n");
else if(c>='a'&&c<='z')
printf("This is a small letter\n");
else
printf("This is an other character\n");
return 0;
}
本例要求判别键盘输入字符的类别。可以根据输入字符的ASCII码来判别类型。由ASCII码表可知ASCII值小于32的为控制字符。在“0”和“9”之间的为数字,在“A”和“Z”之间为大写字母, 在“a”和“z”之间为小写字母,其余则为其它字符。这是一个多分支选择的问题,用if-else-if语句编程,判断输入字符ASCII码所在的范围,分别给出不同的输出。例如输入为“g”,输出显示它为小写字符。
在使用if语句中还应注意以下问题:
在三种形式的if语句中,在if关键字之后均为表达式。 该表达式通常是逻辑表达式或关系表达式,但也可以是其它表达式,如赋值表达式等,甚至也可以是一个变量。例如:
if(a=5) 语句;
if(b) 语句;
都是允许的。只要表达式的值为非0,即为“真”。如在:
if(a=5)…;
中表达式的值永远为非0,所以其后的语句总是要执行的,当然这种情况在程序中不一定会出现,但在语法上是合法的。
又如,有程序段:
if(a=b)
printf("%d",a);
else
printf("a=0");
本语句的语义是,把b值赋予a,如为非0则输出该值,否则输出“a=0”字符串。这种用法在程序中是经常出现的。
在if语句中,条件判断表达式必须用括号括起来,在语句之后必须加分号。
在if语句的三种形式中,所有的语句应为单个语句,如果要想在满足条件时执行一组(多个)语句,则必须把这一组语句用{}括起来组成一个复合语句。但要注意的是在}之后不能再加分号。例如:
if(a>b){a++;
b++;
}else{
a=0;
b=10;
}
if语句的嵌套
当if语句中的执行语句又是if语句时,则构成了if 语句嵌套的情形。其一般形式可表示如下:
if(表达式)
if语句;
或者为:
if(表达式)
if语句;
else
if语句;
在嵌套内的if语句可能又是if-else型的,这将会出现多个if和多个else重叠的情况,这时要特别注意if和else的配对问题。例如:
if(表达式1)
if(表达式2)
语句1;
else
语句2;
其中的else究竟是与哪一个if配对呢?应该理解为:
if(表达式1)
if(表达式2)
语句1;
else
语句2;
还是应理解为:
if(表达式1)
if(表达式2)
语句1;
else
语句2;
为了避免这种二义性,C语言规定,else 总是与它前面最近的if配对,因此对上述例子应按前一种情况理解。
#include <stdioh>
int main(void){
int a,b;
printf("please input A,B: ");
scanf("%d%d",&a,&b);
if(a!=b)
if(a>b) printf("A>B\n");
else printf("A<B\n");
else printf("A=B\n");
return 0;
}
比较两个数的大小关系。本例中用了if语句的嵌套结构。采用嵌套结构实质上是为了进行多分支选择,实际上有三种选择即A>B、A<B或A=B。这种问题用if-else-if语句也可以完成。而且程序更加清晰。因此,在一般情况下较少使用if语句的嵌套结构。以使程序更便于阅读理解。
复制纯文本新窗口
#include <stdioh>
int main(void){
int a,b;
printf("please input A,B: ");
scanf("%d%d",&a,&b);
if(a==b) printf("A=B\n");
else if(a>b) printf("A>B\n");
else printf("A<B\n");
return 0;
}
以上就是关于这个C程序的最后一个else哪错全部的内容,包括:这个C程序的最后一个else哪错、C语言中else if语句与if。 else语句分别是什么意思我搞糊涂了、if和else在程序中的位置关系等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)