一.两个变量的交换方式
1.定义一个中间变量
inta=1,b=2;
intc=b;
b=a;
a=c;
2.数据叠加再相减
inta=1;
intb=2;
a=a+b;
b=a-b;
a=a-b;
3.通过异或^
inta=1;
intb=2;
a=a^b;
b=a^b;
a=a^b;
二.数据定制转换
System.err.println(Integer.parseInt("1f",16));//结果为21,..
分类:
其他好文 时间:
2016-04-08 01:12:42
阅读次数:
188
插入排序的算法分析: 1 首先假设第一个元素是排好序的,从第二个元素循环整个数组 2 取出当前的值,设置中间变量的作用 3 记录当前的元素的索引 4 循环将当前的值与前面的值进行比较,如果当前的值比前面元素的值小,则将前面的值向后移(复制),在将索引向前移动,直到移动到数组的开头索引的位置 5 将当 ...
分类:
编程语言 时间:
2016-03-30 01:33:57
阅读次数:
128
一.程序设计思想 1.主函数中设置变量,和程序开始时输出的内容。定义一个BuildOperation函数来实现功能; 2.BuildOperation函数中,首先定义四个数组,分别储存计算式的第一个数字、符号转化中间变量,符号和第二个数字; 3.然后随机产生变量,在此过程中,需要先判断是否有乘除法,
分类:
其他好文 时间:
2016-03-19 19:44:16
阅读次数:
163
今天在做题的时候,突然出现一道题,就是不借助中间变量,将两个整形变量的值互换,开始有点懵,这怎么换?后来还是用两个变量不停做加减变换,差不多有十几分钟,才终于凑出来了一种方法,一时兴起,我又从网上找了一下相关的资料,说是竟然有四种方法,我就看了一下,顺便学习一下。 在我们初学阶段,一般是定义一个新的
分类:
其他好文 时间:
2016-03-18 23:30:07
阅读次数:
306
//1.输入三个整数,xyz,最终以从小到大的方式输出。利用if嵌套。 //2.输入三个整数,xyz,最终以从小到大的方式输出。利用中间变量。 //3.输入三个整数,xyz,最终以从小到大的方式输出。利用条件运算符。 //4.“现在几点了?”键盘键入小时数,判断是上午还是下午。 打印出来现在是上午几
分类:
其他好文 时间:
2016-03-18 17:37:22
阅读次数:
195
1.给定两个整形变量的值,将两个值的内容进行交换。2.不允许创建临时变量,交换两个数的内容(附加题)3.求10个整数中最大值。4.写一个函数返回参数二进制中1的个数比如:15000011114个1程序原型:intcount_one_bits(unsignedintvalue){//返回1的位数}#include<stdio.h>#..
分类:
其他好文 时间:
2016-03-16 01:36:21
阅读次数:
240
冒泡排序:借用中间变量,按从小到大或是从大到小排序 //输入人数,输入每个人的成绩 //需要最高分、最低分 //去掉两个最高分,去掉两个最低分,求平均分。 Console.Write("请输入班级人数:"); int a = int.Parse(Console.ReadLine()); doub
分类:
编程语言 时间:
2016-03-14 14:05:29
阅读次数:
161
汉诺塔思路传送门:http://www.tuicool.com/articles/7FnMVf 下面是我的AC代码和一些特别的注意事项,比如我推导过程中犯得错误和写代码过程中犯的错误。 hd 1207 汉诺塔Ⅱ 注意中间变量由于pow()的 存在会比longlong还要大 更别说int了 所以要
分类:
其他好文 时间:
2016-03-14 09:28:09
阅读次数:
126
使用c来写一个函数来实现交换两个整数。 第一种 一般的方法,引用中间变量,方便快捷。 1 void swap(int *a, int *b) 2 { 3 int tmp = *a; 4 *a = *b; 5 *b = tmp; 6 } 第二种 void swap(int *a, int *b) {
分类:
编程语言 时间:
2016-03-04 13:07:46
阅读次数:
310
public static void swap1(Num num){ num.a = num.a + num.b; num.b = num.a - num.b; num.a = num.a - num.b;} 使用异或运算符:我们知道,任何数与0异或后仍然为它本身,两个相同的数异或后为0。 stat
分类:
其他好文 时间:
2016-02-16 10:01:07
阅读次数:
142