三级数据库技术机试-274

上传人:m**** 文档编号:51288604 上传时间:2022-01-25 格式:DOC 页数:2 大小:18.50KB
返回 下载 相关 举报
三级数据库技术机试-274_第1页
第1页 / 共2页
三级数据库技术机试-274_第2页
第2页 / 共2页
亲,该文档总共2页,全部预览完了,如果喜欢就下载吧!
资源描述
三级数据库技术机试 -274( 总分: 100.00 ,做题时间: 90 分钟 )一、上机题( 总题数: 1,分数: 100.00)1.下列程序的功能是;把 s 字符串中所有的字符左移一个位置,串中的第一个字符移到最后。请编制函数 chg(char*s) 实现程序要求,最后调用函数 readwriteDat() 把结果输出到 out63.dat 文件中。例如;s字符串中原有内容为 Mn, 123xyZ,则调用该函数后,结果为 n, 123xyZM。 注意:部分源程序已给出。请勿改动主函数 main() 和输入输出函数 readwriteDAT() 的内容。试题程序:#include #include #define N 81void readwriteDAT();void chg(char *s) main ( )char a N;clrscr ( ); printf(Enter a string :);gets (a);printf(The original string is :);puts (a);chg (a);printf(The string after modified :);puts (a); readwriteDAT ( )void readwriteDAT ()int i;char a N;unsigned char *p;FILE *rf,*wf; rf=fopen(in63.dat,r); wf=fopen(out63.dat,w); for(i=0;i 10;i+) fgets(a,80,rf); p=strchr(a,/n);if(p) *p=0;chg(a); fprintf(wf,%s/n,a);fclose(rf); fclose(wf);分数: 100.00 ) 正确答案: (void chg(char*s)int i, strl ;char ch ; strl=strlen(s) ; /* 求字符串的长度 */ ch=*s ; /* 将第一个字符暂赋给 ch*/ for(i=0 ; i strt-1/i+)/*将字符依次左移 */*(s+i)=*(S+i+1);*(s+strl-1)=ch ; /* 将第一个字符移到最后 */)解析: 解析 本题考查的知识点如下:(1) 数组中元素的移动。(2) 指针的使用。我们可以使用一个循环实现数组中所有字符元素的左移。这里要注意的是第1 个字符要移至最后 1 个字符处,所以首先要将第 1 个字符保存。在移动时,要从左到右依次移动,否则,左侧的字符会在移动前被其 右侧的字符覆盖。在这里使用了指针,初始时,指针指向数组的第1 个元素,随着地址的增加指针指向数组后面的元素。例如,若地址加 2 ,则指向数组的第 3 个元素。
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 活动策划


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!