第十次作业

1.拆分

#include<stdio.h>
 void splitfloat(float x,int *intpart,float *fracpart);
 int main()
 {    
  float x,fracpart;    
  int intpart;         
  printf("Input a number:");    
  scanf("%f",&x);         
  splitfloat(x,&intpart,&fracpart);    
  printf("The intpart is: %d\n",intpart);    
  printf("The fracpart is: %f\n",fracpart);         
  return 0;
}
 void splitfloat(float x,int *intpart,float *fracpart)
 {    
  *intpart=(int)x;    
  *fracpart=x-*intpart; 
 }

 

 

 

3,循环后移

#include <stdio.h>
void mov(int *x, int n, int m);
int main()
{  
 int i, m, n;  
 int a[80];  
 scanf("%d%d", &n, &m);  
 for(i = 0; i < n; i++)      
  scanf("%d", &a[i]);  
 mov(a, n, m);  
 printf("After move: ");  
 for(i = 0; i < n; i++)       
  printf("%d ", a[i]);  
 printf("\n");
}
void mov(int *x, int n, int m)
{   
 int i, j, k;     
 for(i = 1; i <= m; i++){       
  k = x[n-1];       
  for(j = n - 1; j > 0; j--)           
   x[j] = x[j-1];       
  x[0] = k;   
 }
}

 

 6删除字符

#include<stdio.h>
int main()
{
 char c;
 char str[80];
 void delchar(char *str, char c);
 gets(str);
 scanf("%c", &c);
 getchar();
 delchar(str, c);
 printf("result: ");
 puts(str);
}
void delchar(char *str, char c)
{
 int i, j;
 i = j = 0;
 while(str[i] != '\0'){
  if(str[i] != c){
   str[j] = str[i];
   j++;
  }
  i++;
 }
 str[j] = '\0';
}

 

 

 7.字符排序

#include <stdio.h>
#include <string.h>
int main( )
{  
 int i, j, index;  
 char sx[5][80], stemp[80];  
 for(i=0;i<5;i++)      
  scanf("%s", sx[i]);  
 for(i=0; i<4; i++){      
  index=i;      
  for(j=i+1;j<5;j++)      
   if (strcmp(sx[j],sx[index])<0)          
    index=j;      
   strcpy(stemp,sx[i]);      
   strcpy(sx[i],sx[index]);      
   strcpy(sx[index],stemp);
}
 printf("after sorted: \n");
 for (i=0;i<5;i++)   
  puts(sx[i]);
 return 0;
}

 

posted @ 2019-06-19 20:02  朱熺  阅读(164)  评论(0编辑  收藏  举报