❶ c语言里面问号什么意思:什么意思
C语言里面?、:是三木运算符,其中?用来判断条件的真假,:用来根据判断结果决定取值。
如(a<b)?a:b"是一个"条件表达式",如果a<b为真,则表达式取a值,否则取b值。条件运算符由"?"和":"两个符号组成, 要求有3个操作对象,所以条件运算符也叫三目运算符。
条件表达式的一般形式为:表达式1?表达式2:表达式3
(1)c语言问号扩展阅读
关于三目运算符的说明:
1、通常情况下,表达式1是关系表达式或逻辑表达式,用于描述条件表达式中的条件,表达式2和表达式3可以是常量,变量或表达式.例如:
(x==y)?'Y':'N'、(d=b*b-4*a*c)>=0?sqrt(d):sqrt(-d)、ch=(ch>='A'&&ch<='Z')?(ch+32):ch均为合法的条件表达式。
2、条件表达式的执行顺序为:先求解表达式1,若值为非0,表示条件为真,则求解表达式2,此时表达式2的值就作为整个条件表达式的值;
若表达式1的值为0,表示条件为假,则求解表达式3,表达式3的值就是整个条件表达式的值。例如:(a>=0)?a:-a执行结果是a的绝对值。
3、在程序中,通过把条件表达式的值直接赋予某个变量.。例如:min=(a<b)?a:b执行结果就是将条件表达式的值赋予变量min,即将a和b二者中较小的数赋给min。
❷ 在C语言中的问号是什么意思
你的
问号
是不是放错地方了?那个语句应该是判断是否大于等于吧?
是返回1,不是返回0;
❸ C语言中,问号表示什么意思
?用来判断条件的真假,:用来根据判断结果决定取值。
如(a<b)?a:b"是一个"条件表达式",如果a<b为真,则表达式取a值,否则取b值。条件运算符由"?"和":"两个符号组成, 要求有3个操作对象,所以条件运算符也叫三目运算符。
条件表达式的一般形式为:表达式1?表达式2:表达式3
C语言的基本构成:
1、数据类型
C的数据类型包括:整型、字符型、实型或浮点型(单精度和双精度)、枚举类型、数组类型、结构体类型、共用体类型、指针类型和空类型。
2、常量与变量
常量其值不可改变,符号常量名通常用大写。
变量是以某标识符为名字,其值可以改变的量。标识符是以字母或下划线开头的一串由字母、数字或下划线构成的序列,请注意第一个字符必须为字母或下划线,否则为不合法的变量名。变量在编译时为其分配相应存储单元。
❹ C语言 输出 问号
空格的原因是printf("the reverse line is:\n %s", rev);这句里面有一个空格(你的格式是换行后空格输出 所以有一个空格)
至于烫的原因 是
for (i = 0; i <= len; ++i)
rev[len - i] = ori[i - 1];
是当i=0的时候引用了ori[-1]是位置的内存,所以出现的
改为
for (i = 1; i <= len; ++i)
rev[len - i] = ori[i - 1];
就行了
ps:你用的是Windows编译器 谢谢采纳
❺ c语言中":"(冒号)和问号是什么意思
是问号和冒号一起吗
bool a = 1>3?false:true;
?: 是三元运算符
由条件运算符组成的条件表达式的一般形式为:
表达式1 ? 表达式 2 : 表达式 3
其中表达式 1、表达式2、表达式3,既可以是一个简单的表达式,又可以是由各种运算符组成的复合表达式。
计算过程很好理解:
先求表达式1的值, 如果为真, 则求表达式2 的值并把它作为整个表达式的值。 如果表达式1 的值为假, 则求表达式3 的值并把它作为整个表达式的值。
❻ c语言 问号表达式
你的意思就是如果M为真,也就是说M!=0,就执行a++,如果M为假,也就是说M==0,就执行a--。所以这个M就相当于判断M是否等于0;如果还看不懂的话,你可以去看下C语言书上的条件表达式的那章,很简单的,好好加油,祝你成功!~
❼ c语言中" : "(冒号)和问号是什么意思
bool a = 1>3?false:true;
?: 是三元运算符由条件运算符组成的条件表达式的一般形式为:
表达式1 ? 表达式 2 : 表达式3,其中表达式 1、表达式2、表达式3,既可以是一个简单的表达式,又可以是由各种运算符组成的复合表达式。
计算过程很好理解:先求表达式1的值, 如果为真, 则求表达式2 的值并把它作为整个表达式的值。 如果表达式1 的值为假,则求表达式3 的值并把它作为整个表达式的值。
(7)c语言问号扩展阅读:
C语言包含的各种控制语句仅有9种,关键字也只有32 个,程序的编写要求不严格且以小写字母为主,对许多不必要的部分进行了精简。实际上,语句构成与硬件有关联的较少,且C语言本身不提供与硬件相关的输入输出、文件管理等功能,如需此类功能,需要通过配合编译系统所支持的各类库进行编程,故c语言拥有非常简洁的编译系统。
❽ C语言则问号条件输出
这个输出,是由两个?:语句组成的。按照优先级,等同于
(a<b?a:(d<c?__:b))
也就是会先判断a<b 即4<3
判断不成立,表达式值为
d<c?__:b
的值
判断d<c 也就是1<2 成立。
最终表达式就是要填的值。
要输出1,那么只要让填的表达式值为1就可以了。
这样,就有很多种填法了。
比如
直接填1
填 d 因为d的值就是1
填一个减法的表达式,比如a-b b-c c-d这类的都可以。
❾ C语言问号表达式
……?……:……
式A?B:C值为:若A为真,则B;若A为假,则C。
但有一点是值得注意的,那就是问号表达式的结合性,问号表达式是从右往左的运算方向
尤其是当问号表达式嵌套使用时得注意这个问题,例如
代码:
int a=1,b=2,c=3,d=4;
printf("%d",a<b?a:c<d?c:d);
正确结果是:1
因为先执行的是c<d?c:d,会返回c,然后执行a<b?a:c
因此得到的结果就是1(可以在编译器上实验一下)
❿ C语言运算符中问号是什么意思
问号是条件运算符的意思,跟冒号组合使用。条件运算符优先级高于赋值、逗号运算符,低于其他运算符。
表达式为:表达式1?表达式2:表达式3。先求解表达式1,若其值为真(非0)则将表达式2的值作为整个表达式的取值,否则(表达式1的值为0)将表达式3的值作为整个表达式的取值。
(10)c语言问号扩展阅读
条件运算符具有右结合性
当一个表达式中出现多个条件运算符时,应该将位于最右边的问号与离它最近的冒号配对,并按这一原则正确区分各条件运算符的运算对象。如果在问号和冒号之间还有一个问号或者冒号,应该满足就近配对,使结构不发生紊乱。
例如:
w<x ? x+w : x<y ? x : y与 w<x ? x+w : ( x<y ? x : y) 等价。
w<x ? x+w : x<y ? x : y与 (w<x ? x+w : x<y) ? x : y 不等价。