总结没有顺序之分
想起一个算一个

逗号表达式 https://blog.csdn.net/qq_43539854/article/details/105757536(参考)

设 f是实型变量,下列表达式中不是逗号表达式的是_________
A. f= 3.2, 1.0 B. f>0, f<10 C. f=2.0, f>0 D. f=(3.2, 1.0)
逗号表达式 即 执行第二个结果
D选项中的不对
先看看人家蚊香一言咋说的 image

然后D选项虽然选取了 1.0 但是赋予了f 1.0 是赋值表达式
(== = === 区别很重要)
例如:

int i=0,k=0;
for(i=0,k=0;k=0;i++,k++){
k++;
}

这就是一个坑 判断条件k=0 是是是赋值 所以表达式为0 不会循环执行


对于一些for循环体内

for(int i=..;i...;i..){
i=....
}

如果循环体内再定义i 会出错


在数组中找数
中间折半法
image


int a;
printf("a = %d\n", a);

会出现一个垃圾数 不确定值


int b=0,x=1;执行语句 if(x++) b=x+1; 后,x,b 的值依次为______。
A. 2,3 B. 2,0 C. 3,0 D. 3,2

int b=0,x=1;
if(x++)
b=x+1;

x++即会在其他完成后执行 这里就是括号 所以在此结束
image
这里判断的时候 x还是1 随后变成2
所以b=2+1=3


设有语句 int a=3;,则执行了语句 a+=a-=a*=a; 后,变量 a 的值是________。
A. 3 B. 0 C. 9 D. -12
这个会错呢
还是运算符的优先级结合性没背会
去背
优先 所以先计算 a=a 9
a现在就是9了 那可是赋值号
随意后面都是自右向左
a-=a 0
所以最终为0


以下用户标识符中,合法的是__________ 。
A. int B. nit C. 123 D. a+b

  1. 字母数字下划线组成
  2. 数字不能为开头
  3. 不能使用关键字

C 语言中的逻辑值“真”是用_____表示的,逻辑值“假”是用_________表示的

真是非0


C语言中有符号数据类型(signed)和无符号数据类型(unsigned)的本质区别为_________
signed 最高位为符号位
unsigned 全为数值位


设 c='w',a=1,b=2,d=-5, 则表达式 'x'+1>c, 'y'!=c+2, -a-5*b<=d+1, b==a=2的值分别为

第四个 b==a=2 b被赋值为1 1=2 错误


还有就是12<a<15
如果想要表达这个
需要if(12<a && a<15)
假如a=7
12<7 为0
0<15 为真
会执行 因此需要改变 否则会出错


image
这就是将for里面的提取出来 的效果不同

posted on   不爱美女爱辣条  阅读(30)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?



点击右上角即可分享
微信分享提示