若a/c=b/c,则a=b。正确吗

如题所述

不正确。
如果:int a=4,b=5,c=3;
那么,a/c=b/c=1;而a不等于b~
因为C语言里,整型的除法只是可以获得商的整数位。
温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2018-03-13
首先,得明确本题要求回答的是
"对c数组元素地址的正确引用"
是对直址的引用,不是对数元素本身!!!!!
所以选B答案.
A的话,可以或者说只能直接用 c[3]
B.pc本来指向c[0]位置.pc+2,即按类型指向+2个位址.结果应该是c[2].
下面是例程:
#include<stdio.h>
void main(){

char c[3];
char *pc=c;
c[0]=1;
c[2]=2;
c[3]=3;
printf("%d",*pc+2);

}
结果输出会是 c[2],即3
//附BCC++5.5编译信息
--------------------配置: bcc5.5 - CUI Debug, 编译器类型: Borland C++ Compiler--------------------

检查文件依赖性...
正在编译 C:\Users\fallx\Documents\C-Free\Temp\未命名1.cpp...
Borland C++ 5.6.4 for Win32 Copyright (c) 1993, 2002 Borland
正在连接...
Turbo Incremental Link 5.96 Copyright (c) 1997-2008 CodeGear

完成构建 未命名1: 0 个错误, 0 个警告
生成 C:\Users\fallx\Documents\C-Free\Temp\未命名1.exe

//
C选择吗,会因为c这个符号本身指向不明确而出现c++即加一个相应类型位址后所指更加不明确的情况出现.

这纯粹是个人理解.如果有错漏,请不吝赐教!谢谢本回答被网友采纳
第2个回答  2011-01-13
看你怎么定义咯,double a,b,c
if ((a/c) == (b/c)) a=b;一般来说这样的说法在某些区域来说是正确的,看在什么用途上而判断 我刚试了下,当a,b=0的时候这个表达式就成立了,所以啊,,,,,
第3个回答  2011-01-13
不能判断,或者说无意义……=两边都是取整数后的约数
第4个回答  2011-01-13
错误、