C语言习题(1)——字符串拷贝,去空格,奇偶抽取字符串

2023-05-16

1.字符串拷贝

/***
作者:一叶扁舟
作用:字符串的拷贝
时间:18:25 2017/5/1
***/
#include <stdio.h>
#include <string.h>
#include <stdlib.h>


int copyStr(char *from, char *to){
	if (from == NULL || to == NULL){
		return -1;
	}
	while (*from != '\0'){
		*to = *from;
		from++;
		to++;
	}
	*to = '\0';
	return 1;
}
int main(){
	char buf1[100];
	char buf2[100];
	strcpy(buf1, "abcdefgh");
	int temp = copyStr(buf1,buf2);
	if (temp != 1){
		printf("出错了!");
	}
	else{
	printf("%s", buf2);
	}

	printf("\n");
	system("pause");
	return 0;
}


2.字符串去除空格

/**
1、有一个字符串开头或结尾含有n个空格(”   abcdefgdddd    ”),欲去掉前后空格,返回一个新字符串。
要求1:请自己定义一个接口(函数),并实现功能;
要求2:编写测试用例。
int trimSpace(char *inbuf, char *outbuf);

**/
/***
作者:一叶扁舟
作用:
时间:19:55 2017/5/4
***/

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

int trimSpace2(char *inbuf, char *outbuf){
	char * result = outbuf;
	if (inbuf == NULL || outbuf == NULL){
		return -1;
	}
	while (*inbuf != '\0'){
		if (*inbuf == ' '){
			inbuf++;
		}
		else{
			*result = *inbuf;
			result++;
			inbuf++;
		}

	}

	*result = '\0';
	return 1;
}

void main(){
	char buff1[100] = "   abcdefgdddd    ";
	char buff2[100] = {0};
	trimSpace2(buff1,buff2);
	printf("%s",buff2);
	printf("\n");
	system("pause");

}




3.抽取奇偶字符串

/**
2、有一个字符串”1a2b3d4z”,;
要求写一个函数实现如下功能,
功能1:把偶数位字符挑选出来,组成一个字符串1
功能2:把奇数位字符挑选出来,组成一个字符串2
功能3:把字符串1和字符串2,通过函数参数,传送给main,并打印。
功能4:主函数能测试通过。
int getStr1Str2(char *souce, char *buf1, char *buf2);
*/

/***
作者:一叶扁舟
作用:
时间:20:28 2017/5/4
***/

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

int getStr1Str2(char *souce, char *buf1, char *buf2){
	if (souce == NULL || buf1 == NULL || buf2 == NULL){
		return -1;
	}
	char *p1 = buf1;
	char *p2 = buf2;

	int i = 1;
	while (*souce != '\0'){
		//偶数
		if (i % 2 == 0){
			*p1 = *souce;
			souce++;
			p1++;
		}else{//奇数
			*p2 = *souce;
			souce++;
			p2++;
		}
		i++;
	}

	return 1;
}

void main(){
	char buff1[100] = "a1b2c3d4e5f6g";
	char buff2[100] = { 0 };
	char buff3[100] = { 0 };
	int temp = getStr1Str2(&buff1, &buff2, &buff3);
	if (temp != -1){
		printf("偶数数据:\n%s\n", buff2);
		printf("奇数数据:\n%s\n", buff3);
	}
	else{
		printf("查取数据错误\n");
	}
	system("pause");
}


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C语言习题(1)——字符串拷贝,去空格,奇偶抽取字符串 的相关文章

