问题 问答题

请编写函数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%B!=0&&s[i]%B!=0)

{ t[j]=s[i];j++;}

t[j]=’\0’;

}

解析:

在解答本题时,首先要清楚一点:那就是在字符参与数值运算时,用的是其ASCII码值来进行计算。另外的一个考查点是判断某数是奇数的方法,即判断该数与2的余数是否为0。

单项选择题 A1/A2型题
单项选择题