1.如何将一个10进制数,转化为2~16进制之间的数。且当数字>=10时,输出相对应的字母A~F

2.制作一个猜拳的小游戏

一、10进制转化为任意进制

1.首先知道进制的转化规则------可参考博主前几篇博客

2.只能转化2~16进制这个去别的数

3.只给他三次输入的机会,大于直接退出程序

代码如下:

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
#include<math.h>
#include<Windows.h>void swap(int m, int n) {                  //将十进制整数m 转化为n进制的数   m的范围时int型数据的范围  你的范围是2~16int num[33] = {0};int i = 0;char c[] = { 'A','B','C','D','E','F' };            //  >=10时依次对应 字母A~Fwhile (m > 0)                                 //得到n进制的每个位上的数{num[i] = m % n;                         /*if (num[i] >= 10) {                       //如果n进制位上的数字大于10,则输出相对应的字母printf("num[%d]:%c ", i , c[num[i] - 10]);}else                                      //如果n进制位上的数小于10,则输出其本身printf("num[%d]:%d ", i, num[i]);*/          ++i;m /= n;}/*printf("\n");*/printf("其%d进制为: ",n);for (int j = i - 1; j >= 0; j--) {                    //一次性输出  m转化为n进制 后的结果if (num[j] >= 10) {printf("%c",  c[num[j] - 10]);}elseprintf("%d", num[j]);}printf("\n");
}
int main() {int m;                  //输入的数int n;                    //要转化为几进制while (1){printf("请输入一个十进制的数:");scanf("%d", &m);/*if (m > 2147483647) {printf("你输入的数字越界,请检查后重新输入");Sleep(3000);exit(0);}*/int count = 0;do{                               //输入n的值,直到n的范围不满足条件为止printf("请输入要转化2-16进制之间的任意整数:");scanf("%d", &n);count++;if (count >= 3) {          //输入次数限制,超过三次自动退出程序printf("你已经输入错误3次了,将在三秒后关闭,请明日再试\n");Sleep(3000);exit(0);}} while (n > 16 || n < 2);swap(m, n);printf("转化成功\n\n");}return 0;
}

二、猜拳小游戏

1.设置时间种子,生成一个随机数--------对应系统的石头、剪刀、布

2.用户输入 石头、剪刀、布

3.比较用户与系统的拳,并判断分出胜负

代码如下:

#include<stdio.h>
#include<stdlib.h>        //为了设置时间函数
#include<time.h>      //为了设置时间种子
#define Rock 0      //石头
#define Sci 1       //剪刀
#define Pap 2       //布int main() {srand((unsigned)time(0));printf_s("\t\t\t\t\t*----------石头:0----------*\n");printf_s("\t\t\t\t\t**---------剪刀:1---------**\n");printf_s("\t\t\t\t\t***----------布:2---------***\n");int cur = -1;while (1){int sys = rand() % 3;/*printf_s("sys:%d\n", sys);*/printf_s("请输入你的拳(只能输入相对应的数字):");scanf_s("%d", &cur);if (cur < 0 || cur>2) {printf_s("你输入的数字有问题,请重新输入\n");break;}if ((cur == 0 && sys == 1) ||(cur == 1 && sys == 2) ||(cur == 2 && sys == 0)) {printf_s("你赢了\n");}else if ((cur == 0 && sys == 2) ||(cur == 1 && sys == 0) ||(cur == 2 && sys == 1)) {printf_s("你输了\n");}elseprintf_s("平局\n");/*printf_s("cur: %d   sys: %d \n",cur,sys);*/printf_s("cur=%s   ", cur == 0 ? "石头" : (cur == 1) ? "剪刀" : "布");printf_s("sys=%s\n", sys == 0 ? "石头" : (sys == 1) ? "剪刀" : "布");}return 0;}

总结:10进制数转化为任意进制的数,首先要熟悉进制是如何转化的,以及转化的步骤,了解这些,写一个类似于这种的小程序并不难。

猜拳游戏:重点在于生成系统的拳,并和自己输入的拳数比较

