98

98 date:2021.2.18
在这里插入图片描述要点: 是下标不为偶数,不是值不为偶数
下标永远是奇数的循环方法 for(i = 1; i < k; i+=2)

详细代码:

#include <stdio.h>
#include <string.h>
void fun(char *s, char t[])
{
    
    
	/*
		analyse:
		
		目标:

		将 s 所指字符串中下标为偶数的字符删除, 剩余字符放入 t 数组中;

		分析:

		遍历s 字符串,判断不为偶数的字符,放入t数组中;
	*/


	int i,j = 0;
	for(i = 0; s[i]!='\0'; i++)
	{
    
    
		if(i % 2 !=0)
		{
    
    
			t[j] = s[i];
			j++;
		}
	}
	t[j] = '\0';

	/*
		answer:

		//保留非指定字符法;  
		使用了一种i永远是奇数的循环方法,即for(i = 1; i < k; i+=2),
		因为开始时i值为 1,当i+2循环时,值永远是奇数;

		int i,j = 0, k = strlen(s);
		for(i = 1; i <k; i+=2;)  
			t[j++] = s[i];
			t[j] = '\0';

	*/

}

void main()
{
    
    
  char   s[100], t[100];
  void NONO (  );
  printf("\nPlease enter string S:"); scanf("%s", s);
  fun(s, t);
  printf("\nThe result is: %s\n", t);
  NONO();
}

猜你喜欢

转载自blog.csdn.net/weixin_44856544/article/details/113843403
98
L98