江苏省XY中等专业学校2021-2022-2教案 编号:
备课组别 | 计算机 | 上课 日期 | 主备 教师 | 授课 教师 | ||||
课题 | 专题七(141) | |||||||
教学 目标 | 掌握整数组合的方法 | |||||||
掌握字符串截取子字符串的技巧 | ||||||||
掌握统计字符串的字符个数 | ||||||||
重点 | 掌握字符串截取和统计的技巧 | |||||||
难点 | 掌握字符串截取和统计的技巧 | |||||||
教法 | 讲授法、案例教学法、讨论法 | |||||||
教学设备 | 黑板 计算机 网络机房 | |||||||
教学 环节 | 教学活动内容及组织过程 | 个案补充 | ||||||
教 学 内 容 | 程序填空 共1题 (共计20分) 第1题 (20.0分) 题号:79 难度:中 第1章 /*-------------------------------------------- 题目:已知字符串subStr为str的子串,在母串str中出subStr,在其前面插入一个'@'字符,需保持子串内容完整性。 例如:在"Goqqqq;Comeqqq"中到"qq"后,将字符串改变为: "Go@qq@qq;Come@qqq" -------------------------------------------- 注意:除要求填空的位置之外,请勿改动程序中的其他部分。 --------------------------------------------------*/ #include<stdio.h> #include<string.h> #include<math.h> #include<ctype.h> #include<stdlib.h> void changeStr(char str[],char subStr[]) { int i=0,j,k,pop,len,lenSub; len=strlen(str); lenSub=strlen(subStr); while(str[i]!=0) { j=0; k=i; /******************SPACE******************/ while(【?】&&subStr[j]!=0) { k++; j++; if(subStr[j]=='\0') { for(pop=len;pop>i;pop--) { str[pop]=str[pop-1]; } str[pop]='@'; /******************SPACE******************/ 【?】; len++; } } i++; } } int main() { char str[100]="Goqqqq;Comeqqq", subStr[10]="qq"; changeStr(str,subStr); puts(str); return 0; } 字符串截取函数c语言程序改错 共1题 (共计30分) 第1题 (30.0分) 题号:81 难度:中 第1章 /*---------------------------------------------- 题目:void fun(char s[])函数将字符串s按如下规则进行压缩,将字符串中连续相同的字符表示成m|x的形式(m为该字符,x为该字符出现的次数,其中x不会大于9)。 例如:原字符串为"aaaacc333bkkkggggd",经过压缩处理后的字符串为 "a|4c|23|3b|1k|3g|4d|1"。 -------------------------------------------------- 注意:不得增行或删行,也不得更改程序的结构。 ----------------------------------------------------*/ #include<stdio.h> #include<string.h> #include<math.h> #include<ctype.h> #include<stdlib.h> void fun(char s[]) { int i,j,n,c,k; char ch; for(i=0; s[i]; i++) { c=1; ch=s[i]; for(j=i+1; s[j]; j++) { if (ch!=s[j]) { break; } c++; } /***************FOUND****************/ j=i+c; while(s[j]) { s[j-c+2] = s[j+1]; j++; } n=strlen(s); /***************FOUND****************/ for(j=n-1; j>i; j--) { s[j+2]=s[j]; } s[++i]='|'; /***************FOUND****************/ s[++i]=c; } } int main() { char s[100]="aaaacc333bkkkggggd"; printf("压缩前的数据: "); puts(s); fun(s); printf("压缩后的数据: "); puts(s); return 0; } 程序设计 共1题 (共计30分) 第1题 (30.0分) 题号:80 难度:中 第1章 /*---------------------------------------------- 题目:对一个5位正整数,在保持各位数字相对位置保持不变的条件下,出其最大值。 例如:82851 各位数字相对位置保持不变,其最大值是 85182 15426 各位数字相对位置保持不变,其最大值是 61542 71624 各位数字相对位置保持不变,其最大值是 71624 31525 各位数字相对位置保持不变,其最大值是 53152 并对最大值进行降序排序。 程序运行结果如下: 82851 15426 71624 31525 85182 71624 61542 53152 1.编写函数 void find(int b[],int a[]),对a数组中N个元素,按照上面要求,出各自最大值,保存在b数组中。 2.编写函数 void sort(int b[]),对b数组中N个元素降序排序,排序算法自定。 课后作业 | |||||||
板 书 设 计 | 考点分析 一、整数组合 二、字符串截取子字符串 三、统计字符串的字符个数 | |||||||
教后札记 | ||||||||
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论