将一个10进制数转化为任意进制数 猜拳小游戏相关推荐

  1. 十进制数转化为任意进制数n,采用变量N、数组A[]进行存储两种算法实例

    进制转化的核心代码为:(a 为输入的十进制数,n为需要转换的进制数,temp为变量进行存值) //先假设将a全部囤在个位数上,依次将a处理进行升位处理 temp = a %n; //利用求余公式,求出 ...

  2. 10进制小数转化为任意进制小数

    将任意十进制正小数分别转换成2,3,4,5,6,7,8,9进制正小数,小数点后保留8位,并输出.例如:若十进制小数为0.795,则输出: 十进制正小数 0.795000 转换成 2 进制数为: 0.1 ...

  3. 对于十进制转化为任意进制数的简单算法分析

    对于十进制转化为任意进制数的简单算法分析 基本思路: 对于十进制转任意进制,通常都是通过取余逆序排列法获得结果,举个简单例子10进制数1024 转2进制: 1024/2=512 余->0 512 ...

  4. python实现十进制转化为任意进制。

    python实现十进制转化为任意进制(十六进制以内). 先看运行结果示例: 可以看出,只要是十六进制以内,无论是346789等不存在的进制,也能够进行转换. 上代码: import re list = ...

  5. 【iVX 初级工程师培训教程 10篇文拿证】03 事件及猜数字小游戏

    目录 [iVX 初级工程师培训教程 10篇文拿证]01 了解 iVX 完成新年贺卡 [iVX 初级工程师培训教程 10篇文拿证]02 数值绑定及自适应网站制作 [iVX 初级工程师培训教程 10篇文拿 ...

  6. php 10进制位数保持,php 任意进制的数转换成10进制功能实例

    /** * 任意进制的数转换成十进制 * @param * @arrange (512.笔记) jb51.cc * 显示转换数字所涉及的步骤 * 从任何基数(如八进制或十六进制)到基数10 * 请参阅 ...

  7. 10进制转2进制三种方法 +任意进制的相互转化(利用字符)

    #include<stdio.h>int transfer(int x); //拆分二进制111为三个1:111=100+10+1 void MyBinary(int number); / ...

  8. 10进制转12进制,思考转任意进制

    import java.util.ArrayList; import java.util.List; import java.util.Scanner; /* 本题case: input : 23 o ...

  9. 计算机进制的转换(任意进制)详解

    进制的转换总是觉得很乱,不知道怎么去系统的去记住,今天我就用最简单的方法,将计算机进制的转换讲解明白. 一.任意进制转十进制 任意进制转十进制,我们采用的是按权展开法 任意进制转十进制,只需要修改底数 ...

最新文章

  1. ImageNet识别率一次提高1%:谷歌AI新突破引Jeff Dean点赞
  2. CORDIC算法——圆周系统之旋转模式
  3. springmvc 音频流输出_音频管理模块AudioDeviceModule解读
  4. 三、数据预处理——处理分类型数据:编码与哑变量
  5. 我的世界java1如何安装mod_《我的世界》【教程】如何安装MOD【PC】
  6. 苹果自研5G调制解调器将在2023年量产 采用台积电4nm工艺
  7. 填表法解“银行家算法”问题
  8. 也玩ASP.NET MVC 与 WebFroms 整合
  9. 剖析车联网的完美形态,机器人化还是智能交通?
  10. FastStone Capture 9.3 汉化绿色便携版 - 极品屏幕截图工具
  11. 某一个网站打不开,其它网站都能正常打开
  12. IT新人的辛酸反省与总结
  13. 张栋_机器学习的照片 - 微相册
  14. 【20保研】热忱欢迎全国2020届优秀本科毕业生免试攻读重庆大学研究生
  15. Robyn MMM2.0 - Facebook Marketing Science(R)市场营销-广告投放
  16. OVP电路应用(一)_12V电源_DIO1280
  17. 组织项目管理(PMP知识整理)
  18. 2. 输出2~100之间的素数
  19. 三万文字透视前瞻:区块链及隐私计算在传统企业中的技术认知与进阶思考
  20. 一起学时序分析之延迟与时钟偏斜和抖动

热门文章

  1. 【示波器、频谱仪、信号源的使用】
  2. 雷达泥水位计的安装方法
  3. 同方威视安全护航2018年俄罗斯世界杯
  4. 爱立信诠释网络社会:物联网的奇思妙想如何转变为现实
  5. c语言编写闹钟主程序流程图,由89C2051设计的电子钟
  6. 博弈论:完美信息的拓展性博弈-极小极大算法(Minimax)
  7. iOS - 多线程分析之 DispatchQueue Ⅰ
  8. 图像超分辨率 之 DRN 论文解读与感想
  9. seata TCC模式
  10. 现代人工智能的载体——计算机