问答题
1. 请编写函数proc(),其功能是:将str所指字符串中下标为偶数的字符删除,将串中剩余字符形成的新串放在t所指数组中。
例如,当str所指字符串中的内容为“abcdefg”,则在t所指数组中的内容应是“bdf”。
注意:部分源程序如下。
请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的花括号中填入所编写的若干语句。
试题程序: #include<stdlib.h>
#include<conio.h>
#include<stdio.h>
#include<string.h>
void proc(char*str,char t[])
{
}
void main()
{
char str[100],t[100];
system("CLS");
printf("\nPlease enter string str:");
scanf("%s",str);
proc(str,t);
printf("\nThe result js:% s\n",t);
}
【正确答案】void proc(char *str,char t[])
{
int i,j=0,k=strlen(str); //k是放字符串的长度的变量
for(i=1;i<k;i=i+2) //i=i+2,表示奇数
t[j++]=str[i]; //把下标为奇数的数放到数组t中
t[j]='\0';//因为t是字符串,因此必须用'\0'作为结束标志
}
【答案解析】 题目要求将下标为偶数的字符删除,其余字符放在新的字符数组t中。首先,取出字符串str中下标为奇数的字符,将其赋值给新的字符串t;最后,用'\0'作为字符串结束的标志。