HN - Aptech


 
IndexIndex  PortalPortal  CalendarCalendar  GalleryGallery  Trợ giúpTrợ giúp  Tìm kiếmTìm kiếm  Thành viênThành viên  NhómNhóm  Đăng kýĐăng ký  Đăng NhậpĐăng Nhập  

Share | 
 

 Bài thực hành 6[ String]

Xem chủ đề cũ hơn Xem chủ đề mới hơn Go down 
Tác giảThông điệp
spyware
Đại Bàng Tinh
Đại Bàng  Tinh


Tổng số bài gửi : 116
Join date : 04/06/2009
Age : 32
Đến từ : HN

Bài gửiTiêu đề: Bài thực hành 6[ String]   Thu Jun 04, 2009 2:48 pm

Bài 1:
- Nhập một chuỗi ký tự
- Hiển thị chuỗi vừa nhâp ra ngoài màn hình
Code:

#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{
char str[80];
clrscr();
printf(" Input string : ");

fflush(stdin);
gets(str);

puts(str);
getch();
}

Bài 2:
- Nhập một chuỗi ký tự
- Hiển thị độ dài chuỗi vừa nhập
- Đếm xem trong chuỗi có bao nhiêu ký tự ‘a’
Code:

# include<stdio.h>
# include<conio.h>
void main()
{
//nhap chuoi
//hien thi do dai chuoi
//dem xem trong chuoi co bao nhieu ky tu 'a'
char str[80];
int i,dem=0,dai;
clrscr();
printf(" Input string: ");
fflush(stdin);
gets(str);
dai=strlen(str);
for(i=0;i<dai;i++)
   if(str[i]=='a')
      dem++;
if(dem!=0)
   printf(" Co %d ky tu 'a' trong chuoi",dem);
else
   printf(" khong co ky tu 'a' nao trong chuoi");


getch();
}
Bài 3:
- Nhập chuỗi ký tự
- Đảo ngược chuỗi ký tự vừa nhập và hiển thị chuỗi sau khi đảo ra ngoai màn hình

Code:

# include<stdio.h>
# include<conio.h>
void main()
{
//nhap chuoi
//dao chuoi ky tu
//hien thi chuoi sau khi dao
char temp,str[80];
int i,dai;
clrscr();
printf("Input string:\n\n");
fflush(stdin);
gets(str);
dai=strlen(str);

for(i=0;i<dai/2;i++)
   {
    temp=str[i];
    str[i]=str[dai-1-i];
    str[dai-1-i]=temp;
   }

printf("\nChuoi sau khi dao la: \n\n");
puts(str);

getch();
}
Bài 4:
- Nhập số nguyên N (0- Nhập N chuỗi ký tự
- Hiển thị N chuỗi ký tự vừa nhập
- Hiển thi các chuỗi có chiều dài dài nhẩt (đồng thời hiển thị độ dài của các chuỗi này)


Code:

#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{
//nhap so nguyen n>0&&n<10
//nhap n chuoi ky tu
//hien thi n chuoi vua nhap
//hien thi cac chuoi co do dai dai nhat kem theo do dai
char temp,str[10][80];
int i,n,max,dem;
clrscr();

// kiem tra nhap n
do
{
   printf(" input n ( 0<n<10 ):");
   scanf("%d",&n);
} while (n<=0|| n>=10);
// nhap mang
for(i=0;i<n;i++)
   {
   printf(" Nhap str[%d]: ",i);
   fflush(stdin);
   gets(str[i]);
   }
// hien thi n chuoi vua nhap
printf("\nChuoi vua nhap la:\n");

for(i=0;i<n;i++)
   puts(str[i]);

//tim chuoi co do dai lon nhat

max=strlen(str[0]);
for(i=1;i<n;i++)
   if( strlen(str[i]) >max )
      max=strlen(str[i]);

printf("Chuoi co do dai lon nhat la:\n");
for(i=0;i<n;i++)
   if(strlen(str[i]) == max)
      puts(str[i]);
printf("Do dai lon nhat: %d",max);
getch();
}

