超级简单
#include<stdio.h>int main()
{
int j;
double i;
i=getchar();
for(j=0;j<3;j++)
{
i=i/2;
printf("%.2f\n", i);
}
return 0;
}
//我这个是像看看i除2,每除一次,看看i的值,为什么我这个打印有问题(我自我感觉没毛病) double 要用lf输出吧 https://blog.csdn.net/meme_yun/article/details/88586815 #include<stdio.h>
int main() {
int j;
double i;
i=getchar();
printf("'%c' = %.2f\n",(int)i,i);
for(j=0; j<3; j++) {
i=i/2;
printf("%.2f\n", i);
}
return 0;
} 头发 发表于 2020-11-19 09:32
double 要用lf输出吧
不是这样的啊,你去试试,无论你输入什么数字,得到的结果多少一样的。。。。 baige 发表于 2020-11-19 09:51
不行啊,输出都是一样的数字,永远都是25 12.5 6.25 getchar();输入的是字符,也就是i获取的是第一个字符的ascii码
#include<stdio.h>
int main() {
int j;
double i;
scanf("%lf",&i);
for(j=0; j<3; j++) {
i=i/2;
printf("%.2f\n", i);
}
return 0;
}
你应该是想要这样 double 输入用这样
scanf("%lf",&i);
getchar获取的是一个字符如你输入13,14之类的获取的是1的ascii码
baige 发表于 2020-11-19 09:51
我想问问你,哪个getchar()获取字符,是不是都是获取字符的ascill值?
https://fishc.com.cn/forum.php?mod=viewthread&tid=68661&highlight=getchar
页:
[1]