30/09/2018, 16:01

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

Trần Công Thiện viết 18:03 ngày 30/09/2018

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

Đào Văn Duy viết 18:08 ngày 30/09/2018

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

Nguyễn Minh Dũng viết 18:07 ngày 30/09/2018

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

Đào Văn Duy viết 18:17 ngày 30/09/2018

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

Trần Công Thiện viết 18:01 ngày 30/09/2018

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);
}
Nguyễn Minh Dũng viết 18:13 ngày 30/09/2018

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

#include <stdio.h> #include <ctype.h> // http://www.cplusplus.com/reference/cctype // http://www.tutorialspoint.com/c_standard_library/ int main() { // isalpha // isalnum /*int i; char str[]="c3po..."; i=0; while (isalnum(str[i])) i++; printf ("The first %d characters are alphanumeric.\n",i);*/ // isblank /*char c; int i=0; char str[]="Example sentence to test isblank\n"; while (str[i]) { c=str[i]; if (isblank(c)) …
Đào Văn Duy viết 18:05 ngày 30/09/2018

dạ e cám ơn 2 a ạ

Thành viết 18:08 ngày 30/09/2018

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

Nguyễn Minh Dũng viết 18:06 ngày 30/09/2018

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

Bài liên quan
0