C 语言程序设计 C 语言程序设计字符串回文?概念?考点?常用库函数?概念?考点?回文数?回文串 C 语言程序设计 C 语言程序设计字符串既是字符数组! 如: “ hello ”,” good morning ”,”1234567 ”,等都是字符串。定义及赋初始值: char a[]={ “ hello ”} 或 a[]= “ hello ”d \0 lroW olleH字符串储存情况: 10 11 9876543210 a[]= “ World! ”至少需要一个多大的数组 char a[7] ;? C 语言程序设计 C 语言程序设计字符串与字符数组?在C语言中没有专门的字符串变量,通常用一个字符数组来存放一个字符串?字符串–一串以'\0' 结尾的字符在 C语言中被看作字符串–用双引号括起的一串字符是字符串常量, C语言自动为其添加'\0' 终结符?字符数组–每个元素都是字符类型的数组,如 char name[20]; ?字符数组和字符串的区别是:字符串的末尾有一个空字符'\0' C 语言程序设计 C 语言程序设计字符串的读入: scanf( “%s ”,a); 遇到空格和回车停止 gets(a); 遇到回车停止注意: 由于系统在存储字符串常量时,会在串尾自动加上 1 个结束标志,所以无需人为地再加 1个。另外,由于结束标志也要在字符数组中占用一个元素的存储空间, 因此在说明字符数组长度时,至少为字符串所需长度加 1。 C 语言程序设计 C 语言程序设计 ── strcmp ()函数(1)调用方式: strcmp (字符串 1 ,字符串 2) 其中“字符串”可以是串常量,也可以是 1维字符数组。(2)函数功能:比较两个字符串的大小(字典序的大小)。如果: 字符串 1= 字符串 2,函数返回值等于 0; 字符串 1< 字符串 2,函数返回值负整数; 字符串 1> 字符串 2,函数返回值正整数。(3)使用说明 1)如果一个字符串是另一个字符串从头开始的子串,则母串为大。 2 )不能使用关系运算符“== ”来比较两个字符串,只能用 strcmp () 函数来处理。 C 语言程序设计 C 语言程序设计 ── strcpy ()函数(1)调用方式: strcpy (字符数组, 字符串) 其中“字符串”可以是串常量,也可以是字符数组。(2 )函数功能:将“字符串”完整地复制到“字符数组”中,字符数组中原有内容被覆盖。(3)使用说明 1 )字符数组必须定义得足够大,以便容纳复制过来的字符串。复制时,连同结束标志'\0' 一起复制。 2 )不能用赋值运算符“=”将一个字符串直接赋值给一个字符数组,只能用 strcpy ()函数来处理。 C 语言程序设计 C 语言程序设计 ── strcat ()函数(1)调用方式: strcat (字符数组, 字符串) (2 )函数功能:把“字符串”连接到“字符数组”中的字符串尾端,并存储于“字符数组”中。“字符数组”中原来的结束标志,被“字符串”的第一个字符覆盖,而“字符串”在操作中未被修改。(3)使用说明 1 )由于没有边界检查,编程者要注意保证“字符数组”定义得足够大,以便容纳连接后的目标字符串;否则,会因长度不够而产生问题。 2 )连接前两个字符串都有结束标志'\0' ,连接后“字符数组”中存储的字符串的结束标志'\0' 被舍弃,只在目标串的最后保留一个'\0' 。 C 语言程序设计 C 语言程序设计 ── strlen ()函数( len 是 length 的缩写) (1)调用方式: strlen (字符串)(2 )函数功能:求字符串(常量或字符数组)的实际长度(不包含结束标志)。 ── strlwr ()函数(1)调用方式: strlwr (字符串)(2 )函数功能:将字符串中的大写字母转换成小写,其它字符(包括小写字母和非字母字符)不转换。 ── strupr ()函数(1)调用方式: strupr (字符串)(2 )函数功能:将字符串中小写字母转换成大写,其它字符(包括大写字母和非字母字符)不转换。 C 语言程序设计 C 语言程序设计回文: 定义很简单,就是从前看和从后看是一样的,例如: 121 , 1235321 , abcba , a 等。回文的判断: 若是以字符串读入时: for(i=0;i<strlen(a);i++) if(a[i]!=a[strlen(a)-i-1]) flag=0; 若 flag=0 则说明 a [] 字符串不是回文串,反之则是。 C 语言程序设计 C 语言程序设计若以数字方式读入则要分离数字! 主要程序: t=0;
字符串和回文 来自淘豆网m.daumloan.com转载请标明出处.