自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(23)
  • 收藏
  • 关注

原创 【c语言】不能使用循环语句和判断语句,求1-100所有整数的和

// 不能使用循环语句和判断语句,求1-100所有整数的和#include int sum_100(int n, int *sum){ *sum += n; (n--) && (sum_100(n, sum)); return n;}int main(){ int n = 100; int sum = 0; sum_100(n, &sum); printf("%d

2015-06-30 20:42:37 1853 2

原创 【c语言】 给一组数,有两个数只出现了一次,其他所有数都是成对出现的。找出这两个数

// 给一组数,有两个数只出现了一次,其他所有数都是成对出现的。找出这两个数。#include void find_two_diff(int arr[], int len, int *num1, int *num2)//设置两个返回型参数{ int i = 0; int ret = 0; int pos = 1; *num1 = 0; *num2 = 0; for (i =

2015-06-30 16:01:31 657

原创 【c语言】给一组数,只有一个数只出现了一次,其他所有数都是成对出现的。找出这个数

// 给一组数,只有一个数只出现了一次,其他所有数都是成对出现的。找出这个数#include int find_one(int arr[], int len){ int i = 0; int ret = 0; for (; i < len; ++i) { ret ^= arr[i]; } return ret;}int main(){ int arr[] =

2015-06-30 16:00:48 1058

原创 【c语言】编写一个函数,这个函数可以将一个整数的指定位置1或置0

// 编写一个函数,这个函数可以将一个整数的指定位置1或置0#include int set_bit(int a, int pos, int flag){ int b = 1 << (pos - 1); if (flag == 0) { a &= ~b; } else { a |= b; } return a;}int main(){ printf("

2015-06-30 15:53:02 3652

原创 【c语言】求绝对值

// 求绝对值#include int fabs(int a){ if (a < 0) { a = ~a + 1; } return a;}int main(){ printf("绝对值是:%d\n", fabs(5)); printf("绝对值是:%d\n", fabs(0)); printf("绝对值是:%d\n", fabs(-1)); return

2015-06-30 15:51:17 6309

原创 【c语言】将正数变成对应的负数,将负数变成对应的正数

// 将正数变成对应的负数,将负数变成对应的正数#include int turn(int a){ if (a <= 0) { a = ~a + 1; } else { a = (a ^ 0xffffffff) + 1; } return a;}int main(){ printf("%d\n", turn(5)); printf("%d\n", tu

2015-06-30 15:49:45 23661

原创 【c语言】不用大与小与号,求两数最大值

// 不用大与小与号,求两数最大值#include int max(int a, int b){ int c = a - b; int d = 1 << 31; if ((c&d) == 0) { return a; } else { return b; }}int main(){ printf("%d是大数\n", max(0, 2)); prin

2015-06-30 15:48:50 1020

原创 【c语言】判断一个数是奇偶数

// 判断一个数是奇偶数#include void judge_sd(int a){ if ((a & 1) == 0) { printf("是偶数\n"); return; } else { printf("是奇数\n"); return; }}int main(){ judge_sd(0); judge_sd(1); judge_sd(4)

2015-06-29 21:33:19 9753

原创 【c语言】将一个数的二进制序列逆序,然后输出逆序之后的二进制序,所对应的数

// 将一个数的二进制序列逆序,然后输出逆序之后的二进制序,所对应的数#include // 从原数拿出最低位,放到mid中,mid左移,原数右移int reverse(int a){ int mid = 0; int bit; int n = 31; for (; n > 0; --n) { bit = a & 1; mid |= bit; mid <<=

2015-06-29 21:32:31 3612

原创 【c语言】写一个宏定义,实现的功能是将一个int型的数的奇偶位互换

// 写一个宏定义,实现的功能是将一个int型的数的奇偶位互换,例如6的二进制为0110,第一位与第二位互换,// 第三位与第四位互换,得到1001,输出应该为9#include // 取出奇数位与偶数位,奇数位左移1位,偶数位一位,相加或者相或#define EXCHANGE(num) (((0x55555555 & num) > 1))int main(){ print

