强化练习9:将不定长的字符串转化为一个16位的字符数组

该博客介绍了如何使用C语言处理不定长字符串,将其转换成16位的字符数组。通过示例代码展示了具体的实现方法,适用于C语言初学者进行编程练习。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

题目:

将不定长的字符串转化为一个16位的字符数组。


程序如下:

#include <stdio.h>
#include <string.h>

#define SIZE 100
#define LEN  16


// 多位数自加成一位数
int Add_Str (int Num)
{
	int sum = 0;
	while (Num)
	{
		sum += Num % 10;
		Num /= 10;
	}
	
	if (sum < 10)
	{
		return sum;
	}
	
	Add_Str (sum);
}

// 编码函数
int encoded (char *str, char *password, int len)
{
	if (str == NULL)
	{
		return;
	}
	
	int tmp[LEN] = {0};
	int group = len/LEN + 1;	
	int i,j;
	for (i = 0; i < LEN; i++)				// 分成16组
	{
		for (j = 0; j < group; j++)
		{
			tmp[i] += str[j*LEN+i];			// 第i组相加赋给tmp[i];
		}
	}
	
	for (i = 0; i < LEN; i++)  
    {  
			password[i] = Add_Str (tmp[i]) + '0';   //将每组字符加成一个 个位数
   
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值