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

手把手做网站页面东莞企业网站多少钱

手把手做网站页面,东莞企业网站多少钱,开发网站年度工作总结及明年工作计划,简述网络营销与传统营销的区别十进制转任意进制 简单回忆一下十进制我们是怎么转换成二进制的#xff08;短除法#xff09;#xff1a; 我们会将十进制数不断的进行除2操作#xff0c;并且记录下每一次的余数#xff08;这个余数就是我们最终求的二进制数的组成部分#xff09;。 以下以12D举例短除法 我们会将十进制数不断的进行除2操作并且记录下每一次的余数这个余数就是我们最终求的二进制数的组成部分。 以下以12D举例将其转换成二进制数 除2     被除数               -------------   余数 2  /     1 2                   ---------------    0    12%2 商下一个被除数          6 (12/2)        --------------     0   6%2 3  (6/2)         --------------     1     (3%2) 1 (3/2)          --------------     1     (1%2) 0 (1/2,结束) 计算出的余数由下往上组合就是我们要求的二进制数即 那么我们就要把这个思路转换成相对应的计算机代码了。 我们仅仅需要一个循环就可以完成这件事   //n是我们待转化的十进制数 int ans[100];//用于存放我们的计算结果 int len0;//用于记录我们转换的二进制有多少位 while(n!0){ans[len]n%2;//取余运算将结果保存同时位数len加一n/2;//记录下一个被除数 } //输出我们的二进制时别忘了要逆序输出短除法 for(int ilen-1;i0;i--){printf(%d,ans[i]); } 现在我们把这个思路拓展到x进制的转换。 首先在所有x小于10的x进制转换中都可以沿用上面的这个思路只需要更改%2和/2即可 //n是我们待转化的十进制数,x代表我们要转化的是几进制 int ans[100];//用于存放我们的计算结果 int len0;//用于记录我们转换的x进制有多少位 while(n!0){ans[len]n%x;//取余运算将结果保存同时位数len加一n/x;//记录下一个被除数 } //输出我们的x进制时别忘了要逆序输出短除法 for(int ilen-1;i0;i--){printf(%d,ans[i]); } 但对于x10的进制转换这样做显然不太可行拿十六进制举例大于9的数使用字母进行表示。 为了能够将十进制以上和以下进行统一我们修改以下我们的代码。 注意以下代码可以适用于所有十进制转任意进制的情况 #include stdio.h #include stdlib.h #define MAX 30 int main(){int n;char ans[MAX];//更改结果类型采用char保存结果int len;int x;//代表转成几进制scanf(%d,x);while(scanf(%d,n)!EOF){len0;while(n!0){if(n%x10)ans[len]n%x0;//小于10直接存数else ans[len]n%x-10A;//大于10存放字母n/x;}for(int ilen-1;i0;i--){//结果逆序输出printf(%c,ans[i]);}printf(\n);}return 0; } 任意进制转十进制 同样先来看二进制我们采用的是乘法。 平时我们想把二进制转十进制很简单直接按位计算相加就行 那么转换成代码我们又该怎么表示呢 我们从最高位开始计算 以下代码即为二进制的转换 #include stdio.h #include stdlib.h #include string.h #define MAX 30 int main(){char s[30];//代表二进制数int ans0;//存储十进制答案scanf(%s,s);int lenstrlen(s);for(int i0;ilen;i){ans*2;anss[i]-0;}printf(%d\n,ans);return 0; }拓展到任意进制与上述方法类似就不再赘述了直接上代码 #include stdio.h #include stdlib.h #include string.h #define MAX 30 int main(){char s[30];//代表二进制数int ans0;//存储十进制答案int x;//用于记录转换为x进制scanf(%d,x);int len;while(scanf(%s,s)!EOF){lenstrlen(s);ans0;for(int i0;ilen;i){ans*x;if(s[i]0s[i]9)anss[i]-0;else anss[i]-A10;}printf(%d\n,ans);}return 0; }大数进制转换 思路来源大数的进制转换_大数进制转换-CSDN博客 指路这位大佬。 题目描述将一个长度最多为30位数字的十进制非负整数转换为二进制数输出 之前我们在进行十进制转二进制时不断地在重复模2、除2的操作。但这对于大数来说并不好实现因为之前我们使用一个整型存储数据而现在我们使用字符串来存储大数 大数除法 根据以上那位大佬的思路我明白了每一次除法运算的内在流程。 除法运算从被除数344的最高位开始每一轮除法都取被除数的一位出来进行运算。 应该进行几轮除法由被除数344的位数决定比如这里344一共有个十百三位也就需要进行3轮除法。 在每一轮除法中我们都会得到一个商和余数回归到余数最本质的定义剩余的、没有除完的数称为余数因此在下一轮除法操作时要将上一轮的余数带上。 所以现在基本上已经理清楚了我们所要求的除法结果其实就是每一轮的商合在一起的结果。 #include stdio.h #include string.h #include stdlib.hint main() {char x[1000];//我们的十进制待转换数char* tmp;//用于存储被除数int len strlen(x);//用于保存被除数的长度//以下定义看名字应该也知道是什么写的是拼音int yushu, shang, beichushu;int count;//count用于记录下一轮被除数应得的长度char ans[1000];//用于记录二进制结果int ans_len;//代表二进制结果的位数while(scanf(%s, x)!EOF){tmpx;lenstrlen(x);ans_len0;//以下循环是计算一个完整的二进制数的过程while (len ! 0)//当被除数不等于0的时候就需要进行循环{count 0;yushu 0;shang 0;//这个循环才是一轮除法的循环过程for (int i 0; i len; i) {beichushu yushu * 10 tmp[i] - 0;yushu beichushu % 2;shang beichushu / 2;x[count] shang 0;//记录下每一次运算的商}ans[ans_len] yushu 0;//以下操作是将商前面多余的零删除掉只留下有效位的操作int j 0;while (x[j] 0)j;len0;while (j count) {tmp[len] x[j];}}for (int i ans_len - 1; i 0; i--) {printf(%c, ans[i]);}printf(\n);}return 0;}
http://www.dnsts.com.cn/news/174169.html

