c语言程序的设计第3章 字符操作_第1页
c语言程序的设计第3章 字符操作_第2页
c语言程序的设计第3章 字符操作_第3页
c语言程序的设计第3章 字符操作_第4页
c语言程序的设计第3章 字符操作_第5页
已阅读5页,还剩32页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第3章字符操作本章帮助读者了解和掌握菜单的制作、字符串的输入与输出、及字符串的相关处理函数。本章学习目标能够通过模仿与改变,熟练编写菜单制作函 数。掌握字符的输入与输出。能够通过模仿与改变,掌握字符的相关统计。能够通过模仿与改变,掌握字符串处理函数 的使用。能够运用开发工具进行代码的调试、测试。任务3-1:菜单制作任务目标:

构造函数menu,用于在屏幕上输出如下所示的字符菜单界面,并在test函数中对该函数进行测试。字符菜单界面如下:+字

单+1.整数加法+2.整数减法+3.整数乘法+4.整数除法+5.整数求余+任务学习内容在Microsoft

Visual

C++6.0环境下熟练创 建工程的技能

培养在C语言项目中熟练创建源文件的技能编写菜单制作函数的技能简单输出字符(或字符串)的技能重点:编程实现创建工程和源文件工作区名为“C语言编程”,在E盘根目录工程类型Win32

Console

Application工程名chap03001源文件名称menu_display.c举例以伪代码,构造test函数和menu函数构造main和test函数,举例构造menu函数,举例编译、链接、执行程序举例习惯培养本任务中再次使用了以下编程习惯:

1)先写出代码的框架,然后用伪代码设计函数的实现方法(算法),最后根据伪代码构造最终的C语言代码,并将伪代码以注释的形式保留下来。

2)用test函数作为测试函数来调用menu函数。

3)为使语句不变得更复杂,每行只输出对应菜单中的一行(即一项)。模仿与改变

新建一个工程ex03001,在该工程中建立新的文件

score_menu.c,在menu函数中显示输出下列字符菜单:+

成绩管理系统菜单

++

1.

输入学生成绩

++

2.

输出学生成绩

++

3.

按学号查询学生成绩

++

4.

排序学生成绩

++

5.

统计各段成绩的人数

++模仿与改变+++

新建一个工程ex03002,在该工程中建立新的文件

team_menu.c,在menu函数中显示输出下列字符菜单:+

球队管理系统菜单+

1.输入球员信息+

2.输出球员信息+

3.

按角色查询球员信息

++------------------4.按角色统计球员的工资------++要点回顾

1)在工作空间“C语言编程”中新建名为chap03001的工程。2)在工程chap03001中新建menu_display.c源文件。3)在源文件中构造main、test和menu函数。

4)在menu函数中每行输出菜单的一项信息(用printf函数)任务3-2字符统计任务目标:

从键盘上输入一串字符,存储到一个字符数组中,然后统计该数组中各个英文字符的个数(注:统计时要区分字母的大小写)。任务学习内容字符串的输入与输出技能对字符型数据进行统计计算的技能对一维字符数组的操作技能特定字符转换成数值,并与一维数组下标进行对应的 技能重点:编程实现新建工程及源文件打开“C语言编程”工作区创建工程chap03002,创建char_count.c文件举例以伪代码引导编程实现构造main和test函数,举例构造charcount函数,举例编译、组建、执行举例习惯培养

对数组进行处理时,必须先对其各元素进行赋值。

数组的处理通常是与循环相联系的,因此要定义一个循环变量来操作它,由于数组元素的下标是从0开始的,因此这个循环变量的初始值通常都是0。

如果某个程序中所涉及的变量非常多,而且它们之间有某种直接或间接的关系,那么,可以采用数组来表示它们,这样会令程序变得非常简洁。模仿与改变

新建一个工程ex03003,在该工程中建立新的文件char_count_1.c,试着采用任务3-2中描述的第一种方法来完成任务3-2中要求的功能,即从键盘上输入一个字符串,统计该字符串

中各个英文字母的个数(区分大小写)。模仿与改变

新建一个工程ex03004,在该工程中建立新的文件char_count_2.c,采用任务3-2的方法二,完成如下功能:从键盘上输入一个字符串存

储到数组中,并统计出该字符串中各个英文

字母的个数(不区分大小写)。模仿与改变

新建一个工程ex03005,在该工程中建立新的文件type_count.c,完成如下功能:从键盘上输入一个字符串存储到数组中,并统计出该字符串中大写英文字母、小写英文字母、数字字符及其他字符(除上述3种外的其他字符)的个数。模仿与改变

新建一个工程ex03006,在该工程中建立新的文件char_change_1.c,完成如下功能:从键盘上输入一个字符串存储到数组中,并将该字符串中的所有小写英文字母全部转换为大写英文字母,其他字符保持不变。模仿与改变

新建一个工程ex03007,在该工程中建立新的文件char_change_2.c,完成如下功能:从键盘上输入一个字符串存储到数组中,并将该字符串中的所有大写英文字母全部转换为小写英文字母,其他字符保持不变。要点回顾

