C语言练习2

在这里插入图片描述
解析:
语句i=M1+M2;在预编译时将进行宏替换为1=53+52;,因此i的值将是25.故正确答案是C。
在这里插入图片描述
解析:
指针的步长与指针的类型相关,由于p为int型指针,故p+i表示跳过i个int长度;p指向二维数组的首元素地址,故:for(i=0;i<9;i++) p[i]=i;
表示依次给二维数组9个元素赋值为0,1,2,3,4,5,6,7,8
打印的是第二行的元素,故应该为:3,4,5
在这里插入图片描述
解析:
将int型的0,1,2,3赋值给char型数据,对应二进制的0,1,2,3(数据都是以二进制存储的,十进制只是变现形式),进行乘法运算得到0,1,4,9 ‘a’+0,1,4,9 得到ACSII对应的abej
在这里插入图片描述
解析:
(a + 1):直接用数组名a代表数组首元素的地址,+1再解引用是数组第二个元素的内容
(&a + 1):对整个数组取地址代表数组的地址,对数组的地址+1,可以将整个数组看成一个数据类型,+1则地址往后便宜该数据类型的大小,则ptr指向5的后一位,由于ptr为int类型的指针,-1往前偏移4个字节,指向5,再解引用结果为5
在这里插入图片描述
解析:
n++先给出值在计算
在这里插入图片描述
解析:
该题中算术运算符
优先级高于赋值运算符+=和-=,所以先算2*2=4,然后赋值运算符是自右向左结合的,先运算n-=4即n=n-4即n=2-4=-2,然后运算n+=-2即n=n+(-2)=-2-2=-4.所以选-4。
在这里插入图片描述
解析:
算法具有零个或多个输入,至少有一个或多个输出。
在这里插入图片描述
解析:
在这里插入图片描述
解析:
A选项,不知道编译器会怎么选择自增和赋值的顺序,所以这是由编译器决定的,属于未定义行为。
B选项,”hello“这个字符串属于一个字符串常量了,指针p指向了这个字符串常量,通过这个指针来直接修改常量第二个字符,这也属于未定义行为。
C选项,只是通过指针找到第二个字符并将它赋值给一个字符变量,并没有改变这个字符串常量,所以不属于未定义行为。
D选项,在printf语句中,i++和i–谁先执行由编译器决定,这是未定义行为。

在这里插入图片描述
解析:
浅拷贝:只复制指针内容,不复制指针所指对象,结果为两个指针指向同一块内存;
深拷贝:重新为指针分配内存,并将原来指针所指对象的内容拷贝过来,最后结果为两个指针指向两块不同的内存;
在这里插入图片描述
解析:
不属于非营利性组织行为
在这里插入图片描述
解析:
甲药效>乙药效 乙药效=己药效 ⇒甲药效>己药效
在这里插入图片描述
解析:
在这里插入图片描述
解析:
定性思维是指根据事物的性质和属性来认识事物、确定和判断事物的思维方法。A、D三项都是根据直接的数据得出的结论,是根据事实得出的结论。B项只是陈述事实,没有任何判断。C项只根据袜子的在大中城市的价格就断定其质量优良、价格过硬,之所以有这样的判断,是因为对于何谓“质量优良、品牌过硬”本就有着清晰的界定,“在许多大中城市一双袜子卖到100元的高价”正好符合这一界定,所以可断定其质量优良、品牌过硬,是典型的定性思维。如果同样的袜子,而价格很便宜的话,按照这种思维,得出的结论就会相反。故答案为C。
在这里插入图片描述
解析:
在这里插入图片描述
解析:
5*(1+1)=10 5*(3+9)=60 3*(4+4)=?
在这里插入图片描述
解析:
总共有300元,可以拆分成200+100。
只有满两百才能打折,一百元不满两百不打折。
总共能买200/0.8+100=350元

在这里插入图片描述
解析:
设2000年税费为1,则2001为0.97,2002为0.970.96,2003为0.970.96*0.95,为0.88464. 答案为1-0.88464,选A.
在这里插入图片描述
解析:
31
奇数项 5=12+4,21=42+5,()=5^2+6=31
偶数项 7=23-1,25=33-2

在这里插入图片描述
解析:
15+63+89+47-2*24-46=120

猜你喜欢

转载自blog.csdn.net/qq_44292366/article/details/112287056