相关文章:

  • 全球网站排行网上帮别人做网站
  • 企业可以做哪些网站有哪些购物网站建设思维导构图
  • 建设网站图片做网站和做平台的区别
  • 手表网站海马300米潜水表佛山网站常见的问题
  • 浙江省人才网官方网站建设厅招聘西柏坡旅游网站建设规划书
  • 网站方案书什么东西徐州有哪些网络公司
  • 国内返利网站怎么做上海网站制作智能 乐云践新
  • 做网站定位久久建筑资料网
  • 做竞拍网站合法吗网站发布的方法有几种
  • 国外建设网站用的是什么软件濮阳开公司怎么找客户
  • 宜昌做网站哪家最便宜wordpress当前菜单
  • 怎么自己做一个网站微信支付wordpress
  • 和创客贴类似的网站做网站用什么团建
  • 那里可以找建网站的人wordpress分享型主题模板下载
  • 贵城乡建设官方网站全国建设市场公共服务网站
  • 百合视频做爰视频网站有个网站经常换域名
  • 高效网站建设公司wordpress阅读次数修改
  • 树莓派做的网站网站的月度流量统计报告怎么做
  • 青岛市做网站优化做网站的公司为什么人少了
  • 口碑好网站建设价格低wordpress开
  • 建设银行网站设计的优点什么网站做聚乙烯醇好的
  • 深圳专业做网站排名公司古田网站建设
  • 专业网站制作案例中国能源建设招标网站
  • 网站设计前期沟通单致远oa协同管理系统
  • 深互动平台网站音乐wordpress
  • 中国空间站天宫课堂抖音网站开发
  • 深圳网站建设top028哪个网站可以做免费请帖
  • 网站快速排名北京优化健康宝
  • 门户网站建设的报价中小企业信息服务平台
  • 额尔古纳网站建设价格wordpress会员微信支付