65(从低位到高位 && 相反)

65 date:2021.3.7
在这里插入图片描述

要点:
27638496 从个位开始

详细代码如下:

#include  <stdio.h>
unsigned long fun(unsigned long  n)
{
    
     unsigned long  x=0;    int  t;
  while(n)
  {
    
     t=n%10;
/**********found**********/
    if(t%2== 0)
/**********found**********/
       x= 10 * x + t;  //各个位上升1位
/**********found**********/
    n=n/10;
  }
  return  x;
}
void main()
{
    
     unsigned long  n=-1;
  while(n>99999999||n<0)
  {
    
     printf("Please input(0<n<100000000): ");  scanf("%ld",&n);  }
  printf("\nThe result is: %ld\n",fun(n));
}

在这里插入图片描述
要点:

详细代码如下:

#include <stdio.h>

void fun (long  s, long *t)
{
    
     int   d;
  long  sl=1;
/************found************/
  *t = 0;
  while ( s > 0)
  {
    
      d = s%10;
/************found************/
     if (d%2 != 0)
     {
    
      *t = d * sl + *t;
		sl *= 10;
     }
     s /= 10;
  }
}
void main()
{
    
      long s, t;
   printf("\nPlease enter s:"); scanf("%ld", &s);
   fun(s, &t);
   printf("The result is: %ld\n", t);
}


在这里插入图片描述

要点:
字符串连接函数strcat()的使用

不适用库函数的字符串连接方法

详细代码如下:

#include <stdio.h>
void fun(char p1[], char p2[])
{
    
    
	/*
		analyse:

		字符串连接
	*/

	
	/*  Standard Answer:
		int i ,j;

		for(i = 0; p1[i] != '\0'; i++);
		for(j = 0; p2[j] != '\0'; j++)
			p1[i++] = p2[j];  //  错误理解:为什么不是i , 必须是i++  难道空字符也占了一个看不到的位置
					//因为i自增 ,是为了将下一个字符存放在下一个位置
		p1[i] = '\0';
			
		
	*/
	


	
	int i ,j,k=0;

	char sum;

	for(i = 0; p1[i] != '\0'; i++)
	{
    
    
		p1[k] = p1[i];
		k++;
	}

	for(j = 0; p2[j] != '\0'; j++)
	{
    
    
		p1[k] = p2[j];
		k++;
	}

	p1[k] = '\0';  //Dont't forget it !
	
}

void main()
{
    
        char s1[80], s2[40] ;void NONO ();

     printf("Enter s1 and s2:\n") ;
     scanf("%s%s", s1, s2) ;
     printf("s1=%s\n", s1) ;
     printf("s2=%s\n", s2) ;
     printf("Invoke fun(s1,s2):\n") ;
     fun(s1, s2) ;
     printf("After invoking:\n") ;
     printf("%s\n", s1) ;
     NONO() ;
}

猜你喜欢

转载自blog.csdn.net/weixin_44856544/article/details/114485996