Thứ Hai, 30 tháng 9, 2013

Code C-C++: Các bài toán xử lý chuỗi (string) - (Phần 1)


1. Đếm có bao nhiêu khoảng trắng trong chuỗi (string)
int demkhoangtrang(char *s){
int d=0;
while(strstr(s," ")!=NULL){
   d++;
   s=strstr(s," ")+1;
}
return d;

}
2. Nhập vào một chuỗi, hãy loại bỏ những khoảng trắng thừa trong chuỗi (string).
void xoakhoangtrang(char *s){   
char *c=strstr(s,"  "); 
while(c!=NULL){
int t=strlen(s)-strlen(c);
for(int i=t;i<strlen(s);i++)
   s[i]=s[i+1];
   c=strstr(s,"  ");
}
if(s[0]==' ')
   s=s+1; //xoa khang trang dau chuoi
   int n=strlen(s);
   if(s[n-1]==' ')
   s[n-1]='\0';//xoa khoang trang cuoi chuoi
       cout<<s;  //for(int i=0;i<n;i++)

//cout<<s[i];
3. Nhập vào hai chuỗi s1 và s2, nối chuỗi s2 vào s1. Xuất chuỗi (string) s1 ra màn hình
void noichuoi(char *a,char *b){
   strcat(a,b);
   puts(a); 
}
4. Đổi tất cả các kí tự (string) có trong chuỗi thành chữ thường (không dùng hàm strlwr).
void chuthuong(char *a)
{
    for(int i=0;i<strlen(a);i++)
        if(a[i]>=65 && a[i]<=90)
            a[i]=a[i]+32;
        puts(a);                        
}
5. Đổi tất cả các kí tự (char) trong chuỗi sang chữ in hoa (không dùng hàm struppr).
void chuhoa(char *a)
{
for(int i=0;i<strlen(a);i++)
a[i]=toupper(a[i]); 
puts(a);                       
}

Code C-C++: Các bài toán sử dụng mảng 1 chiều


Các bài toán thao tác với mảng 1 chiều:
- Nhập vào 1 dãy số nguyên có n số (1<=n<=100)
- In ra màn hình các số lớn hơn 0
- Tìm max
- Tính tổng các số lớn hơn 10

#include<iostream.h> 
#include<conio.h> 
void main(){
        int a[100],n;
// Nhap so phan tu n
        do{ 
        cout<<"\n n= "; cin>>n; 
        if(n<1||n>100)   cout<<"\n Nhap lai n!";
        }while (n<1||n>100);
 // Nhap day so
        cout<<"\n Nhap day so:";
        for (int i=0; i<n;i++){
         cout<<"\n a["<<i<<"]= "; 
        cin>>a[i];  }
 // In ra cac so >=0
         cout<<"\n In ra so khong am: ";
        for (i=0;i<n;i++)
        if (a[i]>=0)
        cout<<a[i]<<", ";
 // Tim max
        int max=a[0];
        for (i=0;i<n;i++)
               if (a[i]>max) max=a[i];
               cout<<"\n Max= "<<max;
 // Tinh tong so >10
        long s=0;
        for (i=0;i<n;i++)
               if (a[i]>10) s+=a[i];  cout<<"\n Tong= "<<s;
         getch();

} 

Chủ Nhật, 29 tháng 9, 2013

Code C-C++: Tính giá trị của biểu thức: S = 2! + 4! + 6! + … + n! (với n nguyên, nhập vào từ bàn phím).


Tính giá trị của biểu thức: S = 2! + 4! + 6! + … + n! (với n nguyên, nhập vào từ bàn phím).
#include <iostream.h>
#include <conio.h>
#include <stdio.h>
void main(){
    int n;
    cout<<"\n Nhap n="; cin>>n;
    int gt=1,s=0;
    for(int i=2; i<=n;i=i+2){
for (int j=1;j<=i;j++) gt=gt*j;
     s=s+gt;
     gt=1;
   }
    cout <<"\n Tong S="<<s;
    getch();
}

Bài đăng phổ biến