C/C++の宿題を片付けます 102代目
■ このスレッドは過去ログ倉庫に格納されています
0095デフォルトの名無しさん
2008/01/06(日) 16:11:04これでおkかな?
#include <stdio.h>
int rshift(int x, int n){
int mask = 0, i;
for(i=0; i<n; ++i) mask += 1<<sizeof(int)-i;
if(x>0)return x >> n & ~mask;
else return x >> n | mask;
}
int main(){
int x,n;
scanf("%d %d", &x, &n);
printf("%d", rshift(x,n));
return 0;
}
■ このスレッドは過去ログ倉庫に格納されています