函数fun的功能是:将s所指字符串中下标为偶数同时ASCII值为奇数的字符删除,s所指串中剩余的字符形成的新串放在t所指的数组中。 例如,若s所指字符串中的内容为’’ABCDEFG12345’’,其中字符C的ASCII码值为奇数,在数组中的下标为偶

admin2016-12-06  36

问题 函数fun的功能是:将s所指字符串中下标为偶数同时ASCII值为奇数的字符删除,s所指串中剩余的字符形成的新串放在t所指的数组中。
    例如,若s所指字符串中的内容为’’ABCDEFG12345’’,其中字符C的ASCII码值为奇数,在数组中的下标为偶数,因此必须删除;而字符1的ASCII码值为奇数,在数组中的下标为奇数,因此不应当删除,其他依此类推。最后t所指的数组中的内容应是’’BDFl2345’’。
    注意:部分源程序在文件PROG1.C中。
    请勿改动main函数和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。
    试题程序:
1   #include<stdio.h>
2   #include<string.h>
3   void fun(char * s,char t[])
4  {
6  }
7  main()
8    {
9   char s[100],t[100];void NONO();
10    printf("\nPlease enter string s:’’);
11    scanf(’’%s’’,s);
12   fun(s,t);
13  printf(’’\nThe result is:%s\n’’,t);
14    NONO();
15  }
16   void NONO(){/*本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。*/
17   char s[100],t[100];
18   FILE*rf,*wf;
19    int i;
20    rf=fopen(’’in.dat’’,’’r’’);
21    wf=fopen(’’out.dat’’,’’W’’);
22   for(i=0;i<1 0;i++){
23    fscanf(rf,’’%s’’,s);
24    fun(s,t);
25    fprintf(wf,’’%s\n’’,t);
26    }
27    fclose(rf);
28    fclose(wf);
29  }

选项

答案1 void fun(char *s,char t[]) 2 { 3 int i,j =0; 4 for(i=0 ; i
解析 本题是从一个字符串按要求乍成另一个新的字符串。我们使用for循环语句来解决这个问题。在赋值新的字符串之前,先对数组元素的下标和ASCII码的值进行判断,将满足要求的元素赋给新的字符串。
转载请注明原文地址:https://kaotiyun.com/show/mVDp777K
0

最新回复(0)