1)本任务中,首先搭建main函数及test函数的框架,并构造好main函数及test函数的代码。

2)在test函数中输入字符串到字符数组中。要点回顾

3)在charcount函数中,接收了从test函数传递过来的三个数组首地址(即数组的名称),然后可以合法地对这三个数组的每个元素进行操作。要点回顾

4)在charcount函数中,对字符的统计个数值应该存储的位置作了比较精巧的逻辑映射,

需要读者仔细领会。具体来说,就是把小写

字母a的统计个数,存储到数组xiaoxie的下标为0的元素中,把小写字母b的统计个数,存

储到数组xiaoxie的下标为1的元素中,…,把小写字母的统计个数,存储到数组xiaoxie的下标为25的元素中。大写字母采用类似的处

理方法。要点回顾

5)在处理过程中使用到数组与循环的组合。任务3-3常见字符串操作任务目标:

新建一个工程chap03003,在此工程下新建文件string_test.c,按照要求完成下面的任务。具体要求如下:

编写函数test_strcat,从键盘上输入两个字符串str_source和str_target,然后将str_source连接到str_target的末尾。

编写函数test_cpy,从键盘上输入一个字符串str_source,然后将该字符串复制到str_target中。

编写函数string_sort,从键盘上输入若干个字符串,然后将这些字符串按照字母排列顺序的升序进行排列。任务3-3常见字符串操作各函数原型:void

test_strcat(void);/*测试系统提供的strcat函数,理解其使用方法*/void

test_strcpy(void);/*测试系统提供的strcpy函数,理解其使用方法*/void

string_sort(void);/*对输入的若干个字符串进行排序,主要是帮助理解strcpy、strcmp等函数的使用*/任务学习内容字符串的输入输出技能使用字符串专用函数,对字符串进行处理的技能

c)字符串排序技能d)在VC环境下对C语言程序进行调试和测试的技能

e)培养良好的编程习惯重点:编程实现新建一个工程及源文件打开“C语言编程”工作区创建工程chap03003,并创建string_test.c文件举例以伪代码做引导完成任务构建main函数和test函数,举例构造test_strcat函数,举例构造test_strcpy函数,举例构造string_sort函数,举例构造my_strsort函数,举例编译、组建、执行举例习惯培养

1)定义变量时,事先考虑好这个变量的作用是什么,用在哪些地方。

2)如果test函数较复杂时,可以一部分一部分来进行测试,即可以先将不测试的那部分语句注释掉,只保留需要测试的一部分。

3)对数组进行操作时,通常都是从下标为0的元素开始的。模仿与改变

新建一个工程ex03008,在该工程中建立新的文件

get_first_word.c,在其中构造并测试函数first_word,要求实现的功能是:从键盘读入一个字符串,将该字符串的第一个单词提取出来,显示在屏幕上。一个单词的定义是一串字符,它里面不包含有空格、制表符和回车换行符。模仿与改变

新建一个工程ex03009,在该工程中建立新的文件

test_within.c,在其中构造并测试函数is_within,要求实现的功能是:从键盘读入一个字符串及一个独立的字符,在函数中判断字符是否出现在字符串中,如果是,则返回1,否则返回0。模仿与改变

新建一个工程ex03010,在该工程中建立新的文件

test_string_fun.c,在其中构造并测试函数string_fun要求实现的功能是:从键盘读入一个字符串,输出该字符串,并输出字符串的长度。将该字符串复制到另一个字符数组中,并输出复制后的字符数组。模仿与改变

新建一个工程ex03011,在该工程中建立新的文件

test_strcmp.c,在其中构造并测试函数test_strcmp,要求实现的功能是:从键盘分别读入两个字符串str1

和str2,然后比较它们的大小,如果str1大于str2,则输出提示信息“str1>str2”,如果str1小于str2,则输出提示信息“str1<str2”,如果str1等于str2,则输出提示信息“str1==str2”。模仿与改变

新建一个工程ex02010,在该工程中建立新的文件

score_count_fenduan.c,对某班所有学生的某门课程成绩进行处理,具体要求是:从键盘不断输入学生成绩,分别统计出成绩低于60分、60-69分、70-79分、

80-89分、90分及以上的人数,直到输入的成绩为负

值止。要点回顾

1)本任务中,首先搭建main函数及test函数的框架,并构造好main函数及test函数的代码。

2)在test函数中分别对test_strcat、test_strcpy、string_sort三个函数进行测试。

3)在test_strcat函数中,从键盘上接收两个字符串,然后调用系统提供的库函数strcat()实现将两个字符串连接起来。要点回顾

4)在test_strcpy函数中,从键盘上接收一个字符串,然后调用系统提供的库函数strcpy()实现将该字符串

复制到另一个字符数组中。

5)在string_sort函数中,从键盘上输入多个字符串,然后调用自定义函数my_strsor()来完成字符串的排序功能。

6)在my_strsort函数中,利用系统提供的库函数

strcmp()和strcpy()用冒泡法实现了

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论