我正在尝试输入一个字符,并输出它的ASCII值,直到用户输入0为止。虽然程序可以正常运行,但是总是会多输出一个ASCII值为10的字符,请问我做错了什么?
#include <stdio.h>
#include <stdlib.h>
int main(void){
printf("Welcome to ASCII:\n");
char input;
while(input != 48){
scanf("%c", &input);
printf("ascii: %d\n", input);
}
printf("done\n");
}
输出
Welcome to ASCII:
e
ascii: 101
ascii: 10
h
ascii: 104
ascii: 10
l
ascii: 108
ascii: 10
0
ascii: 48
done