C
很简单,注意一下c=(getchar()!='\n')
注意括号的位置
c= (getchar()!='\n')
也就是说变量c的值肯定是表达式getchar()!='\n',这是一个什么表达式?很明显是关系表达式,那我们知道关系表达式的值只可能是0或1,所以c的值就只可能是0或1,查看一下ASCII码表就知道ASCII码为0或1的肯定不会是字母字符吧,所以很明显AB肯定不对的,应该是C
大致应该输出7个☺,这样的符号
另外,想要输出A的那种情况,应该是语句(c=getchar()) !='\n' ,注意括号位置
for是循环语句,意思就是如果你输入一个值给C,如果你没按回车键,便是一直给C赋值,也就是说若你输入ABCD然后回车,那么c的值就是ABCD;如果你输入A然后回车,C的值就是A!
这是赋值字符串的一个方法!谢谢,希望你能明白!
C
for(;c=(getchar()!='\n');)printf("%c",c);
就是
for(;c=(getchar()!='\n');)
{
printf("%c",c);
}
而
printf("%c",c);
当字符型的c以%c(即字符格式)输出时,那么输出的就是以c的值为ascii码的字符,
For循环里的getchar和输入的ABCDEF就是将c逐个赋值为A,B……F。
到F后面的回车的时候跳出循环
这是for循环语句,意思直到输入一个换行符(\n)结束。答案是A
d , 那是代表语句混乱,重新输入。