C语言上机界面操作.ppt_第1页
C语言上机界面操作.ppt_第2页
C语言上机界面操作.ppt_第3页
C语言上机界面操作.ppt_第4页
C语言上机界面操作.ppt_第5页
已阅读5页,还剩119页未读 继续免费阅读

下载本文档

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

文档简介

二级C应试辅导 全国计算机等级考试 1NCRE简介 NCRE NationalComputerRankExamination 2二级C考试免费培训安排 一 培训内容 二级C的考试内容 笔试和机试 二 培训方式 1 理论包括二级C和二级 公共基础知识 2 上机自由上机 3二级C考试方式及要求 一 了解考试方式 1 笔试 90分钟 满分100分 题型 选择题 40道单项选择题 其中1 10 21 40题 每小题2分 11 20题每小题1分 共70分 填空题 共15空 每空2分 共30分 内容 公共基础知识部分的30分 其中 20分选择题 10道单项选择题 10分填空题 5个空 C语言程序设计部分70分 其中 50分选择题 2分一道的共20道 1分一道的共10道 20分填空题 10个空 2 机试 90分钟 满分100分 题型 由三种题型组成 一道填空题 30分 一道改错题 30分 一道编程题 40分 内容 均为C语言程序设计二 熟悉考试范围 1 了解最新最全的考试要求 2 仔细阅读最新的考试大纲 熟悉考试范围 应该早已完成 4机试辅导 笔试应试技巧 注意审题 命题人出题是有针对性的 考生在答题时也要有针对性 在解答之前 除了要弄清楚问题 还有必要弄清楚命题人的意图 从而能够针对问题从容做答 先分析 后下笔 明白了问题是什么以后 先把问题在脑海里过一遍 考虑好如何做答后 再依思路从容做答 而不要手忙脚乱 毛毛躁躁 急于下笔 对于十分了解或熟悉的问题 切忌粗心大意 得意忘形 而应认真分析 识破命题人设下的障眼法 针对问题 清清楚楚地写出答案 对于拿不准的题目 要静下心来 先弄清命题人的意图 再根据自己已掌握的知识的 蛛丝马迹 综合考虑 争取多拿一分是一分 4机试辅导 考生考试过程 考试系统的主要功能是提供考试平台 显示试题内容 控制上机考试时间 调用相应的应用软件等 考生考试过程分为登录 答题 交卷等阶段 下面以二级C语言的考试就考试过程中的操作要求及注意事项做详细解答 1 双击桌面上的 考试系统 或从开始菜单的 程序 中选择 第 为考次号 次NCRE 命令 启动 考试系统 显示下图开始考试的登录过程 2 鼠标点击 开始登录 或按回车键进入准考证号输入窗口 输入准考证号 3 按回车或选择 考号验证 将弹出考生信息窗口 需要对准考证号以及姓名 身份证号进行验证 如果准考证号错误 选择 否 N 重新输入 如果准考证号正确 选择 是 Y 继续 4 在正确地输入了准考考号和密码之后 选择 抽取试题 按钮 显示考试须知 此时不要急于点击 开始考试并计时 要注意仔细阅读考试须知 注意 考试过程中使用缺省路径调取文件 缺省路径保存文件 否则将影响考试成绩 5 选择 开始答题并计时 进入考试界面 6 答题 考试系统将自动在屏幕中间生成装载试题内容查阅工具的考试窗口 答题时一定要点击窗口左上角 答题 后 点击文件名或软件名打开文件做题 不要通过 资源管理器 打开文件 做题时要注意不要同时打开多个编辑编译环境 7 考试过程的基本操作 在屏幕顶部始终显示着考生的准考证号 姓名 考试剩余时间以及可以随时显示或隐藏试题内容查阅工具和退出考试系统进行交卷的按钮的窗口 其中 隐藏窗口 字符表示屏幕中间的考试窗口正在显示 当用鼠标点击 隐藏窗口 字符时 屏幕中间的考试窗口就被隐藏 且 隐藏窗口 字符串变成 显示窗口 再用鼠标点击 显示窗口 字符时 屏幕中间的考试窗口就被显示 其中 交卷 按钮是用来在答题结束后考试时间未到点击交卷 以结束考试 若在考试过程中点击 视为考生自己退出考试 成绩以退出前保存结果为准 一切后果自负 考试过程中考生应注意经常保存程序及各种相关文件 考试结果以考试结束前最后的保存为准 8 考试过程中的特殊情况 在考试过程中 当遇到下列情况时要及时举手 请监考人员处理 否则将影响考生的考试成绩 1 系统死机 即鼠标和键盘均无法操作 2 系统无法正常加电 3 网络无法正常连接 4 程序丢失或找不到源程序 9 交卷 在答题结束后 选择 交卷 按钮 上机考试系统将弹出是否要交卷处理的提示信息框 此时考生如果选择 确定 按钮 则退出上机考试系统进行交卷处理 结束考试 选择 取消 按钮则返回考试界面 继续进行考试 4机试辅导 上机考试考生须知 考生必须接受监考人员核验证件 抽取座位号码 并在 上机考场签到表 上签字后方可参加考试 考生进入考场前 手机等各种通讯设备必须关机 除准考证 身份证 抽取的座位号条以外的其他物品不允许带入考场 否则参照 违规认定办法 处理 进入考场后要保持安静 对号入座 并将准考证 身份证 座位号条正面朝上放在桌上 在正式开考前不准随意操作 在考试过程中 如出现考试用机供电故障 系统死机 键盘鼠标无法正常使用 网络连接中断 考试环境异常等现象时 要及时举手 由监考人员处理 在考试过程中 如果需要打开多个编辑编译环境时 在打开下个编辑编译环境前 先关闭前面的环境 不要同时打开多个编辑编译环境 避免系统死机 答题结束后 考生应举手向监考人员示意 经监考人员允许后方可离开考场 4机试辅导 一 程序修改题 改错题 程序修改题常见错误类型 1 语法错误以下是一些常见错误 1 变量未定义 2 变量大小写不统一 3 变量类型不匹配 4 字符常量与字符串常量混淆 5 语句末尾少了分号 6 函数的首部 即整个函数的第一行 以分号结束 7 if语句后的表达式两侧没有圆括号 2 逻辑错误 语义错误 以下是一些常见错误 1 循环语句 if语句 复合语句的花括号后多加了分号 2 赋值号与等号混淆 3 引号或括号不对称 只有一边 4 复合语句少了 5 将数字 0 写成了字母 o 或将字母 o 写成了数字 0 将数字 1 写成了小写字母 l 或将小写字母 l 写成了数字 1 6 变量的初值不正确或未赋初值 2 逻辑错误 语义错误 以下是一些常见错误 7 利用scanf 函数给变量赋值时忘记加地址运算符 10 switch语句中漏写break语句 11 在引用数组元素时 将定义数组时的下标值作为数组最后一个元素的下标 12 使用scanf 函数时 输入数值型数据的方式与要求不符 或输入字符格式与要求不一致 此类错误虽不方便出改错题 但对任何C程序设计的学习者来说却是必须注意的地方 3 算法错误因不同的问题有不同的算法 同一个问题也有不同的算法 因此算法错误难于归纳和总结 也就是说算法错误的种类实在太多 要修改此类错误不仅要掌握常用的算法 审清题目 还且要善于对程序 段 的功能进行分析 二 程序填空题说明 机试的程序填空题是在取消DOS的命令的操作题后 在2005年上半年开始推出的新题型 满分是30分 程序填空题主要考查考生阅读程序的能力 掌握常用的算法和提高阅读程序的能力是解决此类问题的关键 三 编程题 常考的算法连加与连乘 累加与累乘 如 求1 1 2 1 4 1 6 1 n的值 直到最后一项的绝对值小于1e 3为止 注意之点 a 连加的初值一般为0 b 对于连加 一般设3个变量 部分和s 项号i i项的值t 关键是求t的值 c 求通项t的值主要有两种方法 1 依通项公式来得到 2 后一项可由前一项得到 d 连乘与连加的处理方法类似 只不过把 号变成 号 注意乘积的初值一般为1 数的算法A 求素数B 求同构数 同构数是指该数出现在它的平方数的右边的数 C 求水仙花数 水仙花数是这样三位数 其各位数字的立方和等于该数本身 D 求最大公约数和最小公倍数排序算法A 比较交换法B 选择交换法C 冒泡法 求一维数组的最大值 最小值及其下标注 常用选择交换法与二维数组有关的算法A 求二维数组行或列的和B 求二维数组的最大值 最小值及下标C 矩阵转置与字符串有关的算法A 从字符串中删除某个字符B 求字符串的长度 不用strlen函数 C 字符串的合并D 比较字符串的大小 不用strcmp函数 注意 在有关字符串的算法中 通常都涉及到字符串结束标记 一般情况下都是利用循环来对字符串中的全部字符或符合条件的字符进行处理 循环结束条件一般是遇到空字符 0 程序举例 例题1填空题例题2填空题例题3填空题例题4填空题例题5填空题例题6填空题例题7填空题例题8改错题例题9改错题例题10改错题 例题11改错题例题12改错题例题13改错题例题14改错题例题15编程题例题16编程题例题17编程题例题18编程题例题19编程题例题20编程题 例题1填空题 试题程序 下列给定程序中 函数fun 的作用是 将字符串tt中的大写字母都改为对应的小写字母 其他字符不变 例如 若输入 Ab cD 则输出 ab cd include include includechar 1 fun chartt inti for i 0 tt i i if tt i A 题干 试题答案 例题1试题程序 例题2填空题 试题程序 下列给定程序中 函数fun 的功能是 按顺序给s所指数组中的元素赋予从2开始的偶数 然后再按顺序对每5个元素求一个平均值 并将这些值依次存放在w所指的数组中 若s所指数组中元素的个数不是5的倍数 多余部分忽略不计 例如 s所指数组有14个元素 则只对前10个元素进行处理 不对最后的4个元素求平均值 include defineSIZE20fun double s double w intk i doublesum for k 2 i 0 i SIZE i s i k k 2 sum 0 0 for k 0 i 0 i SIZE i sum s i if i 1 1 5 0 w k sum 5 sum 0 k 2 k 题干 试题答案 例题2试题程序 voidmain doublea SIZE b SIZE 5 inti k k fun a b printf Theoriginaldata n for i 0 i SIZE i if i 5 0 printf n printf 4 0f a i printf n nTheresult n for i 0 i k i printf 6 2f 3 printf n n 例题3填空题 试题程序 下列给定程序中 函数fun 的功能是 将s所指字符串中的字母转换为按字母序列的后续字母 但Z转化为A z转化为a 其他字符不变 include include includevoidfun char s while 1 if s A 题干 试题答案 例题3试题程序 例题4填空题 试题程序 下列给定程序中函数fun 的功能是 将长整型数中每一位上为奇数的数依次取出 构成一个新数放在t中 高位仍在高位 低位仍在低位 例如 当s中的数为87653142时 t中的数为7531 include includevoidfun longs long t intd longs1 1 t 0 while s 0 d s 1 10 if d 2 0 t d s1 t s1 2 s 3 voidmain longs t printf nPleaseenters scanf ld 题干 试题答案 例题4试题程序 例题5填空题 试题程序 下列给定的程序中 fun 函数的功能是 将p所指字符串中每个单词的最后一个字母改成大写 这里的 单词 是指有空格隔开的字符串 例如 若输入 Iamastudenttotaketheexamination则应输出 IaMAstudenTtOtakEthEexaminatioN include include include includevoidfun char p intk 0 for p p if k if p 1 2 toupper p 1 elsek 1 voidmain charchrstr 64 intd printf nPleaseenteranEnglishsentencewithin63letters gets chrstr d strlen chrstr chrstr d chrstr d 1 0 printf nBoforechanging n s chrstr 3 printf nAfterchanging n s chrstr 题干 试题答案 例题5试题程序 例题6填空题 试题程序 下列给定程序中 函数fun 的功能是 计算s所指字符串中含有t所指字符串的数目 并作为函数值返回 include include include defineN80intfun char s char t intn char p r n 0 while s p s r t while r if r p r 1 elsebreak if r 2 n 3 returnn voidmain chara N b N intm printf nPleaseenterstringa gets a printf nPleaseentersubstringb gets b m fun a b printf nTheresultis m d n m 题干 试题答案 例题6试题程序 例题7填空题 试题程序 下列给定程序中 函数fun 的功能是 通过某种方式实现两个变量值的交换 规定不允许增加语句和表达式 例如变量a初值为8 b初值为3 程序运行后a中的值为3 b中的值为8 include includeintfun int x inty 1 t t x x y return t 2 voidmain inta 3 b 8 printf d d n a b b fun 3 b printf d d n a b 题干 试题答案 例题7试题程序 例题8改错题 试题程序 下列给定程序中 函数fun 的功能是逐个比较a b两个字符串对应位置中的字符 把ASCII值小或相等的字符依次存放到c数组中 形成一个新的字符串 例如 a中的字符串为fshADfg b中的字符串为sdAEdi 则c中的字符串应为fdAADf 请改正程序中的错误 使它能得到正确结果 注意 不要改动main函数 不得增行或删行 也不得更改程序的结构 include includevoidfun char p char q char c intk 0 while p q found if p q c k q elsec k p if p p if q q found k voidmain chara 10 fshADfg b 10 sdAEdi c 80 0 fun a b c printf Thestringa puts a printf Thestringb puts b printf Theresult puts c 题干 试题答案 例题8试题程序 例题9改错题 试题程序 下列给定程序中 函数fun 的功能是根据整型形参m 计算如下公式的值 y 1 1 2 2 1 3 3 1 4 4 1 m 1 m m 例如 m中的值为5 则应输出0 838611 请改正程序中的错误 使它能得到正确结果 注意 不要改动main函数 不得增行或删行 也不得更改程序的结构 include includedoublefun intm doubley 1 0 found intj 1 inti for i 2 i m i j 1 j found y 1 i i return y main intn 5 printf nTheresultis lf n fun n 题干 试题答案 例题9试题程序 例题10改错题 试题程序 下列给定程序中 函数fun的功能是按以下递归公式求函数值 例如 当给n输入5时 函数值为240 当给n输入3时 函数值为60 请改正程序中的错误 使它能得到正确结果 注意 不要改动main函数 不得增行或删行 也不得更改程序的结构 include found fun intn intc found if n 1 c 15 elsec fun n 1 2 return c voidmain intn printf Entern scanf d 题干 试题答案 例题10试题程序 例题11改错题 试题程序 下列给定程序中函数fun 的功能是计算的值 例如 给n输入5 则输出0 008333 请改正程序中的错误 使它能得到正确结果 注意 不要改动main函数 不得增行或删行 也不得更改程序的结构 include include found intfun intn doubleresult 1 0 if n 0 return1 0 while n 1 题干 试题答案 例题11试题程序 例题12改错题 试题程序 下列给定的程序中 fun 函数的功能是 将p所指字符串中每个单词的最后一个字母改成大写 这里的 单词 是指有空格隔开的字符串 例如 若输入 Iamastudenttotaketheexamination 则应输出 IaMAstudenTtOtakEthEexaminatioN 题干 试题答案 例题12试题程序 include include includevoidfun char p intk 0 for p p found if k if p k 0 found p toupper p 1 elsek 1 voidmain charchrstr 64 intd printf Pleaseenteranenglishsentencewithin63letters gets chrstr d strlen chrstr chrstr d 1 chrstr d 1 0 printf n nBeforchanging s chrstr fun chrstr printf nAfterchanging n s chrstr 例题13改错题 试题程序 下列给定程序中 函数fun 的功能是将字符串s中位于偶数位置的字符或ASCII码为奇数的字符放入字符串t中 规定第1个字符放在第0位中 例如 字符串中的数据为ADFESHDI 则输出应当是AFESDI 请改正程序中的错误 使它能得到正确结果 注意 不要改动main函数 不得增行或删行 也不得更改程序的结构 include include include defineN80 found voidfun chars chart inti j 0 for i 0 i strlen s i found if i 2 0 s i 2 0 t j s i t j 0 voidmain chars N t N printf nPleaseenterstrings gets s fun s t printf nTheresultis s n t 题干 试题答案 例题13试题程序 例题14改错题 试题程序 下列给定程序中 函数fun 的功能是找出100 n n不大于1000 之间百位数字加十位数字等于个位数字的所有整数 把这些整数放在s所指的数组中 个数作为函数值返回 请改正程序中的错误 使它能得到正确结果 注意 不要改动main函数 不得增行或删行 也不得更改程序的结构 include defineN100intfun int s intn inti j 0 k a b c for i 100 i1000 num fun a n printf n nTheresult n for i 0 i num i printf 5d a i printf n n 题干 试题答案 例题14试题程序 例题15编程题 试题程序 请编写函数fun 其功能是将两个两位数的正整数a b合并形成一个整数放在c中 合并的方式是 将a数的十位和个位数依次放在c数个位和十位上 b数的十位和个位数依次放在c数的百位和千位上 例如 当a 16 b 35 调用该函数后 c 5361 注意 部分源程序给出如下 请勿改动主函数main和其他函数中的任何内容 仅在函数fun的花括号中填入所编写的若干语句 includevoidfun inta intb long c voidmain inta b longc printf Inputa b scanf d d 题干 试题答案 例题15试题程序 例题16编程题 试题程序 请编一个函数voidfun inttt M N intpp N tt指向一个M行N列的二维数组 求出二维数组每列中最大元素 并依次放入pp所指的一维数组中 二维数组中的数已在主函数中给出 注意 部分源程序给出如下 请勿改动主函数main和其他函数中的任何内容 仅在函数fun的花括号中填入所编写的若干语句 include include defineM3 defineN4voidfun inttt M N intpp N voidmain intt M N 68 32 54 12 14 24 88 58 42 22 44 56 intp N i j k printf Theriginaldatais n for i 0 i M i for j 0 j N j printf 6d t i j printf n fun t p printf nTheresultis n for k 0 k N k printf 4d p k printf n 题干 试题答案 例题16试题程序 例题17编程题 试题程序 请编写函数fun 对长度为7个字符的字符串 除首 尾字符外 将其余5个字符按ASCII值码升序排列 例如 原来的字符串为BdsihAd 则排序后输出为BAdhisd 注意 部分源程序给出如下 请勿改动主函数main和其他函数中的任何内容 仅在函数fun的花括号中填入所编写的若干语句 include include includeintfun char s intnum voidmain chars 10 printf 输入7个字符的字符串 gets s fun s 7 printf n s s 题干 试题答案 例题17试题程序 例题18编程题 试题程序 编写函数fun 它的功能是求n以内 不包括n 同时能被5与11整除的所有自然数之和的平方根s 并作为函数值返回 例如 n为1000时 函数值应为s 96 979379 注意 部分源程序给出如下 请勿改动主函数main和其他函数中的任何内容 仅在函数fun的花括号中填入所编写的若干语句 include include includedoublefun intn voidmain printf s f n fun 1000 题干 试题答案 例题18试题程序 例题19编程题 试题程序 请编写函数fun 它的功能是求Fibonacci数列中小于t的最大的一个数 结果由函数返回 其中Fibonacci数列F n 的定义为例如 t 1000时 函数值为987 注意 部分源程序给出如下 请勿改动主函数main和其他函数中的任何内容 仅在函数fun的花括号中填入所编写的若干语句 include include includeintfun intt voidmain intn n 1000 printf n d f d n n fun n 题干 试题答案 例题19试题程序 例题20编程题 试题程序 请编写一个函数fun 它的功能是计算并输出给定整数n的所有因子 不包括1与自身 的平方和 规定n的值不大于100 例如 主函数从键盘给输入n的值为56 则输出为sum 1113 注意 部分源程序给出如下 请勿改动主函数main和其他函数中的任何内容 仅在函数fun的花括号中填入所编写的若干语句 includelongfun intn voidmain intn longsum printf Inputn scanf d 题干 试题答案 例题20试题程序 例题1分析 填空1 由return语句可以看出 该函数的返回值类型是指向字符串的指针 所以应该使用符号 填空2 从ASCII码表中可以看出 小写字母的ASCII码值比对应大写字母的ASCII码值大32 根据ASCII码值判断该字母是不是大写字母 判断的标准是ASCII码值是否介于A和Z之间 填空3 根据题目的意思这里应该调用函数fun对字符串tt进行转换 所以应该使用tt作为函数的参数 例题2分析 填空1 根据题目的意思 这里是执行按顺序对每5个元素求一个平均值的操作 所以应该使用取余符号 如果是5的倍数 则该式子的值为零 填空2 根据C语言的规定 除了使用关键字void的任何一个子函数都应该有返回值 所以应该使用关键字return把变量k的值返回主函数 填空3 由题目的意思可知这里是把存在数组b中的内容依次循环输出 所以后面的变量名应该使用b i 例题3分析 填空1 从C语言的学习中我们知道 while语句的结束条件是括号中的式子结果为0 而一个字符串的结尾标志为 0 即满足循环的结束条件 所以一般情况下C语言中使用字符串的结尾作为结束循环的标志 s为指向一个数组的指针 s为取出s指向的内容 填空2 根据题目的意思 若该字母不是 z 或 Z 则该字母的ASCII码值加1 填空3 根据题目的意思 要对字符串所有字母进行遍历 使用指针进行这一过程应该使用循环 即每次都对该指针进行加一操作 例题4分析 填空1 根据题目的意思 此处是由低到高逐位地提取变量d的每一位 然后再进行判断 所以可以推断出这里应该使用取余符号 填空2 根据题目的意思 这里是把提取出来满足条件的数字依次从低到高填入一个新的变量t中 所以进行的操作应该是每一个数字都循环乘以10 再加上原来的部分 例如 依次得到数字321 最后应该输出123 填空3 由算法可以看出 这里应该是进行完毕一次提取 所以应该舍弃最低位 个位 即把变量s除以10 例题5分析 填空1 根据题目的意思 这里应该是以变量k作为判断标志 如果标志为1并且当前指针指向空格就应该把标志返回0 以便下一次检测 填空2 根据题目的意思 此处进行的是将p所指单词的最后一个字母改成大写 但是此时p已经循环到了单词后面的那个空格 所以应该对p 1进行操作 填空3 由算法可以看出 这里应该是进行函数调用 根据前面的子函数定义可以知道 参数是一个指向向字符串的指针 所以应该把数组的名字 也可以认为是指向数组首地址的指针 作为参数 例题6分析 填空1 根据题目的意思 这里应该是把要比较的字符串和原字符串的一部分进行逐个字符的比较 所以指向原字符串的指针p也应该进行每步加一的操作 填空2 根据题目的意思 此处是判断上一步的比较是否与r指向的完整的字符串相等 如果完全相同 则r应该指向字符串的末尾 即 0 填空3 由算法可以看出 这里应该是进行的整个while循环 即应该控制s指针不停的向后移动直到字符串结尾 例题7分析 填空1 根据题目的意思 这里应该是声明一个新的变量t 由后面的赋值语句以及返回语句可以明白这个变量应该是整型的 因为函数的返回值类型是int 填空2 根据题目的意思 此处是子函数的返回语句 由C语言的知识 每个语句的结尾都应该使用 填空3 fun 函数的调用方式说明fun 函数的参数应当为指针类型 即应该把变量的地址作为参数传递 符号 是取地址操作 例题8分析 错误1 依题意 把ASCII值小或相等的字符存放到c数组中 故if语句的关系运算符应为 错误2 C语言规定 每个语句要用分号结束 例题9分析 错误1 为了做后面的除法运算 j要定义为实型数 否则除得的结果将为整数 错误2 题中公式是加减相间的运算 通过j来实现 例题10分析 错误1 该行是函数的首部 不是一条语句 因此不能以分号结束 错误2 if后面应该紧跟一个条件判断表达式 若写成 if n 1 则说明该表达式的值永远为真 也就是说这个条件永远成立 没有递归执行 例题11分析 错误1 函数的返回值为实型数据 所以函数的返回类型应为double 错误2 根据阶乘的概念 从n开始 每递减1的数相乘 直到1 因此此处n递减 而不是递增 例题12分析 错误1 p为指针类型 应该是判断内容是否为空 错误2 do while语句的语法 while 后加分号 例题13分析 错误1 由于本题中函数的功能是对字符串进行处理 而不是对单个字符进行处理 因此 函数的参数应为字符串指针 错误2 if语句中要用关系运算符 而不是赋值运算符 例题14分析 错误1 k就是当前要被判断的数 是随着i值的变化而变化的 错误2 在循环中 j是数组的下标要递增 例题15分析 c b 10 1000 b 10 100 a 10 10 a 10 此语句是将a数的十位和个位数依次放在c数个位和十位上 b数的十位和个位数依次放在c数的百位和千位上 注意 和 的用法 例题16分析 本题中函数的功能是求出二维数组中每列的最大元素 首先 假设各列中的第一个元素最大 然后利用行标值的移动来依次取得各列中其他元素的值 并与假设的最大值进行比较 如果遇到更大的 则把这个更大的元素看做当前该列中最大的元素 继续与该列中其他元素比较 例题17分析 本题考查利用循环来控制数组元素的操作 首尾元素除外 因此 数组的下标值要从1开始 用循环变量i来依次取得数组中的元素 用数组中的元素s i 和s j 进行比较 如果后一个元素的ASCII码值小于前一个元素的ASCII码值 则交换这两个数组元素的值 例题18分析 本题的解题思路是逐个取得从0 n之间的所有数 对每次取得的数进行条件判断 条件是既能被5整除同时又能被11整除 注意 这两个条件要求同时成立 因此用到了 运算符 满足条件 该数就被累加到s中去 求出所有符合条件的数后 用sqrt 函数 包含于头文件中 对s求平方根 例题19分析 根据所给数列定义不难发现 该数列最终的结果是由两个数列之和组成 所以可以在循环内部始终把c看成是前两项之和 即第n项 而a始终代表第n 2项 b始终代表第n 1项 通过不断地重新赋值来实现 应注意 退出循环时得到的数c是大于指定比较的数的最小的数 而它的前一个数就是小于指定比较的数的最大的数 例题20分析 本题的解题思路是用n逐个去除以2到n 1之间的所有数 如果n能被除尽 则把所得到的一个因子的平方累加到s中去 例题1答案 1 2 Z 3 tt 例题2答案 1 2 return 3 b i 例题3答案 1 s 2 1 3 s 例题4答案 1 2 10 3 10 例题5答案 1 k 0 2 p 1 3 fun chrstr 例题6答案 1 p 2 0 3 s 例题7答案 1 int 2 3 a 例题8答案 1 错误 if p q 2 错误 k 正确 k 例题9答案 1 错误 intj 1 正确 doublej 1 0 2 错误 y 1 i i 正确 y j i i 例题10答案 1 错误 fun intn 正确 fun intn 2 错误 if n 1 正确 if n 1 例题11答案 1 错误 intfun intn 正确 doublefun intn 2 错误 result n 正确 result n 例题12答案 1 错误 if p 正确 if p 2 错误 p toupper p 1 正确 p 1 toupper p 1 例题13答案 1 错误 voidfun chars chart 正确 voidfun char s chart 2 错误 if i 2 0 s i 2 0 正确 if i 2 0 s i 2 0 例题14答案 1 错误 k n 正确 k i 2 错误 s j i 正确 s j i 例题15答案 voidfun inta intb long c c b 10 1000 b 10 100 a 10 10 a 10 例题16答案 voidfun inttt M N intpp N inti j max for j 0 jmax 如果各列中的其他元素比最大值还大 则将这个更大的元素看做当前该列中最大的元素 max tt i j pp j max 将各列的最大值依次放入pp数组中 例题17答案 intfun char s intnum chart inti j for i 1 is j 如果后面字符的ASCII码值小于该字符的ASCII码值 t s i 则交换这两个字符 s i s j s j t 例题18答案 doublefun intn doubles 0 0 inti for i 0 i n i 从0 n中找到既能被5整除同时又能被11整除的数 并将这些数求和 if i 5 0 例题19答案 intfun intt inta 1 b 1 c 0 a代表第n 2项 b代表第n 1项 c代表第n项 如果求得的数c比指定比较的数小 则计算下一个Fibonacci数 对a b重新置数 do c a b a b b c while c t 如果求得的数c比指定比较的数大时 退出循环 c a 此时数c的前一个Fibonacci数为小于指定比较的数的最大的数 returnc 例题20答案 longfun intn inti longs 0 for i 2 i n 1 i 从2 n 1中找n的所有因子 if n i 0 s i i 将所有因子求平方加 returns 将平方和返回 函数 函数的定义 函数定义的一般形式 函数的参数和函数的返回值 函数的调用 函数的调用方式 函数间的参数传递 函数的嵌套调用 函数的递归调用等 函数间的数据传递 数据传递的方式和特点 掌握值传递内在运行过程 char 字符型说明符 char字符型常量的表示 用单引号括起来的单个字符 字符常量 A g 1 字符型数据的存储格式 ASCII码 A 65g 103数字1 48 35字符串常量的表示 用双引号括起来的符号串 ThisisCstring 串长16 a 串长1 空格 串长1 不含空格 串长0 int 整型变量的说明格式 类型说明符变量列表 例如 inti j 1 整型常量的类型 1 在整型数表示范围之内 根据值大小默认类型 2 在常量后面加l或L 则认为它是longint型 for 步长型循环语句 for语句格式 for 表达式1 表达式2 表达式3 语句 for语句的变化形式 for语句中的三个表达式中的任意一个都是可以省略的 但是分号不能省略 1 省略表达式2 则for 表达式1 表达式3 就形成了一个死循环 2 省略表达式1和表达式3 则for 表达式2 就等同于while 表达式 3 表达式1 2 3全省略 则for 就等同于while 1 while 当型循环语句 while语句格式为while 表达式 语句 说明 语句部分可以是简单语句 也可以是复合语句 注意 1 while 0 由于循环的条件表达式恒等于0 循环体永远也不会执行 是编程者的错误 2 while 1 由于循环的条件表达式恒等于1 所以不可能通过循环控制条件来结束循环体的执行 称为 死循环 3 为了保证循环正常运行 应该特别注意 循环控制条件 控制条件的初始状态 初始值 循环体内部对控制条件的影响 do while 直到型循环语句 do while语句格式 do 语句 while 表达式 do while与while的区别 do while语句先执行循环体然后再判断循环控制条件 而while是先判断条件之后再执行循环体 使用do while构成的循环 循环体部分至少要执行一次 而采用while循环 循环体部分有可能一次也不会执行 break语句 break语句格式 break break语句功能 1 在switch语句中结束case子句 使控制转到switch语句之外 2 在循环语句的循环体中使用 结束循环过程 使控制转移到整个循环语句之外的下一条语句处 注意事项 1 在嵌套循环中 break语句仅能退出一层 当前 循环 2 若在循环语句中包含了switch语句 那么switch语句中的break语句仅能使控制退出switch语句 3 break语句并不是程序设计中必不可少的语句 可以通过改变程序的结构去掉 continue语句 continue语句格式 continue continue语句功能 仅能在循环语句中使用 它的作用不是结束循环 而是开始一次新的循环 对于for语句 将控制转到表达式3 对于while和do while语句 将控制转到条件测试部分 scanf语句 格式输入函数scanf 格式控制 地址列表 注意 1 输入数据时 要严格按照给定的方式分隔数据 不特殊给定时 用空格 回车 Tab键分隔数据 当给定分隔符

温馨提示

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

评论

0/150

提交评论