下列给定程序中,函数fun的功能是:在形参s所指字符串中寻找与参数c相同的字符,并在其后插入一个与之相同的字符,若找不到相同的字符则不做任何处理。 例如,若S所指字符串为“baaeda”,e中的字符为a,执行后s所指字符串为“baaaacdaa”。

admin2016-12-06  33

问题 下列给定程序中,函数fun的功能是:在形参s所指字符串中寻找与参数c相同的字符,并在其后插入一个与之相同的字符,若找不到相同的字符则不做任何处理。
    例如,若S所指字符串为“baaeda”,e中的字符为a,执行后s所指字符串为“baaaacdaa”。
    请在程序的下画线处填入正确的内容并将下画线删除,使程序得出正确的结果。
    注意:部分源程序给出如下。
    不得增行或删行,也不得更改程序的结构!
    试题程序:
1   #include<stdio.h>
2   void fun(char*s,char c)
3   {  int i,j,n;
4   /*********found*********/
5    for(i=0;s!=【1】;i++)
6    if(s==c)
7    {
8   /********* found*********/
9    n=【2】
10    while(s[i+1+n]!=’\0’)
11    n++;
12    for(j=i+n+l;j>i;j--)
13    s[j+1]=s[j];
14    /********* found*********/
15    s[j+1]=【3】;
16    i=i+1;
17   }
18  }
19  main()
20  {  char s[80]=’’baacda’’,c;
21   printf("\nThe string:%s\n’’,s);
22   printf("\nInput a character:’’);
23    scanf(’’%c’’,&c);
24    fun(s,c); printf(’’\nThe result is:%s\
25   n’’,s);
26   }

选项

答案(1)’\0’ (2)0 (3)c

解析 填空1:for语句循环条件是判断是否到达字符串结尾,即当前字符是否为’\0’。
    填空2:while语句用以确定字符串的长度,所以
变量n赋初值为0。
    填空3:题目要求如果找到与参数c相同的字符,就在后面插入一个相同的字符,且找到后应该给数组元素赋值,本题目给出参数为c。
转载请注明原文地址:https://kaotiyun.com/show/QVDp777K
0

最新回复(0)