【发布时间】:2023-04-01 02:21:01
【问题描述】:
我想读取 15 个数字,然后将它们转换为字母,例如: 1 = A,2 = B,3 = C,4 = D... 我这里有这个结构:
struct Num {
int number;
char letter;
};
struct Num num[150];
这是读取数字:
void read_num() {
int i;
for (i = 0; i < 15; i++) {
printf("Insert number\n");
scanf("%d", &num[i].number);
fflush(stdin);
}
}
现在我需要一些东西来将每个数字转换成一个字母,我确实创建了一个包含 25 个 if 的巨大函数,但它似乎不起作用。
顺便说一句,我只需要转到号码25,所以它在字母表中的 A 到 Y。
不起作用的功能是这样的:
void convert() {
int i, ii;
for (i = 0; i < 15; i++) {
if (num[i].number = 1){
num[i].letter = "A";
} else
if (num[i].number = 2) {
num[i].letter = "B";
} else
if (num[i].number = 3) {
num[i].letter = "C";
} else
if (num[i].number = 4) {
num[i].letter = "D";
} else
if (num[i].number = 5) {
num[i].letter = "E";
...
}
}
}
我在 Windows 和 C 编程中使用 Dev C++,我知道这是一个菜鸟问题,但请帮忙!
【问题讨论】:
-
fflush(stdin);是 UB,删除它。 -
哦,好的,继续。
标签: c letters-and-numbers