C程序设计 第三版 作者 荣政 第6-10章 第6章.pptVIP

C程序设计 第三版 作者 荣政 第6-10章 第6章.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
  例 6.9 将字符串s转换成相应的双精度浮点数。   分析:这种转换在词法分析程序及其它场合经常是有用的。其实,系统的库函数中已提供了这种功能的函数。现在我们自己来设计程序完成这一功能。   首先应对字符串中出现的′+′和′-′进行处理,其次处理′.′前的部分,即将每一个数字字符转换成相应的数值,并加权累加成相应的整数部分。最后处理′.′后的部分(如果有的话),结果存放在变量number中。程序如下:   #include stdio.h    void main()   {    char s[8];    double val,power,number;   int i,sign;   printf(Input string of a number:);   gets(s);   i=0;   sign=1;    if (s[i]==′+′ || s[i]==′-′)  /* sign处理符号 */     sign=(s[i++]==′+′)?1:-1;   for (val=0;s[i]=′0′ s[i]=′9′;i++)                       /* 处理整数数字部分 */     val=10*val+s[i]-′0′;   if (s[i]==′.′)    i++;  for (power=1;s[i]=′0′ s[i]=′9′;i++)                         /* 处理小数数字部分 */ {    val=10*val+s[i]-′0′;    power*=10; } number=sign*val/power; printf(\nnumber=%f\n,number); }   运行结果:   Input string of a number:-234.55 ↙   number=-234.550000   例 6.10 输入一个由若干单词组成的文本行(最多80个字符), 每个单词之间用若干个空格隔开, 统计此文本行中单词的个数。    分析: 要统计单词的个数首先要解决如何去判断一个单词。 假定把一个文本行放在str数组中, 那么这一辨别工作即从str[0]开始去逐个检查数组元素, 跳过所有的空格后, 找到的第一个字母就是一个单词的开头, 这时计数器就可加1, 在此之后如果连续读到的是非空格字符, 则这些字符是属于刚统计过的那个单词, 因此不应计数。 下一次计数应在读到一个或几个空格后再遇到非空格字符时进行。    {     m[i]=a[i][0];    for (j=1;jN;j++)    if (m[i]a[i][j]) m[i]=a[i][j]; /* 找出每行的最小值 */   }    printf(Min is:);    for (i=0;iN;i++)    printf(%d ,m[i]);   }   运行结果:   Input numbers:   12  3   4   67  22   9↙    8   23  61  19  20  8↙    3   78  5   7   12  15↙   19  89  1   6   8   2↙   11  22  81  36  2  4↙   53  32  17  19  11  5↙   Min is:3  8  3  1  2  5 6.4 字符数组与字符串 6.4.1 字符数组的定义和初始化   字符数组的定义方式与前面介绍的类似, 形式如下: char 数组名[常量表达式];  如: “char c[6];”, 则定义c为字符数组, 包含6个元素。 赋值方法与一般的一维数组是一样的, 例如: c[0]=′s′;c[1]=′t′;c[2]=′r′;c[3]=′i′;c[4]=′n′;c[5]=′g′;   需要说明的是,由于字符型与整型是互相通用的,故字符数组的处理基本上与整型数组相同,只不过每个元素的值都是小于255的整数而已。   字符数组的初始化即是在定义时将字符逐个赋给数组中各元素。例如: char c[6]={′s′,′t′,′r′,′i′,′n′,′g′}; 其存储情况如图6.5所示。 但应注意的是, 初值个数应小于等于数组长度,

文档评论(0)

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档