为什么80%的码农都做不了架构师?>>>   

如上,输入两个数字,最后会输出这两个数字的和

代码如下:

#include <iostream>
#include<stdio.h>
using namespace std;
#define space -2
#define error -1int a, b; //加数与被加数
int c;
char tmp[5][3];//装一个数字模型的数组
char Nums[10][5][3];    //建立模型
char InputNums[5][100];char OutputNums[5][100];
int out_p = 0;void write(int i);
int getNum(char tmp[5][3]);
void InitNums();int main()
{InitNums();//输入数字int i=0;int j=0;
//        //初始化OutputNums
//    for(i=0;i<5;i++)
//    {
//        for(j=0; j<100;j++)
//        {
//            OutputNums[i][j] = ' ';
//        }
//    }/*输入符号*/for(i=0; i<5; i++){gets(InputNums[j++]);fflush(stdin);}/*获得加数*/int flag = 0;bool x = true;i=0;int m,n;//获得tmp使用int tmps;//临时变量while(x){if(InputNums[0][i] == '+' || InputNums[0][i+1] == '-' || InputNums[0][i+2] == '+'){/*存入一个tmp*/for(m=0;m<5;m++){for(n=0; n<3;n++){tmp[m][n] = InputNums[m][n+i];}}tmps = getNum(tmp);if(a == 0)a = tmps;else{a = a*10+tmps;}i+=4;}else{i+=4;flag++;if(flag == 2)break;b =a;a =0;}}//    printf("%d %d %d\n", a+b, a , b);/*求出结果*/int rs = a+b;int rs_s = 0;
//    rs_s = rs%10;
//    rs = rs/10;while(rs != 0){rs_s = rs%10;rs = rs/10;write(rs_s);}/*把结果用符号表示出来*/int fuck;for(i=0; i<5; i++){flag=1;for(j=out_p-1; j>=0; j-=4){for(fuck=j-4; fuck<j; fuck++){if(flag != 1)printf("%c", OutputNums[i][fuck]);elseflag++;}}printf("\n");}
}
int getNum(char tmp[5][3])
{int i=0;int j,k;int flag;  //标志for(i=0; i<10;i++){flag=1;if(tmp[0][2] == ' ')return space;for(j=0;j<5;j++){for(k=0; k<3; k++){if(tmp[j][k] != Nums[i][j][k]){flag = 0;break;}}if(flag == 0)break;}if(flag==1)return i;}return error;
}
void InitNums()
{//初始化0Nums[0][0][0] = '+';Nums[0][0][1] = '-';Nums[0][0][2] = '+';Nums[0][1][0] = '|';Nums[0][1][1] = ' ';Nums[0][1][2] = '|';Nums[0][2][0] = '+';Nums[0][2][1] = ' ';Nums[0][2][2] = '+';Nums[0][3][0] = '|';Nums[0][3][1] = ' ';Nums[0][3][2] = '|';Nums[0][4][0] = '+';Nums[0][4][1] = '-';Nums[0][4][2] = '+';//初始化1Nums[1][0][0] = ' ';Nums[1][0][1] = ' ';Nums[1][0][2] = '+';Nums[1][1][0] = ' ';Nums[1][1][1] = ' ';Nums[1][1][2] = '|';Nums[1][2][0] = ' ';Nums[1][2][1] = ' ';Nums[1][2][2] = '+';Nums[1][3][0] = ' ';Nums[1][3][1] = ' ';Nums[1][3][2] = '|';Nums[1][4][0] = ' ';Nums[1][4][1] = ' ';Nums[1][4][2] = '+';//初始化2Nums[2][0][0] = '+';Nums[2][0][1] = '-';Nums[2][0][2] = '+';Nums[2][1][0] = ' ';Nums[2][1][1] = ' ';Nums[2][1][2] = '|';Nums[2][2][0] = '+';Nums[2][2][1] = '-';Nums[2][2][2] = '+';Nums[2][3][0] = '|';Nums[2][3][1] = ' ';Nums[2][3][2] = ' ';Nums[2][4][0] = '+';Nums[2][4][1] = '-';Nums[2][4][2] = '+';//初始化3Nums[3][0][0] = '+';Nums[3][0][1] = '-';Nums[3][0][2] = '+';Nums[3][1][0] = ' ';Nums[3][1][1] = ' ';Nums[3][1][2] = '|';Nums[3][2][0] = '+';Nums[3][2][1] = '-';Nums[3][2][2] = '+';Nums[3][3][0] = ' ';Nums[3][3][1] = ' ';Nums[3][3][2] = '|';Nums[3][4][0] = '+';Nums[3][4][1] = '-';Nums[3][4][2] = '+';//初始化4Nums[4][0][0] = '+';Nums[4][0][1] = ' ';Nums[4][0][2] = '+';Nums[4][1][0] = '|';Nums[4][1][1] = ' ';Nums[4][1][2] = '|';Nums[4][2][0] = '+';Nums[4][2][1] = '-';Nums[4][2][2] = '+';Nums[4][3][0] = ' ';Nums[4][3][1] = ' ';Nums[4][3][2] = '|';Nums[4][4][0] = ' ';Nums[4][4][1] = ' ';Nums[4][4][2] = '+';//初始化5Nums[5][0][0] = '+';Nums[5][0][1] = '-';Nums[5][0][2] = '+';Nums[5][1][0] = '|';Nums[5][1][1] = ' ';Nums[5][1][2] = ' ';Nums[5][2][0] = '+';Nums[5][2][1] = '-';Nums[5][2][2] = '+';Nums[5][3][0] = ' ';Nums[5][3][1] = ' ';Nums[5][3][2] = '|';Nums[5][4][0] = '+';Nums[5][4][1] = '-';Nums[5][4][2] = '+';//初始化6Nums[6][0][0] = '+';Nums[6][0][1] = '-';Nums[6][0][2] = '+';Nums[6][1][0] = '|';Nums[6][1][1] = ' ';Nums[6][1][2] = ' ';Nums[6][2][0] = '+';Nums[6][2][1] = '-';Nums[6][2][2] = '+';Nums[6][3][0] = '|';Nums[6][3][1] = ' ';Nums[6][3][2] = '|';Nums[6][4][0] = '+';Nums[6][4][1] = '-';Nums[6][4][2] = '+';//初始化7Nums[7][0][0] = '+';Nums[7][0][1] = '-';Nums[7][0][2] = '+';Nums[7][1][0] = ' ';Nums[7][1][1] = ' ';Nums[7][1][2] = '|';Nums[7][2][0] = ' ';Nums[7][2][1] = ' ';Nums[7][2][2] = '+';Nums[7][3][0] = ' ';Nums[7][3][1] = ' ';Nums[7][3][2] = '|';Nums[7][4][0] = ' ';Nums[7][4][1] = ' ';Nums[7][4][2] = '+';//初始化8Nums[8][0][0] = '+';Nums[8][0][1] = '-';Nums[8][0][2] = '+';Nums[8][1][0] = '|';Nums[8][1][1] = ' ';Nums[8][1][2] = '|';Nums[8][2][0] = '+';Nums[8][2][1] = '-';Nums[8][2][2] = '+';Nums[8][3][0] = '|';Nums[8][3][1] = ' ';Nums[8][3][2] = '|';Nums[8][4][0] = '+';Nums[8][4][1] = '-';Nums[8][4][2] = '+';//初始化9Nums[9][0][0] = '+';Nums[9][0][1] = '-';Nums[9][0][2] = '+';Nums[9][1][0] = '|';Nums[9][1][1] = ' ';Nums[9][1][2] = '|';Nums[9][2][0] = '+';Nums[9][2][1] = '-';Nums[9][2][2] = '+';Nums[9][3][0] = ' ';Nums[9][3][1] = ' ';Nums[9][3][2] = '|';Nums[9][4][0] = '+';Nums[9][4][1] = '-';Nums[9][4][2] = '+';
}void write(int i)
{int j,k;for(j=0; j<5; j++){for(k=0; k<3; k++){OutputNums[j][k+out_p] = Nums[i][j][k];}}out_p+=4;}

