char middle;
printf("What is your middle name? ");
scanf(" %c", &middle);
printf("Your middle name is %c \n\n", middle);
所以我正在尝试制作一个简单的程序,它要求输入一个名称然后将其打印出来,但它只返回一个字符,我知道 %c 是用于字符的,但是我必须做什么才能获得全名?在此先感谢,抱歉这么愚蠢的问题,只是一个初学者:)
为多个字符预留空间:
char middle[32];
并扫描和打印字符串:
if(scanf("%31s", middle) == 1)
printf("Your middle name is %s\n, middle);
你只得到一个字符,如果你想要一个完整的单词,你应该使用"%s"
你的格式字符串。只要您输入的字符数不超过 50 个,以下代码将为您提供中间名(尝试输入超过 50 个字符,看看会发生什么!)。
char middle[50];
scanf("%s", middle);
然后打印结果:
printf("Middle name is %s", middle);
char* middle=malloc(EXPECTED_NAME_LENGTH+1);
printf("What is your middle name? ");
scanf(" %s", middle);
printf("Your middle name is %c \n\n", middle);