10302
来源:互联网 发布:java方法定义 编辑:程序博客网 时间:2024/05/16 12:19
//
1. 输入一个整数a,再输入两个整数p(p<32),v(0|1),将该整数a的p位设置为v,输出修改后的该整数的二进制表示.
#include <stdio.h>
int main()
{
int a,p,v;
int mask = 1 << 31,i;
//构造一个最高位为1,其余各位为0的整数
int tmp;//不改变a的值设置一个临时变量
//输入要求的三个数字
printf("please input an integer:");
scanf("%d",&a);
printf("please input another integer p(p<32):");
scanf("%d",&p);
printf("which number will you change No.%d into(1/0):");
scanf("%d",&v);
//输出原a的二进制表示
printf("%d=",a);
tmp = a;
for(i = 1; i <= 32; i++)
{
putchar(tmp&mask?'1':'0');//输出最高位的值
tmp <<= 1;//将次高位移到最高位
if(i % 4 == 0)
{
printf(",");//4位写一个,
}
}
printf("\bB\n");
//将p位设置为v
if(v == 0)
{
a &= ~(1 << p-1);//x&0==0
}
else
{
a |= 1 << p-1;//x|1==1
}
//输出修改后a的二进制表示
printf("%d=",a);
tmp = a;
for(i = 1; i <= 32; i++)
{
putchar(tmp&mask?'1':'0');
tmp <<= 1;
if(i % 4 == 0)
{
printf(",");
}
}
printf("\bB\n");
return 0;
}
int main()
{
int a,p,v;
int mask = 1 << 31,i;
//构造一个最高位为1,其余各位为0的整数
int tmp;//不改变a的值设置一个临时变量
//输入要求的三个数字
printf("please input an integer:");
scanf("%d",&a);
printf("please input another integer p(p<32):");
scanf("%d",&p);
printf("which number will you change No.%d into(1/0):");
scanf("%d",&v);
//输出原a的二进制表示
printf("%d=",a);
tmp = a;
for(i = 1; i <= 32; i++)
{
putchar(tmp&mask?'1':'0');//输出最高位的值
tmp <<= 1;//将次高位移到最高位
if(i % 4 == 0)
{
printf(",");//4位写一个,
}
}
printf("\bB\n");
//将p位设置为v
if(v == 0)
{
a &= ~(1 << p-1);//x&0==0
}
else
{
a |= 1 << p-1;//x|1==1
}
//输出修改后a的二进制表示
printf("%d=",a);
tmp = a;
for(i = 1; i <= 32; i++)
{
putchar(tmp&mask?'1':'0');
tmp <<= 1;
if(i % 4 == 0)
{
printf(",");
}
}
printf("\bB\n");
return 0;
}
0 0
- 10302
- uva 10302 summation of polynomials
- UVA-10302-Summation of Polynomials
- UVa 10302 - Summation of Polynomials
- UVa OJ 10302-Summation of Polynomials
- 程序员必备的七大面向对象设计原则(二)
- 字符型char和整型int之间的关系
- 【Data Structures】 1. Collection
- 日期字符串互换
- 【存档】CSDN-markdown编辑器的markdown语法
- 10302
- Hibernate的openSession和getCurrentSession区别
- 插入排序算法
- Codeforces 344D - Alternating Current
- vr相关文章第一弹,屏幕分辨率和屏幕ppi的区别
- 程序员必备的七大面向对象设计原则(三)
- 转移字符中的双引号,单引号和反斜杠
- Linux进程间通信 -- 信号量
- while(0),while(1),while(表达式)