c语言怎么判断奇偶数?

Python029

c语言怎么判断奇偶数?,第1张

判断规律为:和1“与”结果是0则这个数为偶否则为奇。

在计算机里,数都是二进制的,从最右面开始,分别是2的0次幂、1次幂……n次幂。那么从2的1次幂开始到2的n次幂相加和是2的n+1次幂-2(n>=1,因为是从2的0次幂开始的)。

这个和一定是偶数。那么这个数本身是奇还是偶,就取决于2的0次幂这位,那如果这位是1则这个数为奇,否则为偶。

10在机器里的表示为1010,那它和1(0001)”与“必定为0。即规律为:和1“与”结果是0则这个数为偶否则为奇。

c语言判断奇偶数程序介绍

#include <stdio.h>

void main(){

  int a

  scanf("%d",&a)

  if(a&1) printf("a是奇数\n")

  else printf("a是偶数\n")

}

在判断函数中,将输入数值和2进行取余,余数为0的是偶数,否则是奇数;在主函数中通过scanf先让用户输入一个数,然后调用判断函数,判断输入数值奇偶,输出判断信息。

#include<stdio.h>

int IsJiShu(int a)

{  if(a%2==1)  return 1

else if(a%2==0)

return 0}

int main()

{ int n

while(scanf("%d",&n)!=EOF)

{ if(IsJiShu(n))  printf("该数是奇数\n")

else   printf("该数是偶数\n")}

return 0}

运行结果:

扩展资料:

两种判断奇数偶数的方法:

1、求余(%):根据奇数偶数的定义,若整数除以2没有余数,则为偶数,否则为奇数。因此,偶数取余结果为0,奇数取余结果为非零

2、与1相与(&1):一个十进制数字是奇数还是偶数,取决于二进制中最低位那个数是0还是1。与1相与时,只有对应的两个二进位均为1时,结果位才为1(奇数) ,否则为0(偶数)。(参与运算的数以补码方式出现)