1

我的程序从标准输入中读取几个字符串。我想这样编码:A 打印 00 在哪里,B 打印 01 在哪里。这是我的代码。我不知道我错在哪里。谢谢!

    #include<stdio.h>
    #include<conio.h>
    #include<string.h>
    int main(void)
   {
    char text[100];

    printf("enter  text:");
    fgets(text,100,stdin);
    int i,j;
    unsigned int aux;
    char a[100];
    char b[100];
    for(i=0;i<100;i++)
    for(j=0;j<100;j++)
    {
                      if(text[i]=='a'){
                      aux=aux|0;
                      aux=aux<<2;
                      a[j-1]=aux;
                      a[j]='\0';
                      }
                     if(text[i]=='b'){
                     aux=aux|1;
                     aux=aux<<2;
                     b[j-1]=aux;
                     b[j]='\0';
                     }
                     strcat(a,b)
                      }
                      printf("%s", a[j]);
                getch();      
    return 0;
}
4

1 回答 1

2

printf ("%02d\n", toupper(text[i]) - 'A');

或者

for (i = 0; i < strlen (text); i++)
    sprintf (&a[i*3], "%02d ", toupper(text[i]) - 'A');

请注意,这仅适用于纯文本字符串

于 2013-02-13T21:15:45.737 回答