首页 > 编程语言 > 详细

ASCII码排序 题解

时间:2020-01-26 17:38:20      阅读:85      评论:0      收藏:0      [点我收藏+]

1.技术分享图片

 

while(scanf("%c%c%c%*c",&a,&b,&c)!=EOF)  

 这里需要注意  输入多组语句 while后面不能加分号;

2.%*c"空字符,不存储字符的字符滤掉回车。

   输入多个字符时直接连续用%c,不需要加入分隔符,同样输入也是连续输入且不能使用任何其他字符(如空格,回车等)来分隔。空格、制表以及回车都将被视作有效的字符输入。

  当字符和其他数值类数据混合输入时,字符要放在前面,数值放在后面输入。这样可以保证开始已经有效的输入了字符。但需要输入一个整数i和一个字符ch。scanf(“%d%c”,&i,&ch);要求在整数后面不能有任何分隔,如回车,要立即跟随要输入的字符。如果不小心输入了回车,则回车符将被输入到字符变量ch中。

3.逗号表达式:

例:

z=(x%y,x/y) 先计算x%y =1,再计算x/y=3,然后 z=(1,3)=3

逗号表达式:多个表达式可以用逗号隔开,其中用逗号分开的表达式的值分别计算,但整个表达式的值是最后一个表达式的值。

再如:

a[0]=(0,1),但是(0,1)里面是逗号表达式,所以指向a[0]的指针p所指向的是1。

技术分享图片

 

 

 语句1中,a1=(++b,c--,d+3);a1=(3,7,8),这里需要注意++b和c--的区别,然后根据逗号表达式,a1=8;

语句2中,a2=++b,c--,d+3;a2=4,6,11,但是此刻后面的表达式没有小括号,也就是说,这不是逗号表达式,而是加了一个赋值的语句,逗号表达式的优先级最低,所以a2=4;

 

ASCII码排序 题解

原文:https://www.cnblogs.com/hrlsm/p/12234417.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!