全国计算机三级数据库技术上机试题100道(13)
发布时间:2021-06-07
发布时间:2021-06-07
11. 【考点分析】 本题考查对字符数组中的字符进行计算以及替换。考查的知识点主要包括:字符串数组的访问,字符ASCII码的位运算,if判断结构以及逻辑表达式。
【解题思路】 首先通读题目,得知此题属于字符计算问题;其次分析题干要求,本题要求实现StrCharJL()函数的功能,分析后可以归纳出3个关键点:关键点1如何对字符数组的元素逐一访问;关键点2如何对字符的ASCII码做左移的位运算;关键点3如何根据条件(移位后的ASCII值小于等于32或大于100)对计算结果进行判断,并分别对满足与不满足条件的情况进行处理。
接着分析每一步的解决方法,关键点1通过字符串处理函数strlen获取字符串的长度,再通过获得的长度使用下标法对字符数组的元素逐一访问;关键点2可以直接对字符的ASCII码进行位运算;关键点3通过if判断结构和逻辑表达式即可实现功能。
【参考答案】
void StrCharJL(void)
{ int i,j; /*定义循环控制变量*/
int str; char ch; for(i=0;i<maxline;i++) /*以行为单位获取字符*/ { str=strlen(xx[i]); /*求得当前行的字符串长度*/ for(j=0;j<str;j++) { ch=xx[i][j]<<4; if(ch<=32 || ch>100) continue; /*如果左移4位后字符的ASCII值小于等于32或大于100,则原字符保持不变*/
else xx[i][j]+=4; /*否则就把左移后的字符ASCII值加上原字符的ASCII*/
} }
上一篇:爱读书读好书升旗仪式发言稿
下一篇:终端导购销售技巧