第28练 单元6 从杨辉三角形到回文诗及考试系统实现《C语言程序设计》(高教版第2版)一课一练

| 2份
| 7页
| 73人阅读
| 0人下载

内容正文:

编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《C语言程序设计》(高教版第2版)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。 本卷是《C语言程序设计》(高教版第2版)一课一练的单元6的第28练,内容涵盖单元6“考试系统”的数据存储的6.4~6.5 从杨辉三角形到回文诗及考试系统实现。 《C语言程序设计》(高教版第2版)一课一练 第28练 单元6 “考试系统”的数据存储 6.4~6.5 从杨辉三角形到回文诗及考试系统实现 1、 单项选择题(本题共5小题) 1、在 C 语言中判断汉字回文诗时,由于单个汉字占 2 个字节,比对前后对应汉字的正确条件是( ) A. poem[i] == poem[j] B. poem[i] == poem[j-1] && poem[i+1] == poem[j] C. poem[i] == poem[j] && poem[i+1] == poem[j+1] D. poem[i+1] == poem[j] 【答案】B 【解析】汉字占 2 字节,前一个汉字的两个字符需与后一个汉字的两个字符反向匹配(前汉字第 1 字节 = 后汉字第 2 字节,前汉字第 2 字节 = 后汉字第 1 字节),选项 B 符合该逻辑;其他选项仅比对单个字符或顺序错误,无法正确判断汉字是否相同。 2、从杨辉三角形的斜线方向提取的数列是( ) A. 等差数列 B. 等比数列 C. 斐波那契数列 D. 素数数列 【答案】C 【解析】杨辉三角形的斜线方向(如从左上角到右下角的斜线)提取的数值依次为 1、2、3、5、8…,完全符合斐波那契数列 “前两项为 1,从第三项开始是前两项之和” 的定义。 3、定位汉字字符串末尾结束符'\0'的循环条件,正确的是( ) A. while(poem[j] == '\0') B. while(poem[j] != '\0') C. while(j < 100) D. while(poem[j] != ' ') 【答案】B 【解析】字符串以'\0'作为结束标志,循环需遍历到该字符为止,因此条件为当当前字符不是'\0'时继续循环,选项 B 正确;选项 A 逻辑相反,选项 C 未考虑实际字符串长度,选项 D 仅跳过空格,无法定位末尾。 4、回文诗判断的循环终止条件,合理的是( ) A. i > j B. i >= j C. i < j D. i == j 【答案】B 【解析】当i >= j时,说明前后对应的汉字已全部比对完成,无需继续循环;若i > j会提前终止部分对称场景的比对,i < j是循环执行的条件而非终止条件。 5、在 GBK 编码标准下,单个汉字在 C 语言字符串中占用的字节数是( ) A. 1 字节 B. 2 字节 C. 3 字节 D. 4 字节 【答案】B 【解析】GBK 编码是中文常用编码标准,单个汉字固定占用 2 字节存储空间,这是汉字回文判断中双字符比对的核心依据。 2、 判断题(本题共4题) 1、在 C 语言中存储汉字字符串时,每个汉字占用 2 个字节的存储空间。( ) 【答案】√ 【解析】在 GBK 等常用中文编码中,单个汉字占用 2 字节,这是处理汉字字符串的基础常识,也是回文诗判断的核心前提。 2、杨辉三角形的每一行数字顺读和反读完全相同,具有回文特性。( ) 【答案】√ 【解析】杨辉三角形每行数字对称,例如第五行 “1、4、6、4、1”,顺读和反读一致,符合回文的定义。 3、判断汉字回文诗时,循环变量i每次加 1、j每次减 1 即可完成所有汉字的比对。( ) 【答案】× 【解析】汉字占 2 字节,若步长为 1 会拆分单个汉字的两个字节,导致比对错误,正确步长应为i += 2、j -= 2。 4、杨辉三角形的斜线方向提取的数列是等差数列。( ) 【答案】× 【解析】斜线方向提取的数列是斐波那契数列,相邻项的差值不固定,不符合等差数列 “差值恒定” 的特征。 3、 程序填空题(本题共1题) 1、题目描述:以下程序用于判断输入的汉字诗句是否为回文诗,请补充缺失代码使程序正常运行。 #include <stdio.h> int main() { char poem[100]; int i = 0, j = 0; // 输入诗句 printf("请输入诗句: "); gets(poem); // 找到字符串末尾的结束符'\0'位置 while( (1)____ ) { j++; } // 定位到最后一个汉字的第二个字节位置 j = j - 3; // 循环比对前后对应汉字 while( (2)____ ) { // 判断当前前后汉字是否相同 if( (3)____ ) { // 移动到下一组待比对的汉字 i += 2; j -= 2; } else { printf("该诗句不是回文诗! "); return 0; } } printf("该诗句是回文诗! "); return 0; } 【答案】 (1) poem[j] != '\0' (2) i < j (3) poem[i] == poem[j-1] && poem[i+1] == poem[j] 【解析】 (1)通过循环遍历字符串,直到遇到结束符'\0',此时j指向结束符的位置,为后续定位最后一个汉字做准备。 (2)当i < j时,说明仍有未比对的汉字对,继续循环;当i >= j时,所有汉字比对完成,判定为回文。 (3)单个汉字占 2 字节,前一个汉字的两个字节需与后一个汉字的两个字节反向匹配,确保两个汉字完全相同,这是回文判断的核心条件。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $ 编写说明:考虑到中职学生普遍基础知识相对薄弱的情况,我们依据支架式教学理念,精心编制了《C语言程序设计》(高教版第2版)一课一练。专辑里的每一份练习,都与课堂所授知识点紧密相关,题目围绕课堂所学知识点呈现。目的在于激发学生的学习兴趣,培养他们的学习自觉性,帮助学生扎实掌握课程的基本概念与基本方法,为他们后续的进一步提升奠定坚实基础。 本卷是《C语言程序设计》(高教版第2版)一课一练的单元6的第28练,内容涵盖单元6“考试系统”的数据存储的6.4~6.5 从杨辉三角形到回文诗及考试系统实现。 《C语言程序设计》(高教版第2版)一课一练 第28练 单元6 “考试系统”的数据存储 6.4~6.5 从杨辉三角形到回文诗及考试系统实现 1、 单项选择题(本题共5小题) 1、在 C 语言中判断汉字回文诗时,由于单个汉字占 2 个字节,比对前后对应汉字的正确条件是( ) A. poem[i] == poem[j] B. poem[i] == poem[j-1] && poem[i+1] == poem[j] C. poem[i] == poem[j] && poem[i+1] == poem[j+1] D. poem[i+1] == poem[j] 2、从杨辉三角形的斜线方向提取的数列是( ) A. 等差数列 B. 等比数列 C. 斐波那契数列 D. 素数数列 3、定位汉字字符串末尾结束符'\0'的循环条件,正确的是( ) A. while(poem[j] == '\0') B. while(poem[j] != '\0') C. while(j < 100) D. while(poem[j] != ' ') 4、回文诗判断的循环终止条件,合理的是( ) A. i > j B. i >= j C. i < j D. i == j 5、在 GBK 编码标准下,单个汉字在 C 语言字符串中占用的字节数是( ) A. 1 字节 B. 2 字节 C. 3 字节 D. 4 字节 2、 判断题(本题共4题) 1、在 C 语言中存储汉字字符串时,每个汉字占用 2 个字节的存储空间。( ) 2、杨辉三角形的每一行数字顺读和反读完全相同,具有回文特性。( ) 3、判断汉字回文诗时,循环变量i每次加 1、j每次减 1 即可完成所有汉字的比对。( ) 4、杨辉三角形的斜线方向提取的数列是等差数列。( ) 3、 程序填空题(本题共1题) 1、题目描述:以下程序用于判断输入的汉字诗句是否为回文诗,请补充缺失代码使程序正常运行。 #include <stdio.h> int main() { char poem[100]; int i = 0, j = 0; // 输入诗句 printf("请输入诗句: "); gets(poem); // 找到字符串末尾的结束符'\0'位置 while( (1)____ ) { j++; } // 定位到最后一个汉字的第二个字节位置 j = j - 3; // 循环比对前后对应汉字 while( (2)____ ) { // 判断当前前后汉字是否相同 if( (3)____ ) { // 移动到下一组待比对的汉字 i += 2; j -= 2; } else { printf("该诗句不是回文诗! "); return 0; } } printf("该诗句是回文诗! "); return 0; } 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 $

资源预览图

第28练 单元6 从杨辉三角形到回文诗及考试系统实现《C语言程序设计》(高教版第2版)一课一练-第1页
1

由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。