`
hzy3774
  • 浏览: 992950 次
  • 性别: Icon_minigender_1
  • 来自: 珠海
社区版块
存档分类
最新评论

C语言字符数组基本操作

 
阅读更多
#include <stdio.h>
 
 /*
 *字符数组倒序
 */
 void daoxu(char str[]){
     int i;
     char temp;
     for(i = 0; i < strlen(str) / 2 ; i ++){
         temp = str[i];
         str[i] = str[strlen(str) - i-1];
         str[strlen(str) - i-1] = temp;
     }
 }
 
 /*
 *单词计数
 */
 int wordCount(char str[]){
     int i;
     int count = 0;
     int word = 0;
     for (i = 0 ; str[i] != '\0' ; i ++)
     {
         if (str[i] == ' ')
         {
             word = 0;
         }else if (word == 0)
         {
             word = 1;
             count ++;
         }
     }
     return count;
 }
 
 /*
 *字符大写转小写
 */
 void mylwr(char str[]){
     int i;
     for (i = 0 ; str[i] != '\0' ; i ++)
     {
         if (str[i] >= 'A' && str[i] <= 'Z')
         {
             str[i] += 'a' - 'A';
         }
     }
 }
 
 /*
 *字符小写转大写
 */
 void myupr(char str[]){
     int i;
     for (i = 0 ; str[i] != '\0' ; i ++)
     {
         if (str[i] >= 'a' && str[i] <= 'z')
         {
             str[i] -= 'a' - 'A';
         }
     }
 }
 
 /*
 *字符数组计算字符串长度
 */
 int mylen(char str[]){
     int len;
     for (len = 0 ; str[len] != '\0' ; len ++);
     return len;
 }
 
 /*
 *字符串连接
 */
 void mycat(char str1[],char str2[]){
     int i,j;
     for (i = 0 ; str1[i] != '\0' ;i++);
     for (j = 0 ; str2[j] != '\0' ; j ++)
     {
         str1[i + j] = str2[j];
     }
     str1[i + j] = '\0';
 }
 
 /*
 *指定长度串接
 */
 void myncat(char str1[],char str2[], int len){
     int i,j;
     for(i = 0; str1[i] != '\0'; i++);
     for (j = 0; j < len; j++)
     {
         str1[i + j] = str2[j];
     }
     str1[i + j] = '\0';
 }
 
 /*
 *字符数组拷贝    
 */
 void mycpy(char dst[],char src[]){
     int i = 0;
     do 
     {
         dst[i] = src[i];
     } while (src[i++] != '\0');
 }
 
 /*
 *字符数组指定长度拷贝    
 */
 void myncpy(char dst[],char src[], int len){
     int i;
     for (i = 0; i < len; i++)
     {
         dst[i] = src[i];
     }
     dst[i] = '\0';
 }
 
 /*
 *找出句子中最长的单词
 */
 void longest(char dst[],char src[]){
     int i = 0,j;
     int count =0;
     int max = -1;
     do 
     {
         if (src[i] ==' ' || src[i] == '\0')
         {
             if (count > max)
             {
                 max = count;
                 for (j = 0; j < count; j++)
                 {
                     dst[j] = src[i - count + j];
                 }
                 dst[j] = '\0';
             }
             count = 0;
         }else{
             count++;
         }
     } while (src[i++] != '\0');
 }
 

 

从字符串中提取整形数字

#include <stdio.h>

int getint(char str[], int a[]){//从字符串中提取数字并放在数组中
	int i = 0;
	int w = 0;
	int c = 0;
	int j, k;
	do 
	{
		if (str[i] > '0' && str[i] <= '9')
		{
			w++;
		}else if (w)
		{
			j = 0;
			for (k = w; k > 0; k--)
			{
				j *= 10;
				j += str[i - k] - '0';
			}
			w = 0;
			a[c] = j;
			c++;
		}
	} while (str[i++] != '\0');
	return c;
}

void main(){
	char str[100];
	int a[100];
	int i, j;
	gets(str);
	i = getint(str,a);
	for (j = 0; j < i; j++)
	{
		printf("%d ",a[j]);
	}
}

 

分享到:
评论

相关推荐

    C语言字符数组初始化

    ### C语言字符数组初始化详解 #### 一、字符数组的定义与初始化 在C语言中,字符数组是一种非常重要的数据结构,主要用于存储一系列字符。字符数组的定义与初始化是掌握其使用的基础。以下是对字符数组定义及初始...

    嵌入式C语言浮点数到字符数组转换.pdf

    "嵌入式C语言浮点数到字符数组转换" 本文档主要介绍了一种在嵌入式C语言环境下,不调用库函数实现浮点数到字符数组的转换方法。该方法可以避免使用库函数而导致程序空间增加的问题。 首先,文档分析了浮点数到字符...

    C语言字符数组与字符串.ppt

    字符数组的概念、使用 字符串的概念 字符数组与字符串的关系 常用字符串处理函数的使用

    C语言字符数组与字符串的使用详解[归类].pdf

    C语言字符数组与字符串的使用详解 C语言中,字符数组和字符串是两个紧密相关的概念。字符数组是指由多个字符组成的数组,而字符串则是指一个以`\0`结尾的字符序列。在C语言中,字符串可以看作是一个特殊的字符数组...

    C语言字符数组初始化.pdf

    "C语言字符数组初始化" 在C语言中,字符数组的初始化是非常重要的,以下是关于字符数组初始化的知识点: 1. 字符数组的定义与初始化 字符数组的初始化可以通过逐个字符赋给数组元素来实现,例如:`char str[10]={...

    C语言中字符数组操作的函数实现(C语言实现)

    以上就是C语言中对字符数组操作的一些基本函数实现。理解和掌握这些函数对于编写涉及字符串处理的C程序至关重要。通过阅读源代码,我们可以更深入地了解它们的工作机制,并且能够根据需求自定义相应的字符串处理功能...

    C语言数组:C语言数组定义、二维数组、动态数组、字符串数组_C语言中文网1

    6.4 C语言字符数组和字符串 字符数组常用于存储字符串,因为C语言将字符串视为字符数组的特殊形式。字符串的结束标志是空字符 '\0'。例如,`char str[10] = "Hello"` 创建了一个包含5个字符(不包括结束符)的字符串...

    C语言教学课件:13-3_字符数组.ppt

    【字符数组】是C语言中用于存储字符串的基本数据结构。字符串在C语言中实际上是字符数组,以`\0`(空字符)作为终止标志。字符数组的定义、使用、初始化和赋值是理解C语言字符串处理的关键。 1. **字符数组的定义**...

    C语言字符串及字符数组操作

    C语言中,字符的操作有多种方法,这里主要是特有的字符串库函数进行操作,简化编程过程,增强学生对字符串及字符操作的理解。

    C语言数组讲义和基本操作

    字符数组通常用于存储字符串,因为C语言中字符串本质上就是以空字符`\0`结尾的字符数组。例如,`char str[10]`可以存储最多9个字符的字符串。字符串常量的引用需要加上双引号,如`"hello"`。字符数组可以通过下标...

    C语言字符串拆分成字符串数组.c

    纯C语言实现字符串拆分操作,把字符串拆分成字符串数组,然后再输出。 使用sstream方法,作为底层驱动操作实现非常方便。

    c语言字符数组与字符串的使用详解

    1、字符数组的定义与...2、字符数组与字符串在c语言中,将字符串作为字符数组来处理。(c++中不是)在实际应用中人们关心的是有效字符串的长度而不是字符数组的长度,例如,定义一个字符数组长度为100,而实际有效字

    c语言 利用字符数组实现两个大整数的加减法.exe

    c语言 利用字符数组实现两个大整数的加减法.exe

    单片机的C语言中数组的用法

    字符串是字符数组的特殊形式,以空字符`\0`作为结束标志。在C51中,可以使用`string.h`库提供的函数处理字符串。例如,`strcpy()`函数用于复制字符串: ```c #include char s[] = {'y', 'a', 'h', 'o', 'o', '\0'...

    C语言 获取字符串中的数组

    C语言 获取字符串中的数组C语言 获取字符串中的数组C语言 获取字符串中的数组C语言 获取字符串中的数组

    C语言程序设计-编写一个程序,将字符数组s2中的全部字符拷贝到字符数组s1中,不能使用strcpy函数。拷贝时,

    编写一个程序,将字符数组s2中的全部字符拷贝到字符数组s1中,不能使用strcpy函数。拷贝时,'\0'也要拷贝过去。 (代码提示:for(i=0;i(s2);i++) s1[i]=s2[i];)

    c语言指针数组

    指针数组可以灵活地操作和管理动态分配的内存,是C语言编程中不可或缺的一部分。 #### 指针与一维数组的关系 1. **数组名作为指针:** 在C语言中,一维数组的名字可以被视为指向数组第一个元素的指针。例如,对于...

    大一c语言数组实验心得.docx

    字符数组可以使用字符串函数,例如 strcpy、strcat、strlen 等,进行字符串的操作和处理。 三、排序算法 排序算法是数组操作中的一种重要算法,用于将数组元素按照一定的顺序排列。常见的排序算法有冒泡排序、选择...

    字符数组转换成字符串

    字符数组转换成字符串是常见的操作,尤其在C语言及其衍生的编程语言中。这个过程涉及到字符数组的处理、字符串的定义以及数据类型间的转换。下面我们将详细探讨这一主题。 首先,我们要了解字符数组和字符串的基本...

Global site tag (gtag.js) - Google Analytics