作业小笔记

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了作业小笔记相关的知识,希望对你有一定的参考价值。

#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
#include<string.h>
#include<windows.h>
#include<stdlib.h>
#include<math.h>
#include<time.h>

//int count2(unsigned int a)//加一个unsigned变为无符号数,
//
// int count1 = 0;
// while (a)
//
// if (a%2 == 1);
//
// count1++;
//
// a = a/2;
//
// return count1;
//
int count2(int a)//加一个unsigned变为无符号数,

int count1 = 0;
while (a)

a = a & (a - 1);// 可以把2进制最右边的1消除///超级算法
count1++; //比如a=1011和a-1=1010 为1010

return count1;

int get_diff_bit(int a, int b)

int tmp = ab;//158=15是怎么回事,b传过去为0--%d%d,输了1个
count2(tmp);

void print(int *p, int sz)//打印一个数组

int i = 0;
for (i = 0; i < sz; i++)

printf("%d ", *(p + i));//注意不是(*p+i)

//逆置数组,
//while (l > r)
//int tmp = arr[l];
//arr[l] = arr[r];
//arr[r] = tmp;
//l++;
//r__;
//printf(%s)

////int i=0;
////for (i = 30; i > 0; i -= 2)//奇数位
//// 2进制:位数和增大方向相反
//// printf("%d", (m >> i) & 1);//向右移动i位,
//////00000000000000000000000001000001 从左边第一位开始移动
////int i=0;
////for (i = 31; i > 0; i -= 2)//偶数位
//// 2进制:位数和增大方向相反
//// printf("%d", (m >> i) & 1);//向右移动i位,
////

int main()

//int arr1[] = 1,3,5,7,9 ;
//int arr2[] = 2,4,6,8,10 ;
////int tmp[5] = 0 ;
//int tmp = 0;
//int i = 0;
//for (i = 0;i < 5; i++)
//
// tmp = arr1[i];
// arr1[i] = arr2[i];
// arr2[i] = tmp;
//

//int arr[] =  1,2,3,4,5 ;//一个字符4个字节
//short*p = (short*)arr;//short 一个字符是两个字节 首元素地址
//int i = 0;
//for (i = 0; i < 4; i++)
//
// *(p + i) = 0;//一次修改1/2个字节
//
//for (i = 0; i < 5; i++)
//
// printf("%d", arr[i]);
////输出00345

//int a = 0x11223344;//地址是倒着放进去的,拿也是倒着拿出来的,修改的时候注意
//char *pc = (char*)&a;//把a变成地址
//*pc = 0;
//printf("%x\\n", a);

//int i//如果i为全局变量,不初始化默认为0;在主函数外面是0吗?
//if(i>sizeof(i))//sizeof计算变量所占内存大小>=0;返回一个无符号数
//-1的二进制序列
// 10000000000000000000000000000001原码
//11111111111111111111111111111110反码
//11111111111111111111111111111111补码//当变成正数的时候,第一位不代表符号位了
//此时i > sizeof(i) i为2的16次方

//int a, b, c;
//a = 5;
//c = ++a;
//b = ++c, c++, ++a, a++;//b= ++c, =的优先级比,高
// b += a++ + c;//+的优先级比+=高;
// printf("a=%d b=%d c=%d\\n:", a, b, c);

//&--按位与 &&--逻辑与 ||--按位或

//int a = 63;
//int i = 0;
//int end = 0;
//for (i = 0; i <32; i++)
//
// if ((a >> i)&1 == 1)
//
// end++;
//
//
//printf("%d\\n", end);

//int a = 0;
//scanf("%d", &a);
//int count = count2(a);
//printf("%d\\n", count);

//int m = 0;
//int n = 0;
//scanf("%d%d", &m, &n);
//int count=get_diff_bit(m, n);
//printf("%d\\n", count);

//int a = 2;
//int b = 1;
//int c = a ^ b;
//printf("%d ", c);

//system("pause");//系统为控制台时,不需要写这句
//使程序终止
//-1的补码是32个1
//-1/2商为0
//正数的原反补码相同

//计算i&1 结果是原2进制为1,结果为1,原2进制为0,结果为0;


//int arr[] = 1,2,3,4,5,6,7,8,9 ;//打印一个数组
//int sz = sizeof(arr) / sizeof(arr[0]);
//print(arr, sz);



return 0;

以上是关于作业小笔记的主要内容,如果未能解决你的问题,请参考以下文章

作业小笔记

numpy笔记 linalg

16 数值的整数次方 (第3章 高质量的代码)

学习笔记之08试用div做网页(滨院)-小作业

Leetcode——数值的整数次方

数值的整数次方