-
20-03-2010, 02:38 PM #1Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
bai tap c: Viết hàm begins kiểm tra chuỗi...
Viết hàm begins(string1,string2) để trả về true nếu string1 là bắt đầu của string2. viết một chương trình để thử hàm trên.
cám ơn!View more random threads:
- Khai báo class Student
- [Hỏi C++] Sửa lỗi giúp mình bài này
- các bác giải thích em đoạn code nay. em cam ơn các bác.
- kế thừa trong C++ ??
- Lỗi trong quá trình chạy chương trình khi cấp phát bộ nhớ động tạo node cho danh sách
- hỏi về tham chiếu trong c++
- Thêm tiếp giá trị vào trong mảng?
- Giúp về bài tập đếm số phần tử trùng nhau của 2 mảng số nguyên
- Giúp đỡ về điều kiện dừng của thuật toán Lặp Gauss- Seidel
- Cho mình hỏi về bắt bàn phím chút
-
20-03-2010, 04:17 PM #2Silver member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Mã:void begins(char a[100], char b[100]); void begins(char a[100], char b[100]) { int chieudai = strlen(a); if(strnicmp(a,b,chieudai)==0) printf(" chuoi a la bat dau cua chuoi b"); else printf(" chuoi a khong la bat dau cua chuoi b"); }
strnicmp(a,b,chieudai) hàm này so sánh 2 chuỗi a ,b nhưng chỉ giới hạn trong chieu dai kí tự
-
20-03-2010, 04:32 PM #3Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Ý tưởng là thế này, nhưng khi chạy chả biết lỗi tại đâu:
Mã:#include<stdio.h>#include<conio.h>#include<math.h>#include<string.h> int begins(char[],char[]);int main(){ char chuoi1[31],chuoi2[81]; fflush(stdin); printf(" Nhap chuoi 1: "); gets(chuoi1); fflush(stdin); printf(" Nhap chuoi 2: "); gets(chuoi2); printf(" %d: ",begins(chuoi1,chuoi2)); /*if(begins(chuoi1,chuoi2)==0) printf(" Chuoi 1 la bat dau cua chuoi 2"); else printf(" Khong phai");*/ getch(); return 0;}int begins(char st1[31],char st2[81]){ char temp[31]; int i=0; int l=strlen(st1); for(i;i<l;i++) { temp[i]=st2[i]; //printf(" i=%d",i); //printf(" %c",temp[i]); } temp[i+1]='\0'; //printf(" %s %s",st1,temp); return strcmp(st1,temp); }
-
20-03-2010, 06:27 PM #4Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Mã:#include <conio.h>#include <stdio.h>#include <memory.h> bool begins(char* string1, char* string2){ int len1 = strlen(string1); int len2 = strlen(string2); if(len1 > len2) return false; char* temp = new char[len1 + 1]; memset(temp, 0, (len1 + 1) * sizeof(char)); memcpy(temp, string2, len1); bool result = strcmp(string1, temp); delete[] temp; return !result;}int main(){ char* string1 = "Hello"; char* string2 = "Hello World"; bool result = begins(string1, string2); printf("%s - %s la chuoi bat dau cua - %s - ", string1, result? "" : "khong", string2); getch(); return 0;}
Thông qua phân tích dữ liệu Google từ 86 quốc gia, mới đây, một công ty tại Anh đã công bố bảng xếp hạng kích tấc "cậu nhỏ" của các nước trên thế giới. Kết quả, hầu hết các nước xếp ở nhóm đầu của...
"Chim" của chàng trai Việt thuộc...