首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
阅读以下说明、C函数和问题,将解答写入答题纸的对应栏内。 【说明1】 函数test_fl(int m,im n)对整数m、n进行某种运算后返回一个整数值。 【c函数1】 int test_f1 (int m,int n) { int k; k=m>
阅读以下说明、C函数和问题,将解答写入答题纸的对应栏内。 【说明1】 函数test_fl(int m,im n)对整数m、n进行某种运算后返回一个整数值。 【c函数1】 int test_f1 (int m,int n) { int k; k=m>
admin
2010-04-12
51
问题
阅读以下说明、C函数和问题,将解答写入答题纸的对应栏内。
【说明1】
函数test_fl(int m,im n)对整数m、n进行某种运算后返回一个整数值。
【c函数1】
int test_f1 (int m,int n)
{ int k;
k=m>n?m:n;
for(; (k%m! =O) I I (k%n! =0);k++);
return k;
)
【问题1】(5分)(1)请写出发生函数调用test_fl(9,6)时,函数的返回值;(2)请说明函数test_f1的功能。
【说明2】
设在某c系统中为每个字符分配1个字节,为每个指针分配4个字节,sizeof(x)计算为x分配的字节数。
函数test_12Q用于测试并输出该c系统为某些数据分配的字节数。
【c函数2】
void test_f2()
{ char str[] =“NewWorld”; char*p=str; char i=‘\0’; VOid*ptr=malloc(50);
printf(”%d\t”,sizeof(str));printf(“%d\n”,sizeof(p)),
printf(”%d\t”,sizeof(i)); printf(”%d\n”,sizeof(ptr));
}
【问题2】(4分)
请写出函数test_f2()的运行结果。
【说明3】
函数test_f3(char S[])的功能是:将给定字符串S中的所有空格字符删除后形成的串保存在字符数组tstr中(串S的内容不变),并返回结果串的首地址。
【C函数3】
char*test_f3(const char s[])( char tstr[50]=(‘\0’); unslgned int i,k=0;
for(i=0;i(strlen(s);i++)
if(s
!=‘’)tstr[k++]=s
;
return tStr ;
)
【问题3】(6分)
函数test_f3()对返回值的处理有缺陷,请指出该缺陷并说明修改方法。
选项
答案
问题l:(1)18 (2)求m和n的最小公倍数 问题2: 9 4 1 4 问题3: 局部数组存放字符串作为函数的返回值是不可取的。应使用malloc {}动态分配函数来进行分配空间,存储字符串结果,返回其首指针。
解析
问题l:
阅读代码,我们可以看出k在的三行取得的是m和n中的最大值,for循环的循环主体为空,可是却要满足“(k%m!=O)I I(k%n!=0)”的条件才能退出循环,即要求k既是m的倍数也是n的倍数,而且k是通过自增得到的,即遇到第一个满足条件的值就立即退出循环返回k值,所以k是m和n的最小公倍数。调用test_f1(9,6)时,返回9和6的最小公倍数18。
问题2:
9 4
1 4
str是char型数组,sizeof(str)球的是整个数组的长度,数组中总共保存了8个字符和1个结束符‘\O’,所以长度为9;p是char-型的指针,sizeof(p)求的是指针的长度,而不是p所指向的字符串的长度,指针的长度是固定的4个字节;i是char型的字符,系统为每个字符分配一个字节,故长度为1;ptr是类型为空的指针,虽然类型为空但只能说明ptr所指向的对象的类型,ptr自身是一个指针,是有固定长度4的。
问题3:
tstr是一个char型数组,但它是在函数test_f3中定义的局部变量,在函数调用结束时内存空间就会被释放掉,返回的指针可能为空,也有可能是乱码,正确的修改方法就是使用malloc函数来动态地申请内存,然后返回这片内存的首指针,这样就会避免函数返回时内存被释放掉。另外需要注意的是,本大题在一开始就指明是C函数,所以这里不可以使用new来动态申请内存。
转载请注明原文地址:https://www.kaotiyun.com/show/wBjZ777K
本试题收录于:
程序员下午应用技术考试题库软考初级分类
0
程序员下午应用技术考试
软考初级
相关试题推荐
抽样调查是收集数据的重要方法之一。抽样调查所遵循的原则不包括______。
国家大型博物馆存放有大量珍贵文物。为安全管理文物,可采用__________技术,一旦文物被移动,能自动记录。若是非法移动,则会自动报警。
在Excel的A1单元格中输入函数“=ROUND(3.1415,2)”,则A1单元格中显示的值为(57)。
在Excel2003中,A1到E6单元格的值如下图所示,若在A7单元格中输入计算众数的函数“=MODE(A1:E6)”,按回车键后,则.A7单元格显示的值为(47)。
在Excel中,设单元格A1中的值为100,B1中的值为200,A2中的值为300,B2中的值为400,若在A3单元格中输入函数“=SUM(A1:B2)”,按回车键后,A3单元格中的值为()。
在Word中,下列关于拆分表格的叙述中,正确的是______。
在用Word软件编辑文档时,若误删除了一个数据,随后可使用______命令进行恢复。
下列关于Word2007拼写和语法检查的叙述中,不正确的是__________。
为使双击指定类型的文件名就能调用相应的程序来打开处理它,需要将这种文件类型与相应的程序建立文件(23)。
Windows7中,在控制面板中,通过(32)________________可以查看系统的一些关键信息,如显示当前的硬件参数、调整视觉效果、调整索引选项、调整电源设置及磁盘清理等。
随机试题
某企业每年需要某种原材料8000吨,单次订货费用为400元,每吨年保管费为160元,则该企业的经济订货批量为()吨。
论述古典商业循环理论的内容。
具备独立施工条件并能形成独立使用功能的建筑物及构筑物为一个()。
根据《安全生产许可证条例》,施工企业变更名称、地址、法定代表人等,应当在变更后()日内,到原安全生产许可证颁发管理机关办理安全生产许可证变更手续。
世界上最大规模的,唯一建筑正规,保存完整的“八卦城”是新疆的____,它自古以来就是祖国西部边陲重要战略要地,是新疆乃至全国的著名避暑和旅游胜地。
上级国家机关的决议、决定、命令和指示,如有不适合民族自治地方实际情况的,自治机关可以报经该上级国家机关批准()。
“木马”程序是目前比较流行的病毒文件,与一般的病毒不同,它不会自我繁殖。也并不“刻意”地去感染其他文件,它通过将自身伪装成正常文件吸引用户下载执行,为施种木马者打开被种者电脑的门户,使施种者可以任意毁坏、窃取被种者电脑中的文件,甚至远程操控被种者的电脑。根
根据以下资料,回答下列题。2013年全年,某市农业总产值412.36亿元,增长3.8%,其中,种植业产值217.16亿元,增长4.4%;林业产值3.09亿元,增长2.8%;畜牧业产值108.63亿元,增长2.4%,渔业产值73.20亿元,增长5.
首次向地方派驻刺史的皇帝是()。
在命令按钮Command1的Click事件中,改变该表单的标题Caption属性为"学生管理",下面正确的命令为
最新回复
(
0
)