-16
~a意思是反 *** 作
负数计算法则就是取反后+1
所以(~a)=-(15+1)=-16
结果是C
for循环实际就是1~5求和,再加上初值1,所以结果就是-16了。
扩展资料:
for循环小括号里第一个“;”号前为一个为不参与循环的单次表达式,其可作为某一变量的初始化赋值语句, 用来给循环控制变量赋初值; 也可用来计算其它与for循环无关但先于循环部分处理的一个表达式。
“;”号之间的条件表达式是一个关系表达式,其为循环的正式开端,当条件表达式成立时执行中间循环体。
参考资料来源:百度百科-for循环
int main()
{
int j;
int a[]={1,3,5,7,9,11,13,15};
int p=a+5; //p指向数组元素11
for(j=3;j;j--) { //j从3开始到1,循环三次
switch(j) {
case 1: //如果j==1,动作和j==2相同
case 2: printf("%d\n", p++); break; //先打印p指向的数组元素,再把p指向后面一个元素
case 3: printf("%d\n", (--p)); break; //先把p指向前面一个元素,再打印p指向的元素
}
}
return 0;
}
j==3时,--p,p指向9,打印9
j==2时,p指向9,打印9,然后p++,p再指向11
j==1时,p指向11,打印11,然后p++,p再指向13
所以输出结果为:
9
9
11
程序输出的结果为a=11,b=13。
程序的执行过程:首先定义了a的值为12,b的值为12,然后执行我们的输出语句,我们输出的不是a和b的值,而是表达式“--a”和表达式“++b”的值,因为前缀的“++”和“--”都是先进行加一或者减一的 *** 作,再输出。
所以说“--a”输出的结果为11,“++b”输出的结果为13。
扩展资料:
C语言的主要特点:
C语言是一种结构化语言,它有着清晰的层次,可按照模块的方式对程序进行编写,十分有利于程序的调试。
C语言的处理和表现能力都非常的强大,依靠非常全面的运算符和多样的数据类型,可以轻易完成各种数据结构的构建,通过指针类型更可对内存直接寻址以及对硬件进行直接 *** 作。
1、简洁的语言,C语言包含的各种控制语句仅有9种,关键字也只有32 个,程序的编写要求不严格且以小写字母为主,对许多不必要的部分进行了精简。
2、具有结构化的控制语句,C语言是一种结构化的语言,提供的控制语句具有结构化特征,如for语句、if⋯else语句和switch语句等。可以用于实现函数的逻辑控制,方便面向过程的程序设计。
3、丰富的数据类型,C语言包含的数据类型广泛,不仅包含有传统的字符型、整型、浮点型、数组类型等数据类型,还具有其他编程语言所不具备的数据类型,其中以指针类型数据使用最为灵活,可以通过编程对各种数据结构进行计算。
4、丰富的运算符,C语言包含34个运算符,它将赋值、括号等均是作运算符来 *** 作,使C程序的表达式类型和运算符类型均非常丰富。
5、代码具有较好的可移植性,C语言是面向过程的编程语言,用户只需要关注所被解决问题的本身,而不需要花费过多的精力去了解相关硬件,且针对不同的硬件环境。
在用C语言实现相同功能时的代码基本一致,不需或仅需进行少量改动便可完成移植,这就意味着,对于一台计算机编写的C程序可以在另一台计算机上轻松地运行,从而极大的减少了程序移植的工作强度。
“++”前缀自增、“--”前缀自减结合性为自左向右。
参考资料来源:百度百科-C语言
以上就是关于以下程序段的输出结果是( )。 int a=15; System.out.println(~a); A:11 B:-21 C:-16 D:-15全部的内容,包括:以下程序段的输出结果是( )。 int a=15; System.out.println(~a); A:11 B:-21 C:-16 D:-15、以下程序的输出结果是、以下程序的输出结果是 main( ) { int a=12,b=12; printf("%d %d\n",--a,++b); }等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)