- 博客(35)
- 资源 (4)
- 收藏
- 关注
原创 【C++】引用计数器简单示例
//引用计数器 // 封装一个计数器的类来维护,可以隐藏起来,即用户不必关心是如何实现的 #include using namespace std;class String_Rep{ friend class String;public: String_Rep(const char *str = " ") :count(0) { m_data = new char[str
2015-07-11 09:10:47 2722
原创 【C++】实现一个简洁版的class String
//实现一个简洁版的class String#include #include using namespace std;class String{public: String() { _str = new char[1]; _str[0] = '\0'; } String(const char *str) { _str = new char[strlen(str)
2015-07-10 10:28:21 1016
原创 【C语言 C++】简单关键字Register,Const,Static,Volatile,typedef,Define的理解
Register 用register声明的变量称着寄存器变量,在可能的情况下会直接存放在机器的寄存器 中;但对32位编译器不起作用,当global optimizations(全局优化)开的时候,它会做出 选择是否放在自己的寄存器中;不过其它与register关键字有关的其它符号都对32位编译 器有效。Const 被const修饰的东西都受到强制保护,可以预防意外的变
2015-07-09 14:42:54 1213
原创 【C语言】求数值的正数次方
//数值的正数次方//实现函数double power(double base, int exponent),求base的exponent次方,不得使用库函数,不需要考虑大数问题。//注意:考虑非法输入的返回。#include #include bool Inpot_illegal = false;bool equal(double num1, double num2) //判断两
2015-07-09 14:34:24 1508
原创 【C语言】打印1到最大的n位数
//打印1到最大的n位数//输入数字n,按顺序打印出从1到最大的n位十进制数。比如:输入3,则打印出1、2一直到最大的3位数999#include #include #include int num[10];int add(int n){ int isoverflow = 0; int carry = 0; int i; for (i = 9; i >= 10 - n; i-
2015-07-09 14:32:49 1434
原创 【C语言】调整数组使奇数全部都位于偶数前面(修改)
//调整数组使奇数全部都位于偶数前面。//输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分#include void Adjust(int *arr, int len){ int *start = arr; int *end = arr + len - 1; while (start < end) { i
2015-07-08 09:35:51 758
原创 【C语言】数字在排序数组中出现的次数(修改)
//数字在排序数组中出现的次数(修改)//统计一个数字在排序数组中出现的次数。例如:排序数组{1,2,3,3,3,3,4,5}和数字3,由于3出现了4次,因此输出4.#include int One_Num_Times(int *arr, int len, int num){ int i = 0; int times = 0; for (i = 0; i =*arr;i++,arr+
2015-07-07 15:49:32 1550
原创 【C语言】统计数字在排序数组中出现的次数
//数字在排序数组中出现的次数。//统计一个数字在排序数组中出现的次数。例如:排序数组{1,2,3,3,3,3,4,5}和数字3,由于3出现了4次,因此输出4.#include int One_Num_Times(int *arr, int len, int num){ int i = 0; int times = 0; for (i = 0; i < len;i++,arr++)
2015-07-07 15:16:06 6893
原创 【C语言】统计数组中出现次数超过一半的数字
//统计数组中出现次数超过一半的数字#include int Find(int *arr, int len){ int num = 0; //当前数字 int times = 0; //当前数字出现的次数 int i = 0; for (i = 0; i<len; i++) { if (times == 0)
2015-07-07 15:15:03 3231 1
原创 【C语言】调整数组使奇数全部都位于偶数前面
//调整数组使奇数全部都位于偶数前面。//输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分#include void Adjust(int arr[],int len){ int i, j; for (i = 0; i < len; i++) { if ((arr[i]%2)==0) for (j =
2015-07-07 15:14:20 1957
原创 【C语言】求旋转数组的最小数字,输入一个递增排序的数组的一个旋转,输出其最小元素
//求旋转数组的最小数字,输入一个递增排序的数组的一个旋转,输出其最小元素#include #include int find_min(int arr[],int len){ int i = 0; for (i = 1; i < len; i++) { if (arr[i] < arr[0]) return arr[i]; } return arr[0];}int
2015-07-07 14:12:26 998
原创 【C语言】输入一组整数,求出这组数字子序列和中最大值
//输入一组整数,求出这组数字子序列和中最大值#include int MAxSum(int arr[],int len){ int maxsum = 0; int i; int j; for (i = 0; i < len; i++) { int thissum = 0; for (j = i; j < len; j++) { thissum += arr[j]
2015-07-06 16:59:22 8637
原创 【C语言】在字符串中找出第一个只出现一次的字符。如输入“abaccdeff”,则输出’b’
//在字符串中找出第一个只出现一次的字符。如输入“abaccdeff”,则输出’b’#include #include char OneTime(char * str){ int data[256]; char *p = str; if (*p == '\0') return '\0'; memset(data, 0, sizeof(data)); while (*p )
2015-07-06 16:45:24 1777
原创 【C语言】二维数组中的查找,杨氏矩阵
//二维数组中的查找,杨氏矩阵//在一个二维数组中,每行都按照从左到右的递增的顺序排序。每列都按照从上到下递增的顺序排序。//请完成一个函数,输入这样的一个数组和一个数,判断数组中是否包含这个数。#include #define Col 4int Yang(int arr[][Col], int val) { int i=0; int j = Col - 1; i
2015-07-06 15:23:39 1796
原创 【C语言】编写函数实现库函数atof
//编写函数实现库函数atof#include #include #include #include double calculate(const char *src, int flag){ double num = 0.0; int n = 0; int count = 0; while (*src) { if ((*src >= '0') && (*src <= '9
2015-07-05 10:47:14 2339
原创 【C语言】编写函数实现库函数atoi,把字符串转换成整形(考虑数字过大)
//编写函数实现库函数atoi,把字符串转换成整形#include #include #include #include long long calculate(const char *src, int flag){ long long num = 0; while (*src ) { if ((*src >= '0') && (*src <= '9'))//判断输⼊入是否为
2015-07-05 10:45:50 1291
原创 【C语言】编写函数实现库函数atoi,把字符串转换成整形
//编写函数实现库函数atoi,把字符串转换成整形#include #include int my_atoi(const char *src){ int flag=1; int sum=0; while (*src) { if (*src == ' ') src++; else if (*src == '+') { src++; flag = 1;
2015-07-04 09:33:17 2933
原创 【C语言】编写函数实现字符串旋转
//编写函数实现字符串旋转#include #include #include void reverse(char *left, char *right) { char temp; assert(left); assert(right); while (right > left) { temp = *left; *left = *right; *right =
2015-07-04 09:29:56 1432
原创 [C语言】模拟实现库函数strstr,查找子字符串
//模拟实现库函数strstr,查找子字符串#include #include char * my_strstr( char *dst, const char * src){ assert(dst); assert(src); int i, j, k; for (i = 0; dst[i] != '\0'; i++) { for (j = i, k = 0; src[k] !
2015-07-04 09:28:41 1741
原创 【C语言】判断一个字符串是否是一个字符串的旋转字符串
//判断一个字符串是否是一个字符串的旋转字符串//利用库函数实现#include #include #include int IsRotate(char *str1, const char *str2){ assert(str1); assert(str2); strncat(str1, str1,strlen(str1)); if (NULL == strstr(str1,
2015-07-04 09:26:10 947
原创 【C语言】字符串替换空格:实现一个函数,把字符串里的空格替换成“%20”
//字符串替换空格:实现一个函数,把字符串里的空格替换成“%20”#include #include void replace(char *src){ assert(src); int OldLen = 0; //原字符串长度 int NewLen = 0; //新字符串长度 int BlackNum = 0;
2015-07-04 09:24:07 3846 1
原创 【C语言】写一个函数,实现字符串内单词逆序
//写一个函数,实现字符串内单词逆序//例如student a am i,逆序后i am a student。#include #include #include void reverse_string(char *left, char *right) //连续的字符串逆序{ char temp; while (right > left) { temp = *left
2015-07-03 11:37:22 4279
原创 【C语言】模拟实现strcmp函数
//模拟实现strcmp函数//str1>str2,返回1//str1=str2,返回0//str1<str2,返回-1#include #include int my_strcmp(const char *str1, const char *str2){ assert(str1); assert(str2); while (*(str1)==*(str2)) { if
2015-07-03 11:35:58 3871
原创 【C语言】模拟实现memmove函数(考虑内存重叠)
//模拟实现memmove函数(考虑内存重叠)#include #include #include void * memmove(void * dst, const void * src, int count){ void * ret = dst; assert(dst); assert(src); if (dst = ((char *)src + count)) //正常情
2015-07-03 11:34:25 713
原创 【C语言】模拟实现memcpy库函数
//模拟实现memcpy库函数#include #include void * my_memcpy(void * dst, const void * src, int count){ void *ret = dst; while (count--) { *(char *)dst = *(char *)src; dst=(char *)dst+1; src=(char *)
2015-07-03 11:33:29 786
原创 【 C语言】将一个数字按字符形式逐个输出,例如1234,输出为1 2 3 4
//将一个数字按字符形式逐个输出,例如1234,输出为1 2 3 4#include void print_number(int a){ if (a >= 10) print_number(a / 10); printf("%d ", a % 10);}int main(){ int a = 1234; print_number(a); printf("\n"); re
2015-07-03 11:30:40 15088 1
原创 【C语言】模拟实现strchr函数.即在一个字符串中查找一个字符第一次出现的位置并返回
//模拟实现strchr函数.即在一个字符串中查找一个字符第一次出现的位置并返回#include //#include #include char* my_strchr(char *dst, char src){ assert(dst); while (*dst != '\0') { if (*dst == src) return dst; dst++; } re
2015-07-02 09:22:36 7007
原创 【C语言】模拟实现库函数strcat函数
//模拟实现库函数strcat函数#include #include #include char * my_strcat(char *dst, const char *src){ char *start = dst; int len_dst = strlen(dst); dst+=len_dst; while (*dst++ = *src++) { ; } return
2015-07-02 09:21:28 1460
原创 【C语言】模拟实现库函数srtcpy函数
//模拟实现库函数srtcpy函数#include #include char * my_strcpy(char *dst, const char *src){ char *start = dst; assert(dst); assert(src); while (*dst++ = *src++) { ; } return start;}int main(){ c
2015-07-02 09:20:12 1220
原创 【C语言】实现一个函数求字符串长度(不能创建第三方变量)
//实现一个函数求字符串长度(不能创建第三方变量)#include #include int my_strlen(const char *p){ assert(p); if (*p == '\0') return 0; else return 1 + my_strlen(++p);}int main(){ char *p = "abcdefg"; printf("%
2015-07-02 09:19:10 774
原创 【C语言】编写一个函数,求字符串长度
//编写一个函数,求字符串长度#include #include int my_strlen(const char *p){ int len=0; assert(p); while (*(p++)) { len++; } return len;}int main(){ char *p = "abcdef"; printf("%d\n", my_strlen(p))
2015-07-01 16:39:29 10753
原创 【C语言】用宏实现一个整形奇偶位交换
//用宏实现一个整形奇偶位交换//例如6为0000..0110,交换完为0000..1001,即为9#include #define EXCHANGE(num) ((num&(0x55555555))>1) //取出奇数位左移,取出偶数位右移,最后相加int main(){ printf("%d\n", EXCHANGE(6)); //9 printf("%d\n",
2015-07-01 09:45:51 1104
原创 【C语言】统计一个数二进制中1的个数
//统计一个数二进制中1的个数#include int count_one(int num){ int count = 0; while (num) { count++; num = num&(num - 1); //每次消去最后面的一个1,直至没有 } return count;}int main(){ printf("%d\n", count_one(12)
2015-07-01 09:45:04 2134
原创 【C语言】求一个数的绝对值
//求一个数的绝对值#include int absolute_value(int num){ if (num < 0) { num = ~(num - 1); } return num;}int main(){ printf("%d\n", absolute_value(5)); printf("%d\n", absolute_value(-5)); printf(
2015-07-01 09:43:21 11353 4
原创 【C语言】不使用大小于号,求出两数最大值
//不使用大小于号,求出两数最大值#include #include double Max(double a, double b){ double q = sqrt((a-b)*(a-b)); return ((a + b) + q) / 2;}int main(){ printf("(5,8)大的数为:%.0f\n", Max(5, 8)); printf("(0,4)大的
2015-07-01 09:42:14 886
13.3.zip xcode免升级支持最新系统
2019-12-16
13.0 (17A577).zip
2019-09-21
12.4 (16G73).zip
2019-07-29
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人