C语言程序设计基础 第4章 数组.ppt

  1. 1、本文档共70页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
(8) 字符串输出函数 puts(字符串) 功能:输出字符串内容后自动换行(即将字符串结束符 '\0' 转换成 '\n')。 例: char str[30] = "Beijing"; puts (str); /* 等价printf ("%s\n", str); */ (9) 字符串输入函数 gets(字符数组) 功能:从终端输入字符序列到字符数组,最后自动补字符串结束符'\0' (即将输入时的回车符转换成'\0'字符存储)。 例1: char str[30]; gets(str); puts(str); 输入:maritime. 输出:maritime. 程序需要一个存储字符行的数组,还需要52个英文字母计数器,分别统计大小写共52个英文字母的出现次数。 #include <stdio.h> void main() { char buf[120]; int i, count[52]; gets(buf); for(i = 0; i < 52; i++) /* 为52个计数器置0 */ count[i] = 0; 例4.18统计各英文字母出现的次数 for(i = 0; buf[i] != '\0'; i++) if (buf[i] >= 'A' && buf[i] <= 'Z') count[buf[i] - 'A']++; else if (buf[i] >= 'a' && buf[i] <= 'z') count[buf[i] - 'a' + 26]++; for(i = 0; i < 52; i++) if (count[i]) /* 未出现的字母不输出 */ printf("%c(%d)\t", i<26 ? i+'A' : i-26+'a', count[i]); printf("\n");} #include <stdio.h> void main() { char c, line[120]; int i, words, /* 单词计数器 */ inword, /* 当前状态在单词中的标志变量 */ letter; /* 当前字符是字母的标志变量 */ words = 0; inword = 0; /* 预置当前状态不在单词中的标志 */ printf("Input a line.\n"); gets(line); 例4.20统计其中单词个数。约定单词由英文字母组成,其他字符只是用来分隔单词。 出错指数: #include<string.h> for(i = 0; line[i]; i++) { c = line[i]; letter = ((c>='a' && c<='z') || (c>='A' && c<='Z')); if (inword) { if (!letter) inword = 0; } else if (letter) { inword = 1; words++; } } printf("There are %d words in the line.\n\n\n",words); } 章节试题 1(上海师范大学)定义一数组a如下: int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}; 若数组a的首地址是500,则a[1]+3的值应是________ (A) 507 (B) 6 (C) 514 (D) 8 正确答案:(C) 章节试题 2 有以下程序,程序运行后的输出结果是______ #include<string.h> void main() {char a[80]=“AB”,b[80]=“LMNP” int i=0; strcat(a,b); while(a[i++]!=‘\0’) b[i]=a[i]; puts(b); } 正确答案: LBLMNP 解答:i++是先引用后加1,在执行b[i]=a[i]前已经加1了。 * * 选择法思想:先在a[0]~a[n-1]中找出最小数与a[0]对换,再在a[1]~a[n-1]中找最小数与a[1]对换 ...... 设:数组a有n个元素,选择法排序共要n-1趟,第i趟要进行n-i次两两比较交换。即:趟数+每趟进行的两两比较次数=元素个数

文档评论(0)

zhangningclb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档