1520086334 发表于 2020-12-5 19:44:08

c语言基础

#include   <stdio.h>
main()
{
 int  x, y, z;
  x=y=1;
  z=x++,y++,++y;
  printf("%d,%d,%d\n",x,y,z);
}
程序运行后的输出结果是(    )
A.
2,3,3
B.
2,3,2
C.
2,3,1
D.
2,2,1



请注明理由谢谢家人们

昨非 发表于 2020-12-5 19:51:46

C,自己对照优先级
https://blog.csdn.net/changexhao/article/details/82556761?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522160716897619195283098526%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fall.%2522%257D&request_id=160716897619195283098526&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~all~first_rank_v2~rank_v29-3-82556761.pc_search_result_cache&utm_term=%E8%BF%90%E7%AE%97%E7%AC%A6%E4%BC%98%E5%85%88%E7%BA%A7&spm=1018.2118.3001.4449

风过无痕1989 发表于 2020-12-5 21:59:41

为了下面的程序能正常编译,160前面我用了一个变量 A,你题目原本是什么,请重新发出来,才好帮你解决问题
#include<stdio.h>               // include 后面不能有  &#
int main()                        // 不写 int 还是 void,系统会默认为 int
{
        int A = 160, x, y, z;         // int 后面不能有 &#,160 后面不能是分号,不然 x、y、z 的定义就会出现错误
        x = y, y = 1;               // 定义变量不能连着写,要分开;赋值语句不能用等号 ==,要用赋值号 =
                                                              // 语句结束后的分号要用英文的分号
        z = x++, y++, ++y;            // 赋值语句不能用等号 ==,要用赋值号 = ; 加号也要用英文的加号;
        printf("%d,%d,%d\n", x, y, z);// 分号要用英文的分号, 逗号要用英文的逗号
}
页: [1]
查看完整版本: c语言基础