當前位置:首頁 » 編程語言 » 身份證性別判斷C語言
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

身份證性別判斷C語言

發布時間: 2022-07-28 09:16:26

c語言題目:輸入身份證 輸出姓名年齡性別

姓名應該是出不來的了。年齡和性別到時可以通過字元串截取求出來

Ⅱ C語言作業:4. 設計身份證號合法性驗證程序

#include "stdio.h"

void main()
{
int i; /*身份證的第i位*/
int s[17]; /*定義一個數組用來存放身份證的前17位*/
int t[17]; /*各位相乘後的數組*/
int m; /*余數*/
int t18; /*身份證的第18位0--9*/
char t18c; /*身份證的第18位X*/
long int sum=0;
for(i=0;i<17;i++)
{
printf("請輸入身份證的第%d位:",i+1);
scanf("%d",&s[i]);
switch(i+1)
{
/*身份證的1到17位要乘的數一次是7 9 10 5 8 4 2 1 6 3 7 9 10 5 8 4 2 */
case 1:t[i]=s[i]*7;break;
case 2:t[i]=s[i]*9;break;
case 3:t[i]=s[i]*10;break;
case 4:t[i]=s[i]*5;break;
case 5:t[i]=s[i]*8;break;
case 6:t[i]=s[i]*4;break;
case 7:t[i]=s[i]*2;break;
case 8:t[i]=s[i]*1;break;
case 9:t[i]=s[i]*6;break;
case 10:t[i]=s[i]*3;break;
case 11:t[i]=s[i]*7;break;
case 12:t[i]=s[i]*9;break;
case 13:t[i]=s[i]*10;break;
case 14:t[i]=s[i]*5;break;
case 15:t[i]=s[i]*8;break;
case 16:t[i]=s[i]*4;break;
case 17:t[i]=s[i]*2;break;
}
sum=sum+t[i];

}
printf("前17位相乘後的和為%ld\n",sum);
m=sum%17;
printf("對17取余後的值位:",m);
switch(m)
{
/*各個余數所對應第18位身份證號1 0 X 9 8 7 6 5 4 3 2*/
case 0:t18=1 ;printf("這是一個合法的身份證號碼,第18位是%d",t18);break;
case 1:t18=0 ;printf("這是一個合法的身份證號碼,第18位是%d",t18);break;
case 2:t18c='X';printf("這是一個合法的身份證號碼,第18位是%c",t18c);break;
case 3:t18=9 ;printf("這是一個合法的身份證號碼,第18位是%d",t18);break;
case 4:t18=8 ;printf("這是一個合法的身份證號碼,第18位是%d",t18);break;
case 5:t18=7 ;printf("這是一個合法的身份證號碼,第18位是%d",t18);break;
case 6:t18=6 ;printf("這是一個合法的身份證號碼,第18位是%d",t18);break;
case 7:t18=5 ;printf("這是一個合法的身份證號碼,第18位是%d",t18);break;
case 8:t18=4 ;printf("這是一個合法的身份證號碼,第18位是%d",t18);break;
case 9:t18=3 ;printf("這是一個合法的身份證號碼,第18位是%d",t18);break;
case 10:t18=2 ;printf("這是一個合法的身份證號碼,第18位是%d",t18);break;
default:printf("這不是一個合法的身份證號碼");
}
printf("\n");
}

Ⅲ C語言題目:身份證號碼與性別

代碼文本:

#include "stdio.h"

#include <string.h>

int main(int argc,char *argv[]){

char s[19];

printf("Please enter your ID number... ID=");

if(scanf("%18s",s)!=1 || strlen(s)!=18){

printf("Input error, exit... ");

return 0;

}

printf("%c ",(s[16]&1 ? 'M' : 'F'));

return 0;

}

Ⅳ 利用c語言數組驗證

Ⅳ c語言輸入身份證輸出生日,性別,並判斷身份證是否合法

voidmain()
{
inta[18]
for(inti=0;i<18;i++)
{
inttemp;
scanf("%d",&temp);
a[i]=temp;
}
printf("生日: ");
for(intj=0;j<8;j++)
{printf("%d ",a[6+i]);}

charsex[2]={』女『,』男『};
printf("性別:%c ",sex[a[16]%2]);//
printf("位數:%d ",18);
}

Ⅵ 根據身份證號碼判斷男、女性別時,可以用()函數判斷奇偶性 A MOD B ISODD C I

可以用MOD函數判斷奇偶性,這個函數就是求一個數除以另一個數的余數。可以把要判斷的數字除以2,那麼余數要麼是0要麼是1。如果是0就是女,如果是1就是男。

Ⅶ excel中關於身份證辨別男女公式

1、首先利用Excel2010打開需要處理的文檔。如下圖所示:

Ⅷ 如何用if函數計算身份證性別

方法是:


1、首先在電子表格中,要求身份證號碼倒數第2位判斷性別,奇數為男性,偶數為女性,使用函數求出性別。


Ⅸ 輸入身份證號,判斷出生年月及性別c語言

#include<stdio.h>

int main()

{

char a[19];

scanf("%s",a);

if(a[16] % 2 == 0)

printf("nv");

else printf("nan");

return 0;
}

Ⅹ C語言.題身份證解析: 身份證號碼為18位:前6位數字是所在縣市的行政區化代碼;接著8位是出生 日

按從左到右數1-6位表示出生地編碼,7-10位出生年份,11、12位出生月份,13、14位出生日期,15、16位出生順序編號,17位性別標號,18位效驗碼。詳細的是1、2位為所在省份代碼,3、4位為所在城市代碼,5、6位是所在區縣代碼。15、16位是所標識的區域范圍內,對同年、月、日出生的人員編定的順序號。第17位奇數分給男性,偶數分給女性。身份證號碼的最後一位是校驗碼,其中的字母X是用來代替數字「10」的。