当前位置: 首页 > wzjs >正文

钓鱼网站建设信息手机网站模板下载

钓鱼网站建设,信息手机网站模板下载,2021年简短新闻20字,江门公司做网站tips 1. 在电脑里面,任何一切字符,当一看到的时候,脑子里面就要把它转化成ACSII值。如while(0),可以实现死循环。 2. 统计整形数组的长度不能用strlen(),别一天到晚用到底,strlen统计的是字符数组的长度 …

tips

1. 在电脑里面,任何一切字符,当一看到的时候,脑子里面就要把它转化成ACSII值。如while('0'),可以实现死循环。

2. 统计整形数组的长度不能用strlen(),别一天到晚用到底,strlen统计的是字符数组的长度

3. unsigned 是无符号数,int是有符号数。二者占空间大小相同, 区别是最高位,int表示符号位,而unsigned表示数据位。所以,int可以表示负数,而unsigned不能. 当unsigned可以表示的正数范围比int大一倍.

4.  注意操作符的控制求值顺序,比如说||与&&的短路现象

5. .(点操作符)与*这两个操作符的优先级还是点号来的高。所以有时候在访问结构体成员的时候,*p.a错误,(*p).a可以,但是*(pa).a也是错误的

6. 

一个简单的字符串内大小写字母转化器

代码:

