请编写函数fun(),其功能是将s所指字符串中除了下标为奇数、同时ASCII值也为奇数的字符之外,其余的所有字符都删除。字符串中剩余的字符所形成的一个新的字符串放在t所指的数组中。 例如:s所指字符串中的内容为ABCDEFG12345,其中字符A,的

admin2010-02-08  26

问题 请编写函数fun(),其功能是将s所指字符串中除了下标为奇数、同时ASCII值也为奇数的字符之外,其余的所有字符都删除。字符串中剩余的字符所形成的一个新的字符串放在t所指的数组中。
   例如:s所指字符串中的内容为ABCDEFG12345,其中字符A,的ASCII码值虽为奇数,但元素所在的下标为偶数,因此必需删除;字符1的ASCII码值为奇数,所在数组中的下标也为奇数,不删除,最后t所指的数组中的内容应是135。
   请勿修改主函数main和其他函数中的任何内容,仅在函数su的花括号中填写若干语句。
   文件test 27_2.cpp的内容如下;
       #include <conio.h>
       #include <stdio.h>
       #include <iostream.h>
       #include <string.h>
       void fun(char *s,char t[ ])
       {
       }
       void main ( )
       {
       char s[100],t[100];
       cout<<"Please enter string S:  "<<end1;
        gets(s);
        fun(s, t);
        puts(t);
       }

选项

答案void fun(char *s,char t[ ]) { int i,j=0,n; n=strlen(s); for(i=0;i<n;i++) if(i%2!=0&&s[i]%2!=0) { t[j]=s[i];j++;} t[j]=’\0’; }

解析 在解答本题时,首先要清楚一点:那就是在字符参与数值运算时,用的是其ASCII码值来进行计算。另外的一个考查点是判断某数是奇数的方法,即判断该数与2的余数是否为0。
转载请注明原文地址:https://kaotiyun.com/show/F7ID777K
0

最新回复(0)