希赛考试网
首页 > 软考 > 软件设计师

c语言判断奇偶数的程序

希赛网 2024-01-09 08:36:31

判断一个整数是奇数还是偶数是计算机编程中最简单的任务之一。在C语言中,有多种方法可以实现这个任务。本文将从多个角度探讨如何在C语言中编写判断奇偶数的程序。

一、使用if-else语句

使用if-else语句是最常见的方法之一。代码如下:

```

#include

int main()

{

int num;

printf("请输入一个整数:");

scanf("%d", &num);

if (num % 2 == 0)

printf("%d是偶数。\n", num);

else

printf("%d是奇数。\n", num);

return 0;

}

```

上面的代码首先提示用户输入一个整数,然后使用scanf函数读取用户的输入。接着,使用if-else语句判断这个整数是否为偶数,如果是,输出“是偶数”;否则,输出“是奇数”。

使用if-else语句可以判断任何整数是奇数还是偶数。但是,如果需要判断多个整数,需要多次输入和输出。这不仅浪费时间,也浪费空间。

二、使用位运算

使用位运算是计算机中最快的方法之一。代码如下:

```

#include

int main()

{

int num;

printf("请输入一个整数:");

scanf("%d", &num);

if (num & 1 == 0)

printf("%d是偶数。\n", num);

else

printf("%d是奇数。\n", num);

return 0;

}

```

上面的代码首先提示用户输入一个整数,然后使用scanf函数读取用户的输入。接着,使用位运算&判断这个整数是否为偶数,如果是,输出“是偶数”;否则,输出“是奇数”。

使用位运算可以快速判断一个整数是奇数还是偶数。但是,这种方法只适用于整数类型。

三、使用switch语句

使用switch语句是一种另类的方法。代码如下:

```

#include

int main()

{

int num;

printf("请输入一个整数:");

scanf("%d", &num);

switch(num % 2) {

case 0:

printf("%d是偶数。\n", num);

break;

case 1:

printf("%d是奇数。\n", num);

break;

}

return 0;

}

```

上面的代码首先提示用户输入一个整数,然后使用scanf函数读取用户的输入。接着,使用switch语句判断这个整数是否为偶数,如果是,输出“是偶数”;否则,输出“是奇数”。

使用switch语句可以判断任何整数是奇数还是偶数。但是,如果需要判断多个整数,需要多次输入和输出。这不仅浪费时间,也浪费空间。

四、使用位运算和递归

使用位运算和递归是一种高阶方法。代码如下:

```

#include

int is_even(int num);

int main()

{

int num;

printf("请输入一个整数:");

scanf("%d", &num);

if (is_even(num))

printf("%d是偶数。\n", num);

else

printf("%d是奇数。\n", num);

return 0;

}

int is_even(int num)

{

if (num == 0)

return 1;

else if (num == 1)

return 0;

else

return is_even(num - 2);

}

```

上面的代码首先提示用户输入一个整数,然后使用scanf函数读取用户的输入。接着,使用递归函数is_even判断这个整数是否为偶数,如果是,返回1;否则,返回0。

使用位运算和递归可以判断任何整数是奇数还是偶数。但是,这种方法的效率比较低,因为它需要调用递归函数is_even。如果要判断的整数太大,会出现栈溢出问题。

扫码领取最新备考资料


软考.png


软件设计师 资料下载
备考资料包大放送!涵盖报考指南、考情深度解析、知识点全面梳理、思维导图等,免费领取,助你备考无忧!
立即下载
软件设计师 历年真题
汇聚经典真题,展现考试脉络。精准覆盖考点,助您深入备考。细致解析,助您查漏补缺。
立即做题

软考资格查询系统

扫一扫,自助查询报考条件