Thay số bằng chữ đọc trong chuỗi

Viết chương trình thay thế tất cả các chữ số trong chuỗi bằng từ đọc nó, ví dụ 9 thay bằng chín.mọi người giúp e với ạ,thanks

1 Like

bạn có thể làm đơn giản với hàm switch…case

1 Like

có cách nào ngắn hơn k ạ :smile:

Ngắn hơn không có nghĩa là tốt hơn. Mà cách đó là ngắn nhất rồi

dạ vâng,để e thử viết xem thế nào :smile:

Nếu mà khoảng 1 vs 2 số bạn có thể tham khảo cách này, cách này chỉ ngắn vs số có 1 hoặc 2 chữ số thôi

#include"stdio.h"   
#include"conio.h"
#include"string.h"
char s[]={};
char s1[]={};
void so(int n)
{
    char chu[99] [99]={"zero","one","two","three","four","five","six","seven","eight","nine"};
    int donvi,chuc;
    s[0]=0;
    if(n<=10)
    {
        strcat(s,chu[n]);
    } else {
        donvi=n%10;
        n/=10;
        chuc=n%10;
        strcat(s,chu[chuc]);
        strcat(s," ");
        strcat(s,chu[donvi]);
    }
}
int main()
{
    int donvi,n;
    printf("Input number: ");
    scanf("%d",&n);
    so(n);
    printf("Number %d is read %s",n,s);
}
4 Likes

em có thể tham khảo thêm các hàm kiểm tra chuỗi ở đây:

2 Likes

dạ e cám ơn 2 a ạ :smiley:

Có cách nào đọc 1 số bất kì k nhỉ . Hay thường chỉ giới hạn độ dài số ???

@BG_Narutoo phải nhập vào từ chuỗi, sau đó tách số ra.

1 Like
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?