分享免费的编程资源和教程

网站首页 > 技术教程 正文

使用C语言生成登录时的验证码或者是短信验证码

goqiw 2024-09-06 22:59:00 技术教程 46 ℃ 0 评论

我们在登录一些网站时,经常会需要使用到验证码或者是短信验证码。如果是使用C语言来写的话,该如何来写呢?下面来聊一聊用C语言写验证码。

示例代码如下:

#include <stdio.h>

#include <stdlib.h>

#include <time.h>


int verificationCode();

int rangeNum(int min, int max);


int main() {

srand(time(NULL));


int rs;

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

rs = verificationCode();

printf("%c", rs);

}

return 0;

}


int verificationCode() {

int randNum = rand() % 2;

int result;

if (randNum == 0) {

// 生成随机小写字母,ASCII 码[97, 122]

result = rangeNum(97, 122);

} else {

// 生成随机大写字母,ASCII 码[65, 90]

result = rangeNum(65, 90);

}

return result;

}


// 生成任意范围内的随机数

int rangeNum(int min, int max) {

int randNum = rand() % (max - min + 1) + min;

return randNum;

}

测试结果如下,

生成短信验证码的方式一示例代码如下,

#include <stdio.h>

#include <stdlib.h>

#include <time.h>


int rangeNumber(int min, int max);


int main() {

srand(time(NULL));

// 方式1: 直接生成0到9之间的多个数字

int temp;

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

temp = rangeNumber(0, 9);

printf("%d", temp);

}

return 0;

}


// 生成任意范围内的随机数

int rangeNumber(int min, int max) {

int randNum = rand() % (max - min + 1) + min;

return randNum;

}

测试结果为,

方式二示例代码如下,

#include <stdio.h>

#include <stdlib.h>

#include <time.h>

int rangeNumber(int min, int max);


int main() {

srand(time(NULL));

// 方式2: 生成随机字符0到9,ASCII 码[48, 57]

int temp;

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

temp = rangeNumber(48, 57);

printf("%c", temp);

}

return 0;

}


// 生成任意范围内的随机数

int rangeNumber(int min, int max) {

int randNum = rand() % (max - min + 1) + min;

return randNum;

}

测试结果如下,


上面就是生成验证码

和短信验证码的几种方式,有其他建议的同学欢迎留言讨论。

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表