【发布时间】:2015-05-22 01:13:19
【问题描述】:
我正在尝试编写一个将小写字母转换为数字的程序。 一个-> 01 b -> 02 ... z -> 26
对于前九个字母,我需要在数字前加一个 0。
这是我的代码。
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#define MAXLEN 128
void s2n(char str[])
{
int i;
char x;
char result[256];
for (i=0; str[i] != '\0'; i++) {
x = str[i];
x = x - 96;
if (x < 10) {
char src[2] = {0, x};
strcat(result, src);
}
else {
char src2[1] = {x};
strcat(result, src2);
}
printf("%s", result);
}
}
int main(void)
{
char str[MAXLEN];
printf("Lower cased string please: ", MAXLEN);
scanf("%s", str);
s2n(str);
return 0;
}
你能告诉我我的代码有什么问题吗?
【问题讨论】: