我的问题是,当我要求用户给我一个数字时,用户一次可以写多个数字(16548、5484等),因此我的程序会保存这些输入,并在下次需要时保存这些输入要使用scanf,它将自动读取用户编写的下一个(在我的第一个示例中为“ 6”)。我不希望那样,我希望用户只能写一个字符,或者如果有一种方法可以删除那些多余的字符,以便它只能读取第一个字符,那也将为我解决问题。
答案 0 :(得分:-1)
您可以尝试使用int或float值,结果将相同,应该四舍五入
#include<stdio.h>
#include<math.h>
void main()
{
float v;
printf("Enter a number : ");
scanf("%f",&v);
while(1)
{
if(v<10.0)
{
printf("%.f",floor(v));
break;
}
else
{
v = v / 10.0;
}
}
}