1[填空题]请补充函数proc(),该函数的功能是将字符串str中的大写字母都改为对应的小写字母,其他字符不变。例如,若输入“How Are You?”,则输出“how are you?”。
注意:部分源程序给出如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。
试题程序:
参考解析:
【解析】要将字符串中所有的大写字母改为对应的小写字母,首先应该找出字符串中所有的小写字母。判断一个字符是否是大写字母,只要看其是否在A和Z之间,因此【1】处填“str[i]%=ˊZˊ”;每找到一个大写字母,就将其改为小写字母。大写字母与小写字母之间的关系为ASCⅡ相差32,因此【2】处填“sty[i]+=32”;得到的新的字符串放在str中,要将其返回给主函数,因此[31处填“str”。
2[简答题]下列给定程序中,函数proc()的功能是逐个比较str1,str2两个字符串对应位置中的字符,把比ASCⅡ值大或相等的字符依次存放到str数组中,形成一个新的字符串。
例如,str1中的字符串为fshADfg,str2中的字符串为sdAEdi,则str中的字符串应为sshEdig。
请修改程序中的错误,使它能得到正确结果。
注意:不要改动main()函数,不得增行或删行,也不得更改程序的结构。
试题程序:
参考解析:
【解析】题目中要求将ASCIl码值较大的字符放到新的字符串中,因此if的条件判断语句“if(*p>=*q)”应改为“if(*p<=*q)”;在C语言中,每一条语句的结束是以“;”来标识的,因此k++后应该加上分号。
3[单选题]下列程序执行后的输出结果是( )。
A.6B.7C.8D.9
参考答案:A
参考解析:本题考查函数的调用,从主函数传递到调用函数中,*a的值为0,因此当执行完调用函数后,6[0]的值为6。
4[单选题] 有以下程序
程序的运行结果是
A.14B.20C.10D.16
参考答案:A
参考解析:*(*(P+m)+k)系统默认为指针指向数组中第[m][k]个元素,因此,在for循环中,n+=*(*(P+m)+k);执行的是将数组x[0][1]和x[1][1]累加后赋值给n,最后进行输出,答案为A选项。
5[单选题] 有两个关系R、S如下:
由关系R通过运算得到关系s,则所使用的运算为( )。
A.选择B.投影C.插入D.连接
参考答案:B
参考解析:投影运算是指对于关系内的域指定可引人新的运算。本题中S是在原有关系R的内部进行的,是由R中原有的那些域的列所组成的关系。所以选择8。
6[单选题] 下列叙述中正确的是( )。
A.一个逻辑数据结构只能有一种存储结构
B.逻辑结构属于线性结构,存储结构属于非线性结构
C.一个逻辑数据结构可以有多种存储结构,且各种存储结构不影响数据处理的效率
D.一个逻辑数据结构可以有多种存储结构,且各种存储结构影响数据处理的效率
参考答案:D
参考解析:数据的存储结构是指数据的逻辑结构在计算机存储空间中的存放形式。一种数据结构可以根据需要采用不同的存储结构,存储结构有顺序和链式两种。不同的存储结构,其处理的效率不同。
相关推荐:
北京 | 天津 | 上海 | 江苏 | 山东 |
安徽 | 浙江 | 江西 | 福建 | 深圳 |
广东 | 河北 | 湖南 | 广西 | 河南 |
海南 | 湖北 | 四川 | 重庆 | 云南 |
贵州 | 西藏 | 新疆 | 陕西 | 山西 |
宁夏 | 甘肃 | 青海 | 辽宁 | 吉林 |
黑龙江 | 内蒙古 |