【发布时间】:2015-09-15 14:39:15
【问题描述】:
我试图编写一个程序来获取一个人输入的最高字符。我制作了一个程序,它可以毫无问题地获得最高数量的工作,但是对于字符它不起作用。这是我的代码:
#include <stdio.h>
#include <string.h>
int main(int argc, const char * argv[]) {
char characters[5];
char highest = "a";
printf("Please enter five characters: \n");
for (int i = 0; i <= 4; i+=1) {
scanf("%c", characters[i]);
}
printf("These are the characters you entered: ");
for (int i = 0; i <= 4; i+=1) {
printf("%c ", characters[i]);
}
for (int i = 0; i <= 4; i+=1) {
if (characters[i] > highest) {
highest = characters[i];
}
}
printf("\nThe highest character is %c", highest);
}
我做错了什么?
【问题讨论】:
-
char highest = "a";真的编译了吗? -
好吧,在 Xcode (Macintosh) 上它确实可以编译。为什么是“a”而不是“a”?
-
是的,因为您将
String分配给char变量 -
@S.Eberl 请不要将 C 问题标记为 C++。
-
如果它“不起作用”,那么显而易见的解决方案就是让它起作用。如果您想要比这更好的答案,请具体告诉我们什么不起作用您遇到什么错误等。