2015-06-29 21:31:08 1008

原创 【c语言】判断一个数是不是2的n次方

// 判断一个数是不是2的n次方#include void judge_n(int a){ int b = a - 1; if ((a & b) == 0) { printf("是2的n次方\n"); return; } else { printf("不是2的n次方\n"); return; }}int main(){ judge_n(2);

2015-06-29 21:30:21 3049 1

原创 【c语言】求两个数中不同的位的个数

// 求两个数中不同的位的个数#include int dcount(int a,int b){ int count = 0; int num = a ^ b; while (num) { count++; num = num & (num - 1); } return count;}int main(){ printf("%d\n", dcount(3,

2015-06-29 21:29:30 876

原创 【c语言】统计一个数二进制中的1的个数

// 统计一个数二进制中的1的个数#include int count(int a){ int count = 0; while (a) { count++; a = a & (a - 1); } return count;}int main(){ printf("%d\n", count(10)); printf("%d\n", count(0));

2015-06-29 21:28:15 811

原创 【数据结构】直接插入排序_哨兵位

头文件:#include using namespace std;#define MAX 10typedef struct{ int r[MAX+1];}Sqlist;// 比较大小并插入void InsertSort(Sqlist &sl, int n){ int j; for (int i = 2; i < 7; ++i) { if (sl.r[i

2015-06-23 18:25:02 1912

原创 【数据结构】直接插入排序

头文件:#include using namespace std;#define MAX 10typedef struct{ int r[MAX];}Sqlist;// 交换两个数void swap(int &a, int &b){ int temp = a; a = b; b = temp; return;}// 比较大小void Inser

2015-06-23 16:50:29 662

原创 【数据结构】栈的应用——中缀表达式求值(c++)

头文件:#pragma once#include #include #include using namespace std;templateclass SeqStack{public: SeqStack(size_t sz = INIT_SZ); ~SeqStack();public: bool empty()const; bool full()cons

2015-06-09 11:02:18 5654

原创 【数据结构】二叉树(c++)

头文件:#include using namespace std;templateclass Bintree;//结点类templateclass BintreeNode{ friend class Bintree;public: BintreeNode() :data(Type()), leftchild(NULL), rightchild(NULL) {}

2015-06-09 08:57:51 603

原创 【c++】智能指针

// vc下的智能指针,重点在于拥有权的转移#include using namespace std;templateclass Autoptr{public: Autoptr(int *p = NULL) :ptr(p), owns(ptr != NULL) {} Autoptr(const Autoptr &t) :ptr(t.release()), owns(t.own

2015-06-05 20:50:18 597

原创 【c++】引用计数

#include #include using namespace std;class String;// 封装一个计数器的类来维护,可以隐藏起来,即用户不必关心是如何实现的class String_Rep{ friend class String;public: String_Rep(const char *str = " ") :count(0) { m_data

2015-06-05 19:24:15 622

原创 【c++】浅拷贝成功__count解决

#include #include using namespace std;class String{public: String(const char *str = " ") { m_data = new char[strlen(str) + 1]; strcpy(m_data, str); count++; } String(const String &s)

2015-06-05 18:01:53 498

原创 【c++】异常安全深赋值

// 深拷贝,异常安全的深赋值#include #include using namespace std;class String{public: String(const char *str = " ") { m_data = new char[strlen(str) + 1]; strcpy(m_data, str); } String(const String

2015-06-05 17:00:36 698

原创 【数据结构】栈的应用--行编辑程序(c++)

头文件:#pragma once#include #include using namespace std;templateclass SeqStack{public: SeqStack(size_t sz = INIT_SZ); ~SeqStack();public: bool empty()const; bool full()const; vo

2015-06-01 14:35:56 1840

原创 【数据结构】栈的应用--数制转换(c++)

头文件:#pragma once#include #include using namespace std;templateclass SeqStack{public: SeqStack(size_t sz = INIT_SZ); ~SeqStack();public: bool empty()const; bool full()const; void s

2015-06-01 13:26:27 3587

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除