在指定位置插入字符
2015-09-23 11:04
197 查看
下列给定程序中,函数fun的功能是;在形参s所指字符串中寻找与参数c相同的字符,并在其后插入一个与之相同的字符,若找不到相同的字符则不做任何处理。 例如,若S所指字符串为”baacda”,c中的字符为a,执行后s所指字符串为”baaaacdaa”.
请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
解答:(1) ‘\0’ , (2) 0, (3) c;
1. 最外层for循环的作用是遍历字符串,直到遇到字符串结束标志’\0’;
2. 这里n的作用是找到字符串的结尾位置s[ i + 1 + n] == ‘\0’,n表示对i+1位置的偏移量,从0开始;
3. 移动操作结束后,在当前字符的下一个位置插入指定的字符c.
请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
void fun(char *s, char c) { int i, j, n; for (i = 0; s[i] != _(1)_ ; i++) { if (s[ i ] == c) { n = _(2)_ ; while (s[ i + 1 + n] != '\0') n++; for (j = i + n + 1; j>i; j--) s[j + 1] = s[j]; s[j + 1] = _(3)_ ; i = i + 1 } } } main( ) { char s[ 80 ] = "baacda", c; printf ("\nThe string:% s\n"s); printf ("\nInput a character:"); scanf("% c" % c); fun(s, c); printf ("\nThe result is:%s\n", s); }
解答:(1) ‘\0’ , (2) 0, (3) c;
1. 最外层for循环的作用是遍历字符串,直到遇到字符串结束标志’\0’;
2. 这里n的作用是找到字符串的结尾位置s[ i + 1 + n] == ‘\0’,n表示对i+1位置的偏移量,从0开始;
3. 移动操作结束后,在当前字符的下一个位置插入指定的字符c.
相关文章推荐
- Item 34:区分接口继承和实现继承 Effective C++笔记
- 3、下载与安装Eclipse
- spark安装mysql与hive
- 如何在同一台机器上安装不同版本的JRE
- 简单的侧边栏
- JS 操作COOKIE
- Android获取手机电话簿信息
- 蓝牙通信(一)——打开和关闭蓝牙
- 杭电2544-最短路(dijkstra)
- 探讨C语言中关键字volatile的含义_C
- MySQL多实例安装初探
- Some Modest Advice for Graduate Students
- 蓝牙通信(一)——打开和关闭蓝牙
- Stream类
- 关于 redis、memcache、mongoDB 的对比
- JavaScript类的写法(一)
- 移动web页面前端开发总结
- SSH框架学习总结及注意事项
- 关于相似图片搜索
- TCP/IP 协议(三)