/** 同时交换(很巧妙的算法)*/
public static void main(String[] args) {
int a = 5;
int b = 4;
b = a + 0 * (a = b);
System.out.println(a + ":" + b);
}
/** 亦或 --类似2进制-- (最快的算法)*/
public static void main(String[] args) {
int a = 5;
int b = 4;
a = a ^ b;
b = b ^ a;
a = a ^ b;
System.out.println(a + ":" + b);
}
/** 数值相加减交换法*/
public static void main(String[] args) {
int a = 5;
int b = 4;
a = a + b;
b = a - b;
a = a - b;
System.out.println(a + ":" + b);
}
/** 数值相乘除交换法(不推荐)除数为0时会抛出异常*/
public static void main(String[] args) {
int a = 5;
int b = 4;
if (a != 0)// 注意:此处a为除数
{
a = a * b;
b = a / b;
a = a / b;
} else {
a = b;
b = 0;
}
System.out.println(a + ":" + b);
}
//有更妙的算法一起交流
分享到:
相关推荐
c#中实现两个int变量的数值互换,在借助第三个变量做临时载体的情况下,非常简单。 int a = 10; int b = 5; int c ; c = a; a = b; b = c; 如果不借助第三方变量,有几种实现的方法: 1....
`定义了两个指向`int`类型的指针变量`p1`和`p2`。 #### 指针的应用示例 1. **通过指针变量访问整型变量**:下面的示例展示了如何定义和使用指针变量来访问整型变量。 ```c #include int main() { int a = ...
标识符是大小写敏感的,比如`Name`和`name`是两个不同的标识符。为提高代码可读性,应避免使用系统关键字作为标识符,并遵循有意义的命名规则。 5. **关键字**:关键字是C语言预定义的保留字,如`int`、`float`、`...
计算两个给定的算术表达式的值。 **解答:** 1. 对于第一个表达式,根据题目给定的值,我们可以得到:`x + a % 3 * (int)(x + y) % 2 / 4 = 2.5`。 2. 对于第二个表达式,根据题目给定的值,我们可以得到:`(float)...
实现两个变量的数值互换需要使用中间变量,例如 `t = x; x = y; y = t;`。 七、三位小数的保留 保留三位小数,第四位四舍五入的程序需要使用中间变量,例如 `x = (int) x` 把小数部分去掉。 八、选择结构 选择...
互换两个整数a和b的值通常有两种方法: - 第一种是使用临时变量temp,将a的值存储到temp中,然后将b的值赋给a,最后将temp的值赋给b。 ```java int a = 3; int b = 4; int temp = a; a = b; b = temp; ``` ...
- 第3题中,涉及了不同数据类型的混合运算。在C语言中,`unsigned int`与`int`相加,结果可能会导致符号位的变化,这里的结果取决于具体的计算过程和平台。 4. **数组与字符串**: - 第4题展示了字符数组与字符串...
,因为这条语句将浮点型变量x的值保留到小数点后两位,并将第三位四舍五入。 3. 整型运算符 在C语言中,整型运算符是用于进行整数运算的运算符。例如,x = 10 % 3; 将数字10除以3,并将余数赋给变量x。题目3所示的...
一个中文汉字通常占两个字节,但在Java中char类型占据16位,所以可以存储。 8. **计算2乘以8**:最有效率的方式是直接使用`2 << 3`,这是位左移运算,相当于乘以2的3次方,即8。 9. **设计百亿计算器**:设计一个...
- **(2)有两个瓶子X和Y,分别盛放可口可乐和非常可乐,小明想将它们互换(即X瓶原来盛可口可乐,现在改盛非常可乐;Y瓶正好相反)。** - **N-S图:** - 开始 - 设置一个临时瓶子temp - 将X中的内容倒入temp - 将Y...
10. **题目**: 假定`int`类型变量占用两个字节,其有定义:`int x[10]={0,2,4};`,则数组`x`在内存中所占字节数是____。 - **答案**: 20 - **解析**: 数组`x`共有10个元素,每个元素占用2个字节,因此总字节数为20...
在C语言编程中,交换两个变量的值是一个常见的操作,比如我们要交换两个整数a和b的值。在"ab交换数值1"这个主题中,我们主要关注的是如何使用C语言来实现这一功能。让我们深入探讨一下这个过程,以及可能涉及的一些...
o 4.12 我需要根据条件把一个复杂的表达式赋值给两个变量中的一个。可以用下边这样的代码吗? ((condition) ? a : b) = complicated_expression; * 5. 指针 o 5.1 我想声明一个指针并为它分配一些空间, 但却...
- **多维数组**:多维数组是指两个或两个以上维度的数组。 - **本质分析**:多维数组在内存中依然是一维连续存储的。 - **形像描述**:多维数组可以形象地理解为表格或立方体等形式。 #### 指针 - **内存编址与...