Về Đầu Trang Go down
Xem lý lịch thành viên
spyware
Đại Bàng Tinh
Đại Bàng  Tinh


Tổng số bài gửi : 116
Join date : 04/06/2009
Age : 32
Đến từ : HN

Bài gửiTiêu đề: Re: Bài thực hành 6[ String]   Thu Jun 04, 2009 2:55 pm

Bài 5:
- Nhập số nguyên N (0- Nhập N chuỗi ký tự (chiều dài mỗi chuỗi nhỏ hơn N)
- Chuyển các chuỗi vừa nhập thành các chuỗi chữ hoa
- Hiển thị các chuỗi vừa đổi ra ngoài màn hình

Code:

#include<stdio.h>
#include<conio.h>
#include<string.h>
void main()
{
//nhap so nguyen n>0&&n<20
//nhap n chuoi ky tu && chieu dai chuoi <n
//chuyen cac chuoi vua nhap ==> chua hoa
//hien thi cac chuoi vua doi ra man hinh
char ch,str[20][20];
int i,n,j;
clrscr();

// kiem tra nhap n
do
{
   printf(" input n ( 0<n<20 ):");
   scanf("%d",&n);
} while (n<=0|| n>=20);
// nhap mang

for(i=0;i<n;i++)
      do
   {
      printf(" Nhap str[%d]: ",i);
      fflush(stdin);
      gets(str[i]);
   } while( strlen(str[i]) >= n );

// chuyen thanh chu hoa

for(i=0;i<n;i++)
   for(j=0;j<strlen(str[i]);j++)
      if(str[i][j]>='a' && str[i][j] <='z')
         {
            str[i][j]=str[i][j]-32;
         }
// in sau khi chuyen thanh chu hoa
for(i=0;i<n;i++)
   puts(str[i]);

getch();
}

Bài 6:
- Nhập số nguyên N(0- Nhập N chuỗi ký tự (Chiều dài các chuỗi phải chẵn)
- Sắp xếp các chuỗi theo thứ tự tăng dần của chiều dài các chuỗi
- Hiển thị các chuỗi sau khi sắp xếp
Code:

#include<stdio.h>
#include<conio.h>
#include<string.h>

void main()
{
//nhap so nguyen n>0&&n<20
//nhap n chuoi ky tu && chieu dai chuoi phai chan
//sap xep cac chuoi theo thu tu tang dan chieu dai cua chuoi
//hien thi cac chuoi vua sap xep ra man hinh
char ch[20],str[20][20];
int i,n,j;
clrscr();

// kiem tra nhap n
do
{
   printf(" input n ( 0<n<20 ):");
   scanf("%d",&n);
} while (n<=0|| n>=20);
// nhap mang

for(i=0;i<n;i++)
      do
   {
       printf(" Nhap str[%d] (chieu dai chuoi phai chan): ",i);
       fflush(stdin);// luon dung truoc hamg gets() de xoa bo nho dem
       gets(str[i]);
   } while( strlen(str[i]) %2 !=0 );

// sap xep

for(i=0;i<n;i++)
   for(j=i+1;j<n;j++)
      if(strlen(str[j]) < strlen(str[i]))
         {
         strcpy(ch,str[i]);  //ghi de str[i] vao ch
         strcpy(str[i],str[j]); // tuong tu
         strcpy(str[j],ch); // tuong tu
         }
// in sau khi sap xep
for(i=0;i<n;i++)
   puts(str[i]);

getch();
}
Bài 7:
- Nhập một chuỗi ký tự (chiều dài chuỗi nhỏ hơn 50)
- Nhập một ký tự (đặt tên biến là ch)
- Đếm xem trong chuỗi vừa nhập có bao nhiêu ký tự là ký tự ch.
- Nếu ch không tồn tại trong chuỗi thì chèn ký tự ch vào vị trí đầu tiên trong chuỗi (Hiển thị chiều dài chuỗi trước và sau khi chèn)
- Nếu ch tồn tại trong chuỗi thì xoá ký tự ch khỏi vị trí đầu tiên tìm thấy trong chuỗi (Hiển thi chiều dài chuỗi trước và sau khi xoá)

Code:

#include<stdio.h>
#include<conio.h>
#include<string.h>

void main()
{
//nhap chuoi chieu dai <50
//nhap 1 ky tu (ch)
//dem xem trong chuoi co bao nhieu ky tu 'ch'
//neu ch ko co trong chuoi thi chen ch vao vi tri dau tien
// .. trong chuoi. hien thi chieu dai chuoi truoc va sau khi chen
//neu ch ton tai. xoa ky tu ch khoi vi tri dau tien
//.. tim thay trong chuoi. hien thi chieu dai chuoi
//.. truoc va sau khi xoa.
char  ch,temp,str[51];
int i,j,dem,s;
clrscr();
   printf(" Input String: ");
   fflush(stdin);
   gets(str);
   printf(" Input a Char: ");
   fflush(stdin);
   ch=getchar();
// dem trong chuoi co bao nhieu ky tu ch
s=strlen(str);
for(i=0,dem=0;i<s;i++)
   if(str[i]==ch)
       dem++;
if(dem==0)  //khong co ch trong chuoi
   {
   for(i=s;i>0;i--)
      {
      temp=str[i];
      str[i]=str[i-1];
      str[i-1]=temp;
      }
      str[0]=ch;
      str[s+1]='\0';
      printf("\nKhong Co ky tu '%c' trong chuoi",ch);
      printf("\nChuoi sau khi chen '%c' vao: ",ch);
      puts(str);
      printf("\nDo dai truoc: %d",s);
      printf("\nDo dai sau  : %d",strlen(str));
      }
else
    {
   for(i=0;i<s;i++)
      {
      if(str[i]==ch)
          {
          for(j=i;j<s;j++)
         str[j]=str[j+1];
                    break;
          }
      }
      printf("\nCo %d ky tu '%c' trong chuoi truoc khi xoa",dem,ch);
      printf("\nChuoi sau khi xoa '%c' dau tien\n",ch);
      puts(str);
      printf("\nDo dai truoc: %d",s);
      printf("\nDo dai sau  : %d",strlen(str));
    }


getch();
}


Bài 8:
- Nhập một chuỗi ký tự
- Đếm xem trong chuỗi vừa nhập có bao nhiêu từ

[ Bài này nguồn từ bạn Hoàng Hà]
Code:

#include<stdio.h>
#include<conio.h>
#include<string.h>

void main()
{
char a[100];
int i,j,t,n, dem1, dem2;
clrscr();
do
   {
   printf("Nhap vao chuoi: ");
   fflush(stdin);
   gets(a);
   }
while(strlen(a)>=100);
n=strlen(a);

for(i=0, dem1=0; i<n; i++)
{
   if(a[i]!=' '&&a[i]>='A'&&a[i]<='Z'||a[i]>='a'&&a[i]<='z')
   {
      for(j=i+1,t=j+1,dem2=0; a[j]!=' '&&a[j]!='\0';t++,j++)
      {
        if(a[j]<'A'||a[j]>'Z'&&a[j]<'a'||a[j]>'z') dem2++;
        if((a[t]==' '||a[t]=='\0')&&(a[j]=='!'||a[j]=='?'||a[j]=='.')) dem2--;
      }
      if(dem2==0) dem1++;
                i=j;
   }
}

printf("\n So tu trong chuoi la: %d ",dem1);


getch();

}
Về Đầu Trang Go down
Xem lý lịch thành viên
 
Bài thực hành 6[ String]
Xem chủ đề cũ hơn Xem chủ đề mới hơn Về Đầu Trang 
Trang 1 trong tổng số 1 trang

Permissions in this forum:Bạn không có quyền trả lời bài viết
HN - Aptech :: Khóa Học :: SEMESTER I :: C :: Bài Tập-
Chuyển đến