Pet*_*Pan -1 c printf for-loop
我试图写一个程序,它获得了一个人进入的最高性格.我制作了一个程序,它可以获得最高数量的工作,没有任何问题但是字符不起作用.这是我的代码:
#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);
}
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?
您尝试将字符串文字"a"转换为char.你应该使用一个字符文字.
char highest = "a";
//should be
char highest = 'a';
Run Code Online (Sandbox Code Playgroud)
此外,scanf需要一个指针来存储读取的结果.
scanf("%c", characters[i]);
//should be
scanf("%c", &characters[i]);
Run Code Online (Sandbox Code Playgroud)