转载于:https://my.oschina.net/qkmc/blog/679787

OJ题目-使用+-|等符号表示数字,进行运算【C语言】相关推荐

  1. 牛客网题目——不用四则运算符号,计算两个数字的和

    牛客网题目--不用四则运算符号,计算两个数字的和 这道题的关键在于理解二进制如何执行两个数的加和操作. 二进制每位相加就相当于各位做异或操作:因此解法大致可以分为两步: 第一步:相加各位的值(下一步再 ...

  2. 循环相乘取整法C语言,华为OJ机试题目:两个大整数相乘(纯C语言实现两个大整数相乘,两种方法实现大数相乘)...

    题目描述: 输出两个不超过100位的大整数的乘积. 输入: 输入两个大整数,如1234567 123 输出: 输出乘积,如:151851741 样例输入: 1234567 123 样例输出: 1518 ...

  3. 九度OJ 题目1179:阶乘

    /********************************* * 日期:2013-2-8 * 作者:SJF0115 * 题号: 九度OJ 题目1179:阶乘 * 来源:http://ac.jo ...

  4. Python爬虫练习(爬取OJ题目和学校信息通知)

    爬取OJ题目和学校信息通知 一.爬取南阳理工OJ题目 1. 初步分析 2. 代码编写 二.爬取学校信息通知 1. 每页url分析 2. 每页内容爬取 总代码 三.总结 参考 一.爬取南阳理工OJ题目 ...

  5. C语言实战题目:从键盘输入数字,计算其中正数的个数,并且计算所有正数的和

    C语言实战题目:从键盘输入数字,计算其中正数的个数,并且计算所有正数的和 (遇到负数跳出本次循环继续重新输入,如果遇到0,则结束输入,输出答案) [for循环结构+if选择控制结构] #include ...

  6. 正则表达式校验密码策略最少8位,大小写字母加符号加数字的组合

    可以使用如下的正则表达式来校验密码策略最少8位,大小写字母.符号和数字的组合: ^(?=.*\d)(?=.*[a-z])(?=.*[A-Z])(?=.*[!@#$%^&*])(?!.*\s). ...

  7. 九度OJ 题目1069:查找学生信息 随笔

    ** 九度OJ 题目1069:查找学生信息 ** 题目描述如下: 输入N个学生的信息,然后进行查询. 输入 输入的第一行为N,即学生的个数(N<=1000) 接下来的N行包括N个学生的信息,信息 ...

  8. 九度OJ 题目1203:IP地址

    /********************************* * 日期:2013-2-8 * 作者:SJF0115 * 题号: 九度OJ 题目1203:IP地址 * 来源:http://ac. ...

  9. 杭电OJ第11页2085~2089算法题(C语言)

    目录 2085.核反应堆 2086.A1 = ? 2087.剪花布条 2088.Box of Bricks 2089.不要62 2085.核反应堆 Problem Description 某核反应堆有 ...

最新文章

  1. oracle日期处理(一)
  2. java 列表框简单案例
  3. springboot+Mybatis-plue自动生成代码
  4. 根据生日计算年龄 java_Java 根据出生日期获得年龄
  5. 《神奇的数学》读后感_数学家的眼光读后感
  6. 达梦数据库修改字段长度_Oracle、MySQL、达梦数据库新增修改删除字段
  7. 关于KNX/IP 网关协议报文解析以及几个注意事项
  8. Apache apollo 配置说明及用户名和密码管理
  9. 2019年java程序员推荐笔记本_2020程序员笔记本推荐?
  10. KingbaseFlySync replicator安装(Mysql-KES)
  11. 5G业务测试方法与验证
  12. JavaScript实现Word、Excel、PPT在线预览
  13. vs2019生成dll,并调用
  14. 利用Hudi Bootstrap转化现有Hive表的parquet/orc文件为Hudi表
  15. 黑金开发板在NiosII环境下烧写image到flash失败的解决办法
  16. AirDIsk产品第三方Samba同步工具
  17. android 仿苹果按钮,android 仿iphone 滑动开关按钮 switch
  18. H5实现类似微信可拖拽左右吸边浮动按钮
  19. 7-9 集合相似度 (25 分)
  20. Mybatis执行update,insert等语句返回的不是受影响的行数

热门文章

  1. 开始我的Opengl学习之路(rua)
  2. mysql中两根竖线什么意思_SQL如何查询表字段值以竖线分割的数据
  3. spring中事务的设计和实现
  4. LeetCode Number of Digit One(计算1的个数)
  5. jQuery解决鼠标单双击问题
  6. POJ 2455 Secret Milking Machine (二分+无向图最大流)
  7. 图像旋转的MATLAB和OpenCV源码
  8. mysql 共享表空间_MySQL共享表空间概念
  9. Spring MVC笔记
  10. Spring与Struts1的集成