例4.7输出一个形如“丰”字的图形。图4.4例4.7输出结果从例4.7可知,逐个字符的输出,使用的格式符是“%c”;以字符串整体一次输出,使用的格式符是“%s”。例如下面的写法就是错误的:printf;如果数组长度大于字符串的实际长度,也只输出’\0’前的字符。其余的空格和回车符都被作为字符串的分隔符。......
2023-11-18
字符串是存放在字符数组中的,为了实现对字符串的操作,可以定义一个字符数组,也可定义一个字符指针,通过指针的指向来访问所需的字符。
例7.17 试分析以下程序运行结果。
#include<stdio.h>
运行结果如下:
C Language
C Language
事实上,以上的输出实现也可用如下方法一个一个字符的输出:(www.chuimin.cn)
也可以不定义字符数组,而直接用一个指针变量指向一个字符串常量,所以上面程序也可写成:
程序中虽然没有定义数组,但字符串在内存中是以数组形式存放的。它有一个起始地址,占一片连续的存储单元,而且以’\0’结束。语句“Char*p=“C Language”;”的作用是使指针变量p指向字符串的起始地址,千万不要认为是将字符串中的字符赋给指针变量p。p是指向字符型数据的指针变量,它的值是地址。
例7.18 有一行字符,要求删除指定的字符。
分析:假如有一行字符“I Have 50 Yuan.”,如果要删除“0”,则字符变为“I Have 5 Yuan.”。于是可以设一个目标数组a,将给定字符串中的字符逐个传送到该数组中,但要删除的字符不被传送。传送的过程可以使用循环语句一个字符一个字符地传送,当遇到字符串结束标志’\0’时,则认为传送结束。最后再给目标数组赋一个结束标志即可,这样目标数组就相当于达到了要求。
例7.19 将字符串a复制到字符串b中。
有关C语言程序设计 第2版的文章
例4.7输出一个形如“丰”字的图形。图4.4例4.7输出结果从例4.7可知,逐个字符的输出,使用的格式符是“%c”;以字符串整体一次输出,使用的格式符是“%s”。例如下面的写法就是错误的:printf;如果数组长度大于字符串的实际长度,也只输出’\0’前的字符。其余的空格和回车符都被作为字符串的分隔符。......
2023-11-18
图4.9字符数组初始化状态③ 如果字符数组的元素个数与初值相同,可在定义时省略数组长度。图4.11程序运行结果4.字符串字符串:是用双引号括起来的字符序列,也称为字符串常量。图4.13存储状态用printf 函数以格式符%s 输出字符串时,首先按字符数组名找到数组起始地址,然后从起始地址开始逐个输出其中的字符,直到遇上字符串结束符‘\0’时为止。......
2023-10-21
用符合C语言规范的方式书写并保存的C程序称为源程序文件,源程序文件不能直接执行,需要将它翻译成计算机能够识别并执行的机器语言程序。编辑是指C语言源程序的输入和修改,程序保存时,文件名由用户自己选定,扩展名一般为“.c”,也可以使用开发环境默认的扩展名。图2.1表明了上述过程。图2.1C语言程序的执行过程本教材选用Microsoft Visual C++6.0 IDE作为教学环境,使用该环境处理C程序的方法请参考附录C。......
2023-11-20
项目2:输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。图3.15兔子问题输出结果根据以上的分析可以知道,循环次数可以为0,因此该程序是一个条件型循环,可以利用while语句编写程序。熟悉了循环结构在程序设计中的运用,循环结构语句包含了while语句、do…......
2023-11-18
";无论使用哪种形式,在此后的程序代码中,都可以使用字符指针变量sPtr表示字符串数据"I Love China!使用字符指针变量表示字符串数据时,最容易出现的错误就是将未确定指向的字符串指针变量直接使用。使用指向字符数组的指针变量处理字符串示例。......
2023-11-20
图5.7两层函数嵌套调用示意图函数的嵌套调用即一个函数在被调用的过程中又调用了另外的一个函数。函数fac和powers的返回值类型均被设计为double型,其主要目的是为了避免n!x:0.5//0.5从键盘输入的数据0.50 powers of e=1.648721//程序执行结果......
2023-11-20
C语言把括号、赋值、强制类型转换等都作为运算符处理,灵活使用各种运算符可以实现在其他高级语言中难以实现的运算,功能强大。另外,C语言还把括号、下标、强制类型转换、取地址等都作为运算符处理,并通过与算数运算符的组合达到不同的目的,从而使程序更加简洁明了。C语言具有超强的可移植性。总之,C语言在运算符方面是比较容易让人混淆的。......
2023-11-18
相关推荐