#include <stdio.h>
#include <string.h>
int main()
{char arr[20] = { 0 };int num = 0;do{printf("请输入一个字符串:");gets(arr);int sz = strlen(arr);int i = 0;//printf("请选择:1.所有大写字母化为小写。2.所有小写字母化为大写。\n");printf("请输入数字(按0退出):");scanf("%d", &num);getchar();if (num == 1){for (i = 0; i < sz; i++){if ((*(arr + i) >= 'A') && (*(arr + i) <= 'Z')){*(arr + i) += ('a' - 'A');}}printf("%s\n", arr);}else if (num == 2){for (i = 0; i < sz; i++){if ((*(arr + i) >= 'a') && (*(arr + i) <= 'z')){*(arr + i) += ('A' - 'a');}}printf("%s\n", arr);}} while (num);printf("退出成功\n");return 0;
}

演示效果:


 

经验总结:

1. 在字符串内部所谓的\0与\n其实编译器都把它看成两个字符。
2. 对于字符串的操作,指针与\0一直都是灵魂所在。
3. 之前也讲过,char虽然是字符类型,但是其本质上也是一个整形。因为在计算机内存当中,根本就存储不了肉眼能看见的字符,而是根据ASCII码表把它转化成对应的十进制整数,因此有一些操作的话就大胆的去弄。事实上,你看见一个字符,在你眼睛里面它就是一个数字。
4. 在ASCII表里面,所有的大写字母与小写字母的值都相差一样,并且所有的大写字母与小写字母都是连续的。 

5. scanf读取的时候是不能够丢掉\n的,因此如果有时候不清理输入缓冲区的话,会出现一些bug。

数字在有序数组中出现的次数

题目链接:https://www.nowcoder.com/practice/70610bf967994b22bb1c26f9ae901fa2?tpId=13&tqId=23274&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking

题目:

代码1(二分法1)

/*** * @param data int整型一维数组 * @param dataLen int data数组长度* @param k int整型 * @return int整型*/
int GetNumberOfK(int* data, int dataLen, int k ) 
{int left=0;int right=dataLen-1;while(left<=right){int mid=(left+right)/2;if (*(data+mid)>k){right=mid-1;}else if (*(data+mid)<k){left=mid+1;}else{int num1=1;int num2=1;while((*(data+mid+num1)==k)&&(mid+num1<dataLen)){num1++;}while((*(data+mid-num2)==k)&&(mid-num2>=0)){num2++;}return num1+num2-1;}}return 0;
}

经验总结:

1. 对于一个有序数组(并不需要严格升序或降序),用二分查找是一个十分常用的方法。那么既然说起二分查找,套路肯定万变不离其宗,设定一个左端点与右端点,然后再取中间值并且进行一系列的比较。
2. 上面是第一种方法,当中间值恰好为要查找的数时,这时候就以此为原点向左右两边扩展。

代码2(二分法2)

/*** * @param data int整型一维数组 * @param dataLen int data数组长度* @param k int整型 * @return int整型*/
int bisearch(int* data, int dataLen, double num)
{int left=0;int right=dataLen-1;while(left<=right){int mid=(left+right)/2;if (*(data+mid)>num){right=mid-1;}else{left=mid+1;}}return left;
}
int GetNumberOfK(int* data, int dataLen, int k ) 
{return bisearch(data,dataLen,k+0.5)-bisearch(data,dataLen,k-0.5);
}

经验总结:

1. 这种二分查找的操作确实让我第一次见(实属眼界有限),对此,我总结了一些关于二分查找的个人心得。

不得不回顾一下这题

旋转数组的最小数字

题目链接:https://www.nowcoder.com/practice/9f3231a991af4f55b95579b44b7a01ba?tpId=13&tqId=23269&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking

题目:

 

代码:

/*** * @param rotateArray int整型一维数组 * @param rotateArrayLen int rotateArray数组长度* @return int整型*/
int minNumberInRotateArray(int* rotateArray, int rotateArrayLen ) 
{int left=0;int right=rotateArrayLen-1;while(left<=right){int mid=(left+right)/2;if (*(rotateArray+mid)>*(rotateArray+right)){left=mid+1;}else if (*(rotateArray+mid)<*(rotateArray+right)){right=mid;}else{right--;}}return *(rotateArray+left);
}

 经验总结:

1. 二分查找目前个人心得:

整数转换

题目链接:https://leetcode.cn/problems/convert-integer-lcci/ 

题目:

代码:

int convertInteger(int A, int B)
{unsigned int n=A^B;int count=0;while(n){n=n&(n-1);count++;}return count;
}

经验总结:

1. 这道题说起整数的二进制位之前的转换。说白了,其实就是去找这两个整数的二进制表示形式中到底有几位不同。
2. 对于两个二进制表示形式,按位异或是个显而易见的选择。
3. 当^之后,接下来就是去思考这个结果(二进制序列)到底有多少个1。
(顺便提一下,用int去接受结果可能会出现bug,要用unsigned int去接收,这样的话原先的符号位不再是了,变成了实实在在的数据位)
4. 接下来问题就回归成了求一个二进制序列的1的个数。
这个时候用神奇的表达式n&(n-1)执行一次物理消灭一个1并且计着数就OK了。

 

 

 


文章转载自:

http://4gwDnN23.gbjxj.cn
http://S8FPCybO.gbjxj.cn
http://FRTvLWBC.gbjxj.cn
http://YXwch2iG.gbjxj.cn
http://0E8fuIk5.gbjxj.cn
http://GTAfdXCM.gbjxj.cn
http://VSmqH35Q.gbjxj.cn
http://EuA5dfHc.gbjxj.cn
http://N9VmWx9N.gbjxj.cn
http://Biiu23az.gbjxj.cn
http://abQ9gjuR.gbjxj.cn
http://h4g4YpKU.gbjxj.cn
http://40LaQNUb.gbjxj.cn
http://iJyN14cv.gbjxj.cn
http://rgz7TJOT.gbjxj.cn
http://duo9y2JA.gbjxj.cn
http://H2Xz1EWZ.gbjxj.cn
http://8ihX3JSz.gbjxj.cn
http://v19xrIAZ.gbjxj.cn
http://T7VOv5V7.gbjxj.cn
http://7XB5VTez.gbjxj.cn
http://khkDiTe0.gbjxj.cn
http://zDW1VSqA.gbjxj.cn
http://7ac71Vco.gbjxj.cn
http://NCzClspS.gbjxj.cn
http://KmMQf7Fe.gbjxj.cn
http://XGa41z9O.gbjxj.cn
http://QjJdJ2EP.gbjxj.cn
http://pepfa98V.gbjxj.cn
http://q83TNb7f.gbjxj.cn
http://www.dtcms.com/wzjs/742052.html

相关文章:

  • 网站建设方案报价表汉滨网站建设
  • 大型网站开发管发建设网站意义
  • 建瓯市建设局网站怎么做html网站
  • 上海市住房和城乡建设厅网站查询wordpress博客可以下载官方的模板
  • 周口网站建设专家网站建设 蔬菜配送
  • 做采购 通常在什么网站看定制营销的优缺点
  • 网站 风格wordpress 活动 报名 插件
  • 如何优化公司网站wordpress 面向对象
  • 百度网盘官网登陆入口怀化seo网站
  • 网站企业备案和个人备案的区别吗wordpress自动缩略图
  • 成都网站建设公司浅谈wordpress如何开发手机版
  • 网站建设费分多少期摊销白云手机网站开发
  • 栏目手机版 企业网站建筑门户网站
  • 佛山优化网站推广苏州网站建设代理
  • 广州站八个字广州有什么好玩的东西
  • 公司旅游视频网站模板网络营销渠道类型有哪些
  • 苏州的建筑公司网站网站建设沈阳
  • 外链数是网站反向链接码空间域名主机网站模板
  • 不用源码做网站注册公司流程和费用时间
  • 校园网站建设指导思想网页游戏排行力荐新壹玩
  • 网站建设需求列表wordpress teamtalk
  • 网站建设交流qq网站工作状态建设
  • 做网站做生意智慧团建初始密码
  • 做网站怎么备案做网站要用什么软件
  • 网站设计的用途wordpress菜单不能打开
  • 做网站设计学那个专业好东莞网站系统哪里好
  • 四举措加强网站建设手机页面网站模板怎么卖
  • 2008 做网站给素材网站做素材方法
  • 网站建设文字设计烟台网站建设方案策划
  • 南宁自助建站模板下载好用的免费建站网站