2014华中科技大学考研复试机试题之进制转换
2015-02-21 09:57
337 查看
设计程序实现二进制数字的加减乘除,输入一串字符,包含两个参与运算的操作数,一个加减乘除运算符,中间以空格隔开,然后根据运算符进行运算输出运算结果(二进制)
如:输入:101 110 +
输出:1011
输入:101 110 *
输出:11110(高位为0可不输出)
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int BinaryToDec(char ch[],int n)
{
int sum,flag,i;
sum = 0;
flag = 1;
for(i=n-1; i>=0; i--)
{
sum += flag * (ch[i]-'0');
flag *= 2;
}
return sum;
}
void getResult(int a,int b,char op)
{
char ch[100];
int result;
switch (op)
{
case '+':
result = a + b;
break;
case '-':
result = a - b;
break;
case '*':
result = a * b;
break;
case '/':
result = a / b;
break;
default :
return ;
}
itoa(result,ch,2);
printf("%s\n",ch);
}
int main()
{
char ch1[100],ch2[100],oper;
int num1,num2;
while(scanf("%s %s %c",ch1,ch2,&oper) != EOF)
{
num1 = BinaryToDec(ch1,strlen(ch1));
num2 = BinaryToDec(ch2,strlen(ch2));
getResult(num1,num2,oper);
}
return 0;
}
如:输入:101 110 +
输出:1011
输入:101 110 *
输出:11110(高位为0可不输出)
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int BinaryToDec(char ch[],int n)
{
int sum,flag,i;
sum = 0;
flag = 1;
for(i=n-1; i>=0; i--)
{
sum += flag * (ch[i]-'0');
flag *= 2;
}
return sum;
}
void getResult(int a,int b,char op)
{
char ch[100];
int result;
switch (op)
{
case '+':
result = a + b;
break;
case '-':
result = a - b;
break;
case '*':
result = a * b;
break;
case '/':
result = a / b;
break;
default :
return ;
}
itoa(result,ch,2);
printf("%s\n",ch);
}
int main()
{
char ch1[100],ch2[100],oper;
int num1,num2;
while(scanf("%s %s %c",ch1,ch2,&oper) != EOF)
{
num1 = BinaryToDec(ch1,strlen(ch1));
num2 = BinaryToDec(ch2,strlen(ch2));
getResult(num1,num2,oper);
}
return 0;
}
相关文章推荐
- 2006年中科大计算机考研复试机试题
- 华中科技大学数学专业考研试题参考解答
- 华科14年考研复试机试题
- 2014华中科技大学考研机试题之超素数
- 2011年华科计算机考研复试机试题真题
- 华中科技大学2017年数学分析高等代数考研试题
- 2011年华科计算机考研复试机试题真题
- 考研复试机试题(2010)
- 考研复试机试题(2009)
- 考研复试机试题(2010)
- 2006年中科大计算机考研复试机试题
- 2014蓝桥杯B组初赛试题《切面条》
- 2014蓝桥杯B组初赛试题《六角填数》
- 2014腾讯实习生招聘武汉试题
- 2014阿里巴巴web前端实习生试题分析(1)
- [再寄小读者之数学篇](2014-04-20 [苏州大学数学专业考研复试试题] 解析函数有特定表达式的一个充分条件)
- 中国科学技大学2014年数学分析考研试题
- 2010年 浙工大考研计算机专业课试题C++
- 上海交通大学2005年数学分析考研试题
- 哈尔滨工业大学计算机考研854真题-哈尔滨工业大学 2017年硕士研究生入学考试试题