随机推荐

  • 使用POI在Excel单元格插入符号(Symbol)

    最近看到有人在 技术问答 上提问怎么用java在excel中插入打勾符号 xff1f 我想解决这个问题并不难 我们先打开一个excel文件 xff0c 在里面插入特定符号 xff0c 然后用poi xff08 其他的技术也可以 xff09
  • Eclipse下C语言的Socket编程(Winsock,gcc)问题总结

    最近心血来潮想从新温习一下C语言 xff08 工作后一直用Java xff0c 其实大学时C语言课程也没好好上 xff0c 正经的代码基本没写过 xff0c 惭愧啊 xff01 xff09 xff0c 找了些小例子 xff0c 修修改改 x
  • 各种哈希函数的java实现

    收集整理 public class HashUtils br private static final int crctab 61 0x00000000 0x77073096 0xee0e612c 0x990951ba br 0x076dc
  • libssl.so.10缺失库文件的解决办法

    libssl so 10缺失库文件的解决办法 在RHEL6 5中对openssl进行了升级 xff0c 如果老版本是OpenSSL 1 0 1e fips 那直接安装最新的openssl 1 0 1g 1 x86 64 rpm就行了 xff
  • Nvidia Jetson Nano入门与使用

    Pre xff1a Nvidia Nano板等了好久 xff0c 国内终于便宜了一点 刚从网上买一个 xff0c 准备替换掉Nvidia TX2开发板 xff08 因为目前的算法在Nano开发板上跑应该没有问题 xff09 打开包装 xff
  • 算法之路(四)----汉诺塔(又称河内之塔)

    汉诺塔是很简单也很经典的算法之一 汉诺塔是根据一个传说形成的数学问题 xff1a 有三根杆子A xff0c B xff0c C A杆上有N个 N gt 1 穿孔圆盘 xff0c 盘的尺寸由下到上依次变小 要求按下列规则将所有圆盘移至C杆 x
  • 相位一致性——利用频域检测边缘

    相位一致性 利用频域检测边缘 一 相位一致性提出的背景 相位一致性的提出是基于科学家发现了人感觉图像的关键不在于图像的长度差或者高度差之类的因素 xff0c 关键在于图像信号的相位大小 xff0c 例如人知道一个方波的边缘 xff0c 并不
  • 图像分割——掩膜法

    电路板是用掩膜法制作而成的 xff0c 现在电路板表面涂上一层抗腐蚀的材料 xff0c 然后再进行处理 xff0c 最后洗去材料就得到了电路 掩膜法在图像处理中的应用 xff1a 可用于分割图像中的特定部分 xff0c 关键在于怎么取膜 例
  • C++ 值传递、指针传递、引用传递详解

    具体内容源自 xff1a http www cnblogs com yanlingyin archive 2011 12 07 2278961 html 以下是简介 xff1a 值传递 xff1a 形参是实参的拷贝 xff0c 改变形参的值
  • MATLAB: 读取同一目录下的所有文件名并按时间排序

    用MATLAB测试图像处理算法的过程中 通常需要读入一个目录下的多张测试图片 可以根据文件命名规则来读入某个特定目录下的所有文件 但是相对比较麻烦 通过利用MATLAB自带的dir 可以先读入所有的文件名字 知道文件数量 而且不用知道文件的
  • 相机模型(Camera Model)

    Perspective Camera Model Perspective Camera Model 或 Pinhole Camera Model都是简单但是应用广泛的模型 xff0c 描述了将物体从3D世界坐标系转换 xff08 World
  • Solid Compression

    定义 Solid Compression是一种多文件的数据压缩方式 xff0c 其中所有未被压缩的文件是一个整体 xff0c 视为一个独立的data block 这样的文件称为solid archive 7z RAR压缩格式和tar bas
  • 区分AR、VR、MR、CR

    终极扫盲贴 xff1a VR AR MR CR到底如何区分 xff1f
  • (2016/02/19)多传感器数据融合算法---9轴惯性传感器

    2016年2月18日 传感器的原理 加速度计 xff1a 加速度计 我们可以把它想作一个圆球在一个方盒子中 假定这个盒子不在重力场中或者其他任何会影响球的位置的场中 xff0c 球处于盒子的正中央 你可以想象盒子在外太空中 xff0c 或远
  • 【tx2】——NVIDIA TX2--3--NVIDIA Jetson TX2 查看系统版本参数状态及重要指令

    NVIDIA Jetson TX2 查看系统参数状态 当前博主的TX2更新的版本为 xff1a Jetpack 3 3 cuda 9 0 252 cudnn7 0 opencv3 3 1 TensorRT4 0 2 系统内核 xff1a t
  • 训练深度学习模型时电脑自动重启

    文章目录 问题可能原因解决方案 问题 前面用自己的台式机利用GPU训练模型的时候 xff0c 电脑老是自动重启 xff0c 当时试了各种方法 xff0c 找了各种原因 电脑配置 电脑买的是二手的 xff0c xff08 强烈建议买新的 xf
  • 华为机试题[2017.8.23]

    题目 xff1a 给定一个正整数 xff0c 给出消除重复数字以后最大的整数 输入描述 xff1a 正整数 xff0c 注意考虑长整数 输出描述 xff1a 消除重复数字以后的最大整数 下面的好像有问题 xff0c 当输入是4325432时
  • Kubernetes(k8s)中dashboard的汉化

    1 访问服务器的http 192 168 110 133 8080 ui地址 xff0c 如下所示 xff1a 使用dashboard版本registry cn hangzhou aliyuncs com google containers
  • docker + Rancher + guacamole 容器环境搭建并配置vnc连接

    Rancher 43 guacamole 容器环境搭建 准备环境 xff1a docker ce 17 01 43 43 centos7 x 43 guacamole 最新版0 9 14 43 Rancher 搭建完成效果 xff1a 1
  • C语言习题(1)——字符串拷贝,去空格,奇偶抽取字符串

    1 字符串拷贝 作者 xff1a 一叶扁舟 作用 xff1a 字符串的拷贝 时间 xff1a 18 25 2017 5 1 include lt stdio h gt include lt string h gt include lt st