用宏交换奇偶位
摘要://第一次尝试:#include<stdio.h> //在32位系统下: //要拿出奇数位则需要&01010101010101010101010101010101 也就是十六进制的0x55555555 //要拿出偶数位则需要&10101010101010101010101010101010 也就是十
阅读全文
找单身数字
摘要://第一次尝试:#include<stdio.h> #include<stdlib.h> //方法1 void FindSingleDog(int* arr,int size) { for (int i = 0; i < size; i++) { int flag = 0; for (int j =
阅读全文
字符串分段逆序
摘要://第一次尝试:#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #include<string.h> //自己写的类似于strtok函数,遇到空格符,就将空格赋成'\0',然后返回'\0'下一个的地址值 //如
阅读全文
指针进阶的笔试题
摘要://例题解析:#include <stdio.h> #include <stdlib.h> #include <string.h> //结构体例题 // sizeof(Test) => 20 struct Test { int Num; char* pcName; short sDate; char
阅读全文
qsort使用练习
摘要://第一次尝试:#include<stdio.h> #include<stdlib.h> #include<string.h> #define MAX 10 #define MAX_C 4 //void cmp_int(const void* _a,const void* _b) { // int*
阅读全文
字符串旋转对比结果
摘要://第一次尝试: #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #include<string.h> int change(char* str,char* str1,char* str2,int* arr,c
阅读全文
字符串左旋
摘要://第一次尝试:#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> void LeftString(char* str,int size,int num) { int i = 0; for (i = 0; i <
阅读全文
猜名次
摘要://第一次尝试:#include<stdio.h> #include<stdlib.h> //A选手说:B第二,我第三; 我第三 //B选手说:我第二,E第四; E第四 //C选手说:我第一,D第二; D第二 //D选手说:C最后,我第三; C最后 //E选手说:我第四,A第一; 我第四 //比赛结
阅读全文
猜凶手
摘要://第一次尝试:#include<stdio.h> #include<stdlib.h> //A说:不是我 //B说:是C //C说:是D //D说:C在胡说 void isMurderer() { //每个人都默认为好人 int arr[4] = { 0 }; int i = 0; for (i
阅读全文
杨辉三角
摘要://第一次尝试:#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #define N 10 //正常排列的杨辉三角 int arr[N][2 * N - 1] = { 0 }; void YangHuiTrian
阅读全文
喝汽水问题
摘要://第一次尝试:#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> //本题有很多变形,例如三个瓶子换一瓶汽水,四个瓶子换一瓶汽水等等 #define Exchange 2 int DrinkingProblem(
阅读全文
计算求和
摘要://第一次尝试:#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> #define MAX 5 void init(int* p,int num) { for (int i = 0; i < MAX; i++,p+
阅读全文
字符串逆序,非递归
摘要://第一次尝试:#include<stdio.h> #include<stdlib.h> void reverse(char* str,int size) { int i = 0; char ch = 0; while ((str+i)<(str+size-i)) { ch = *(str+i);
阅读全文
使用指针打印数组内容
摘要://第一次尝试:#include<stdio.h> #include<stdlib.h> void print(int* p) { for (int i = 0; i < 10; i++,p++) { printf("%d ", *p); } printf("\n"); } int main() {
阅读全文
交换两个变量,不创建临时变量
摘要://第一次尝试:#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> void NoTempChange(int* a, int* b) { *a = *a ^ *b; *b = *a ^ *b; *a = *a ^
阅读全文
统计二进制中1的个数
摘要://第一次尝试:#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> int HowManyOne(int num) { int ret = 0; for (int i = 31; i >= 0; i--) { if
阅读全文
打印整数二进制的奇数位和偶数位
摘要://第一次尝试:#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> //void PrintOE(int num,int arro[16],int arre[16]) { // int num1 = 1; // i
阅读全文
求两个数二进制中不同位的个数
摘要://第一次尝试:#define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdlib.h> int DifferentDigits(int m, int n) { int ret = 0; int flag = 0; int num =
阅读全文
数组交换
摘要://第一次尝试:#include<stdio.h> #include<stdlib.h> #define MAX_SIZE 4 void exchangeArray(int arr1[], int arr2[]) { for (int i = 0; i < MAX_SIZE; i++) { int
阅读全文
数组操作
摘要://第一次尝试:#include<stdio.h> #include<stdlib.h> #define MAX_SIZE 10 void init(int arr[]) { for (int i = 0; i < MAX_SIZE; i++) { arr[i] = 0; } } void prin
阅读全文