求大神指示这两道c语言的题
3个回答
展开全部
(4)向文件用fprintf写数据是在for循环中进行的,而for循环体的第一句是fseek(fp,0L,0);,这一句的意思是“把文件内部指针从文件开头向后移动0个字符位置”,其结果就是指针停在文件开头。每循环一次都这么做,所以1,2,3,4,5,6六个数都写在文件开头的位置上了——2覆盖了1,3覆盖了2……6覆盖了5。最后文件里只在开头那个位置上存储了一个数6,所以读到k里就是6。
(5)A是错误的,所以是应选项。x[10]的类型是struct st,所以从指针x开始一次写10个元素(如B)或分别写10个块(如C)或从第一个元素的地址开始依次一次写一个元素,然后地址增一个元素之量直到10元素写完都可以。唯独A只把第一个元素连续 写了10次!
(5)A是错误的,所以是应选项。x[10]的类型是struct st,所以从指针x开始一次写10个元素(如B)或分别写10个块(如C)或从第一个元素的地址开始依次一次写一个元素,然后地址增一个元素之量直到10元素写完都可以。唯独A只把第一个元素连续 写了10次!
展开全部
4)因为在循环中,每次都将文件读写指针移动到头上,然后再写入。所以只有最后一次的写入才有效,前面写入的数据都被覆盖了。最后读入和输出的是6.
5)图上的说明已经说得很清楚了。就是选A。
5)图上的说明已经说得很清楚了。就是选A。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询