您的位置:

c语言为何选择b,选择 c语言

本文目录一览:

C语言,答案为什么选B?谢谢

变量的作用域问题。printf 中的 i 是 int i = 3 的时候声明的 i。

int i = 5 的 i 一直有效,int f1 中的 i ,操作的是 main 上面的 int i = 5 时声明的 i。

但在 main 的 {} 中,int i = 5 的 i 被 int i = 3 的 i 掩盖了。声明了 int i = 3 之后,main 里面操作的 i 是这个 i。

当碰到 main 里面的 {int i = 10; i++; } 时,在这对 {} 中又声明了一个 i,这时候在 {} 里面的 i++ 是操作这个 i。但这个 i 作用域只在 {} 中,离开右边的 } 其生命周期就结束了。

所以 i += 1操作的是 刚进 main 时声明的 int i = 3 的 i。printf 中的也是,所以答案是 B,显示 4

c语言这道题为什么选B麻烦详细说明一下?

外层循环循环2次,每次执行2次x++

内层循环执行3次,但是当j不能被3整除时不执行x++,即只有在j==0的时候才执行x++

所以x++共执行了,2*2+2*1=6次,应该选择C

c语言为什么选b

因为B正确呀,int a[N];是声明一个名为a的int型数组,元素个数是N,要求N是常数;这都符合啊。

A错——N是已经宏定义的符号常量,不能被再赋值。

C错——M是变量,声明数组时[]中不得是变量,得用常量。

D错——与A一样,不能为常量再赋值。

C语言问题 为什么选B,过程求解

\’是转义字符,就表示单引号字符表示。所以第一个和最后一个输出的字符都是‘。

%7s输出字符所占的空间,7s表示占7个位置, 不足的不空格,大于的则原样输出。所以=和hello之间有两个空格。

综上,最后输出的内容为

‘s1= hello’,答案为B。

请采纳,谢谢。

c语言我不明白为什么选b

在++b中,++称为前自加。

在b++中,++称为后自加。

其计算效果均为操作数自加一。

当单独一个语句的时候没有区别,如果用在表达式中:

b++是先取b的值做计算,再自加;

++b是先自加,再取b的值做计算。

比如

int b = 2, j;

如果

j = b++;

那么先取b的值赋值给j,于是j值为2,b值再自加,b=3。

如果

j = ++b;

那么b先自加,得到b=3,然后再取b值计算,j值为3.

C语言 第7题为什么选B

因为 s 是2维数组。char s[2][40]={"China","English"};

s[1] 是 字符串 "English" 的首地址, 这个地址 与字符 'E' 的地址 s[1][0] 相等。所以选 B.

A 显然是不对的,它的第一个下标超界了。C 多了 求地址运算符。

D 的 (s[1]+1) 是错的表达式,因 要求 左值,若是 (s[1][1]) 则语法对,可是地点错了。