Hi, I am

Ngô Tôn

I am a programmer.

Home / Programming / C/C++ / Tìm vị trí kí tự xuất hiện đầu tiên trong chuỗi

Tìm vị trí kí tự xuất hiện đầu tiên trong chuỗi

Yêu cầu:

  • Viết hàm tìm vị trí kí tự xuất hiện đầu tiên trong chuỗi. Nếu không tìm thấy trả về -1.

Thuật toán:
– Dùng vòng lặp duyệt chuỗi và so sanh kí tự của chuỗi và kí tự nhập vào
– Nếu bằng nhau, trả về chỉ số mảng kí tự
– Nếu hết vòng lặp không tìm thấy, return -1

Code:
/******************Get position of character***************/
#include <conio.h>
#include <stdio.h>

int getPosStr(const char* s, char c);

void main()
{
char s[] = "ngoton blog";
char c = 'b';
printf("\'%c\' at index = %d", c, getPosStr(s, c));
getch();
}


/**************************************
Function : getPosStr()
Parameter: [IN] s: string
[IN] c: characeter
Return : index where c occurs
***************************************/
int getPosStr(const char* s, char c)
{
int idx = 0;
while(*(s + idx))
{
if (*(s + idx) == c)
{
return idx;
}
idx++;
}
return -1;
}

Ngoài ra, chúng ta có thể dùng duyệt mảng kí tự thay vì dùng con trỏ

int getPosStr(const char* s, char c)
{
int idx;
for (idx = 0; s[idx] != NULL; idx++)
{
if (s[idx] == c)
{
return idx;
}
}
return -1;
}

Kết quả:

Yêu cầu: Viết hàm tìm vị trí kí tự xuất hiện đầu tiên trong chuỗi. Nếu không tìm thấy trả về -1. Thuật toán: – Dùng vòng lặp duyệt chuỗi và so sanh kí tự của chuỗi và kí tự nhập vào – Nếu bằng nhau, trả về chỉ số mảng kí tự – Nếu hết vòng lặp không tìm thấy, return -1 Code: Ngoài ra, chúng ta có thể dùng duyệt mảng kí tự thay vì dùng con trỏ Kết quả: [crayon-5a0fb6fb6e1cb827048783/]

User Rating: 5 ( 1 votes)

About ngoton

Ngô Tôn is a programmer. He is crazy about new gadgets and up to date with latest technology trends. Use comments to notify any issues you are facing.

Check Also

Xây dựng một lớp Time mô tả thông tin về giờ, phút giây

Yêu cầu: Xây dựng một lớp Time mô tả thông tin về giờ, phút giây. …

Leave a Reply

Your email address will not be published. Required fields are marked *