注册 登录
编程论坛 C语言论坛

这个程序输出是什么

乌拉达 发布于 2021-11-12 20:45, 1181 次点击
#include <stdio.h>
int main()
{
char c1=’a’,c2=’b’,c3=’c’,c4=’\101’,c5=’\116’;
printf(“a%c b%d\tc %c\tabc\\n”,c1,c2,c3-32);
printf(“\t %c%c\n”,c4,c5);
return 0 ;
}
9 回复
#2
吹水佬2021-11-12 21:05
运行后没看到输出结果吗
#3
乌拉达2021-11-12 21:26
c3-32这个是什么意思
#4
乌拉达2021-11-12 21:30
是把它转为大C嘛?
#5
乌拉达2021-11-12 21:54
这个程序中的\\n有意义嘛?
#6
Hhu_TF2021-11-12 22:26
回复 3楼 乌拉达
可以去查下ASCII码,c的ASCII码是99,而C的ASCII码是67.
所以c3-32就是由99转为67,即变成大写。
小写字母减去32就是大写字母。
#7
Hhu_TF2021-11-12 22:28
只有本站会员才能查看附件,请 登录
#8
baolis2021-11-12 22:32
#9
乌拉达2021-11-12 22:38
噢噢噢
#10
白白白小白2021-11-12 23:48
/*字符类型char*/
#include<stdio.h>
int main()
{
    char c1='a',c2='b',c3='c',c4='\101',c5='\116';  //  ''是一个字符
    printf("a %c b %d\t c %c\t abc\\n",c1,c2,c3-32);  //  %c是输入输出字符
   
    //调试输出
    printf("\nc1='a'的结果: %c//c2='b'的结果: %c//c3='c'的结果: %c\n",c1,c2,c3);
    printf("\nc1='a'的结果: %d//c2='b'的结果: %d//c3='c'的结果: %d\n",c1,c2,c3);
    /*从结果可以看出字符'a'、'b'、'c'对应的ASCII编码分别是97,98,99*/
    printf("%d\n",'C');  //可以看出大写的C的ASCII编码就是67
   
    printf("c4='\101'的结果: %c\nc5='\116'的结果: %c\n",c4,c5);
    return 0 ;
}
1