gpt4 book ai didi

c - 输出中只显示第一个字母。[字符类型]

转载 作者:行者123 更新时间:2023-11-30 19:56:23 26 4
gpt4 key购买 nike

当我输入时,只显示第一个字母。我想打印我刚刚输入的完整名称。

#include <stdio.h>
int main()
{
char name;
char grades;
int i;
printf("Name of the Student:");
scanf("%c",&name);
printf("Name your Just entered is : %c",name);
return 0;
}

最佳答案

我同意其他人的观点 - 但添加一些错误检查并确保没有缓冲区溢出,即

#include <stdio.h>

int main() {
char name[101];

printf("Name of the student:");
if (scanf("%100s", &name) == 1) {
printf("Name you just entered: %s\n", name);
return 0;
} else {
printf("Unable to read name of student\n";
return -1;
}
}

编辑

由于您已经编辑了问题,因此它的含义与之前不同,因此我将在此处保留之前的解决方案。

但是您想要的是使用 fgets - 这允许名称中包含空格

即。

#include <stdio.h>
int main()
{
char name[100];
printf("Name of student:");
fflush(stdout);
fgets(name, 100, stdin);
printf("Students name is %s\n", name);
return 0;
}

关于c - 输出中只显示第一个字母。[字符类型],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30695191/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com