Viết chương trình nhập vào một chuỗi ký tự bất kỳ, sau đó chuẩn hóa chuỗi (loại bỏ các ký tự trắng thừa ở bên trái, bên phải và giữa hai từ của chuỗi, ký tự đầu chuỗi viết hoa, các ký tự còn lại viết thường).

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
main()
{
      char *chuoi; 
      int i;
      chuoi = (char*)malloc(100);
      
      //scanf("%s",chuoi);
      printf("Nhap chuoi: ");
   gets(chuoi);
   
      
      //loai bo cac ki tu trang dau chuoi
      while(*chuoi ==32) 
            strcpy(chuoi,chuoi+1);
      
      //loai bo cac ki tu trang cuoi chuoi
      while(*(chuoi + strlen(chuoi) - 1) == 32) 
            strcpy(chuoi + strlen(chuoi) - 1, chuoi + strlen(chuoi));
      
      //loai bo nhieu khoang trang lien tuc giua cac tu
      i = 0;
      for(i=0; i<strlen(chuoi); i++)
            if(*(chuoi+i)== 32 && *(chuoi+i+1) == 32) 
            {
                    strcpy(chuoi+i,chuoi+i+1);
                    i--;
            }
      //chuyen ki tu dau thanh chu hoa
      if(*chuoi>97) *chuoi -= 32;
      
      //cac ki tu con lai duoc chuyen thanh chu thuong
      for(i=1; i<strlen(chuoi); i++)
            if(*(chuoi+i)<97 && *(chuoi+i) != 32) *(chuoi+i) += 32;
         
      printf("\nChuoi da duoc chuan hoa: ");
   puts(chuoi);

      getch();      
}
Mới hơn Cũ hơn