C语言写程序:定义一个根据身份证号辨别性别的函数。 提示:18位身份证倒数第2位为偶数,表示性别:女 奇数表示 性别: 男 要求:在主函数中输入身份证号,输出该号码对应的是先生或者女士 函数尽量简单,不使用指针
时间: 2024-11-23 21:30:27 浏览: 3
C语言程序设计:第6章 模块化程序设计与函数
在C语言中,你可以定义一个简单的函数来根据身份证号判断性别。由于题目要求不使用指针,我们可以直接通过字符串处理来完成这个任务。这里是一个基本的示例:
```c
#include <stdio.h>
#include <stdbool.h> // 引入bool类型
// 函数声明
bool get_gender(char *id); // 定义函数get_gender,输入身份证号字符串,返回性别
int main() {
char id[19]; // 身份证号最多18位加一个字符终止符
printf("请输入您的18位身份证号:");
fgets(id, sizeof(id), stdin); // 从标准输入读取身份证号
// 去除换行符
id[strlen(id) - 1] = '\0';
if (get_gender(id)) { // 如果性别为男性
printf("您是男士。\n");
} else { // 否则为女性
printf("您是女士。\n");
}
return 0;
}
// 实现get_gender函数
bool get_gender(char *id) {
int last_digit = id[strlen(id) - 2] - '0'; // 获取倒数第二位数字
return last_digit % 2 == 0; // 判断是否为偶数,如果偶数则返回true,奇数返回false
}
```
当你运行这个程序并输入一个18位的身份证号后,它会根据最后一位的奇偶性输出相应的性别信息。
阅读全文