C语言基础程序设计

用32位二进制数表示有符号整数-55,请分别写出-55的原码、反码和补码。在线等,谢谢大佬们。

1000 0000 0000 0000 0000 0000 0011 0111(原码)

1111 1111 1111 1111 1111 1111 1100 1000(反码)负数的反码,除符号位外,其它地方取反

1111 1111 1111 1111 1111 1111 1100 1001(补码)负数的补码=反码+1

望采纳,谢谢

温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-10-16
[-55]原=10000000 00000000 00000000 00110111
[-55]反=11111111 11111111 11111111 11001000
[-55]补=11111111 11111111 11111111 11001001追问

#include
int main( )
{
int m = 177 ;
printf( "%o\n" , m ) ;
return 0 ;
}
帮忙看看这个的运行结果是多少?

追答

运行结果是261

追问

为什么啊?
我没懂

追答

你不采纳我的,怎么老问我呢?

第2个回答  2020-05-20

#include <stdio.h>

#include <stdlib.h>

#include <time.h>


int main(void) {


  srand((unsigned)time(NULL));


  int cnt = 0, sum = 0;

  int num;

  for (int i = 0; i < 100; i++) {

    num = rand() % 101;

    if (num % 3 == 0) {

      cnt++;

      sum += num;

    }

  }

  double avg = 1.0 * sum / cnt;

  printf("能被3整除的数有%d个\n", cnt);

  printf("能被3整除的数的平均值是%f\n", avg);


  return 0;

}

#include <stdio.h>


void fun(int n) {

  double s = 0;

  int sign = 1;

  for (int i = 1; i <= n; i++) {

    s += sign * 1.0 / i;

    sign = -sign;

  }

  printf("%f\n", s);

}


int main(void) {


  int n;

  scanf("%d", &n);

  fun(n);

  return 0;

}

相似回答