将一个字符串,按照奇数位和偶数位分别存放到不同的字符串中

题目描述:给定一个字符串               要求写一个函数,实现以下功能         功能1:吧偶数位字符挑选出来,组成一个字符串         功能2:吧奇数位字符挑选出来,组成一个字符串

//  将一个字符串,按照奇数位和偶数位分别存放到不同的字符串中

#define _CRT_SECURE_NO_WARNINGS
#include <stdlib.h>
#include<string.h>
#include<stdio.h>

int getStr1Str2(char * source, char *buf1, char *buf2)
{
	char *p = source;
	int num = 0;  //记录函数返回值
	if (source == NULL || buf1 == NULL || buf2 == NULL)   //判断是否为空指针
	{
		num = -1;
		printf("func getStr1Str2() err  (source == NULL || buf1 == NULL || buf2 == NULL) :%d ", num);
		return num;
	}
	int i = 9;
	int j = 0;
	int m = 0;
	for (m=0,i = 0, j = 1; i < strlen(source) && j < strlen(source);m++)
	{
		buf1[m] = source[i];
		buf2[m] = source[j];
		i = i + 2;
		j = j + 2;
	}
	buf1[m] = ‘\0‘;
	buf2[m] = ‘\0‘;
}

void main()
{
	char *str_old = "1a2b3d4c";
	char str_new1[100];
	char str_new2[100];
	getStr1Str2(str_old, str_new1, str_new2);
	printf("str_old:%s \n", str_old);
	printf("str_new1:%s \n", str_new1);
	printf("str_new2:%s \n", str_new2);

	system("pause");
	return;
}

  

时间: 2024-10-12 09:16:20

将一个字符串,按照奇数位和偶数位分别存放到不同的字符串中的相关文章

【c语言】写一个宏定义,实现的功能是将一个int型的数的奇偶位互换

// 写一个宏定义,实现的功能是将一个int型的数的奇偶位互换,例如6的二进制为0110,第一位与第二位互换, // 第三位与第四位互换,得到1001,输出应该为9 #include <stdio.h> // 取出奇数位与偶数位,奇数位左移1位,偶数位一位,相加或者相或 #define EXCHANGE(num) (((0x55555555 & num) << 1) + ((0xaaaaaaaa & num) >> 1)) int main() { pr

c语言:获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列。

获取一个数二进制序列中所有的偶数位和奇数位,分别输出二进制序列. 程序: #include<stdio.h> int main() { int i, j, num; char arr1[16]; char arr2[16]; printf("输入一个整数:"); scanf("%d", &num); for (i = 0, j = 0; i < 32; i += 2, j++) { arr1[15 - j] = (num >> 

简单的关于身份证(15位或者18位)合法性验证

package com.clark.test.idcard; /** * 测试校验身份证合法性的小程序 * <p>我们常用的身份证号码为18位或者15位</p> <p>下面的程序仅仅用于校验18为的身份证的合法性</p> * @author caolipeng * @date 2015年1月9日 上午10:27:13 * @Version 1.0 */ public class IDCardValidator { <span style="c

用C语言编程,实现调整数组,使奇数全部位于偶数前边,

函数要求实现功能:调整数组使奇数全部都位于偶数前面. 要求: 输入一个整数数组,实现一个函数,来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分,所有偶数位于数组的后半部分. 思考,要想实现此功能,首先对函数数组进行遍历,从两头进行,一个从前向后查看数组元素是否为奇数,一个从后向前查看数组元素是否为偶数,如果前为偶,后为奇则进行调换! 程序如下: /* **2.调整数组使奇数全部都位于偶数前面. ** 题目: **输入一个整数数组,实现一个函数, **来调整该数组中数字的顺序使得数组

输出一个数二进制的所有位及奇偶位

首先我们看一下输出一个整数二进制的所有位. 如果要输出它的所有位,从最高位开始每次移动i个长度,并且每一位都与1. 代码: #include <stdio.h> int main() { int num = 9; int i; for (i = 31; i>=0;i--) { printf("%d",((num>>i)&1)); } return 0; } 同理奇数位从它的最高位开始,每次移动i个长度并且i=i-2,每一位都与1,.偶数位从第二为开

javascript实现保留两位小数一位自动补零代码实例

javascript实现保留两位小数一位自动补零代码实例:本章节介绍一下如何实现对数字保留两位小数效果,如果数字的原本小数位数不到两位,那么缺少的就自动补零,这个也是为了统一的效果,先看代码实例: function returnFloat(value){ var value=Math.round(parseFloat(value)*100)/100; var xsd=value.toString().split("."); if(xsd.length==1){ value=value.

在线生成32位和16位大小写MD5密文

MD5是一种不可逆的加密算法,全称是Message-Digest Algorithm 5(信息-摘要算法).是当前计算机领域用于确保信息传输完整一致而广泛使用的散列算法之一. MD5的典型应用是对一段信息(Message)产生信息摘要(Message-Digest),以防止被篡改.比如,在UNIX下有很多软件在下载的时候都有一个文件名相同,文件扩展名为.md5的文件,在这个文件中通常只有一行文本,大致结构如: MD5 (tanajiya.tar.gz) = 0ca175b9c0f726a831d

iOS textField输入金额的限制,小数点前9位,后面两位

iOS textField输入金额的限制,小数点前9位,后面两位,如果不加小数点,最大位数是9位,加上小数点,最大位数是12位,超出最大位数可删除 - (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string { // 判断是否输入内容,或者用户点击的是键盘的删除按钮 if (![string isEqualT

iOS开发——实战总结&amp;32位升64位的变化

32位升64位的变化 终究还是来了.Apple下发了支持64位的最后通牒: As we announced in October, beginning February 1, 2015 new iOS apps submitted to the App Store must include 64-bit support and be built with the iOS 8 SDK. Beginning June 1, 2015 app updates will also need to fol