c语言打印一个n行等腰上三角形,每行图形依次为ABCD。。。

Slybunny_167 |浏览1082次
收藏|2020/02/06 08:06

满意回答

2020/02/06 08:37

i+64是要打印的字母的ASCII码,如:i=1,要打印的是第一行的字符A,而 i+64=65,正是A的ASCII码;i=2,要打印的是第二行的字符B,而 i+64=66,正是B的ASCII码;……依此类推。

ygl990951

其他回答(2)
  • 这是ASCII码的转换,65~90,是A~Z的ASCII码。由于是i+64,所以我们看i的数值就可以了。在i的循环中,i的初始值是1,那么由于你给的是%c,那么程序会自动调用ASCII的转换。在第一次循环中,i是1,所以i+64的值为65,对应的字母为A,由此类推,当i=2,即第二次循环时,此时i+64=66,对应的为B。因此,这里是调用的是ASCII码。再举个例子:97~122是小写字母a~z,如果你改成i+96,它将会呈现小写字母的等腰三角
    回答于 2020/02/06 09:13
  • i从1开始,那么i+64就是从65开始65是字符'A'的ASCII码printf("%2c",i+64);就是输出ABCD...字符的
    回答于 2020/02/06 08:51
0人关注该问题
+1

 加载中...