Đếm xem có bao nhiêu từ trong xâu s

8
25721

Bài toán: Đếm xem có bao nhiêu từ trong xâu s

Input: chuỗi s

Xử lý: Gán đếm=0

Duyệt chuỗi, nếu s[i] là khoản trắng và s[i+1] khác khoản trắng thì tăng đếm +1

Nhưng như vậy thì từ đầu tiên không có khoản trắng thì sao?

Ví dụ: Le   Cong   Danh nó sẽ đếm được 2 từ

Vậy nếu s[0] khác khoản trắng thì dem=1 còn nếu nó có khoản trắng thì vòng lặp trên nó sẽ duyệt qua

output: đếm

Hàm đếm số từ

int demsotu(char *s)
{
	int n=strlen(s),i;
	int dem=0;
	if(s[0]!=' ')
		dem=1;
	for( i=0;i<n-1;i++)
	{
		if(s[i]==' ' && s[i+1]!=' ')
			dem++;
	}
	return dem;
}

Chương trình

#include<stdio.h>
#include<conio.h>
#include<string.h>
int demsotu(char *s);
void main()
{
	char s[90];
    printf("nhap chuoi ");
    gets(s);
	int kq=demsotu(s);
	printf("\nSo tu trong chuoi la: %d",kq);
	getch();
}
int demsotu(char *s)
{
	int n=strlen(s),i;
	int dem=0;
	if(s[0]!=' ')
		dem=1;
	for( i=0;i<n-1;i++)
	{
		if(s[i]==' ' && s[i+1]!=' ')
			dem++;
	}
	return dem;
}

Mình chia sẽ code này đê các bạn tham khảo các vấn đề tương tự. Tuy nhiên các bạn nên tự làm lại, đừng nên copy. Nếu gặp vấn đề gì khó khăn, hoặc thắc mắc gì, các bạn có thể đặt câu hỏi ở cuối bài. Mình sẽ giải đáp.

Chúc các bạn thành công!

8 COMMENTS

  1. bạn ơi ; nuế tôi nhâp là:cao văn tiến rồi ấn thêm phím cách nữa thì số từ nó ra là 4,nhưng thực tế lại chỉ có là 3,hay bất cứ chuỗi nào đó khi nhập thêm phím cách số từ đều tăng thêm 1;sửa lại sao cho đúng được bạn

This site uses Akismet to reduce spam. Learn how your comment data is processed.