【紧急】编程题求大神指导
来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/08/08 13:37:39
【紧急】编程题求大神指导
a 判断需要输出的字母是大写还是小写!
a b
a b c
a b c d
a b c d e
A
A B
A B C
A B C D
A B C D E
不好意思,忘记说了,用C语言做!还要判断输出的字母是大写还是小写!
a 判断需要输出的字母是大写还是小写!
a b
a b c
a b c d
a b c d e
A
A B
A B C
A B C D
A B C D E
不好意思,忘记说了,用C语言做!还要判断输出的字母是大写还是小写!
![【紧急】编程题求大神指导](/uploads/image/z/1565151-15-1.jpg?t=%E3%80%90%E7%B4%A7%E6%80%A5%E3%80%91%E7%BC%96%E7%A8%8B%E9%A2%98%E6%B1%82%E5%A4%A7%E7%A5%9E%E6%8C%87%E5%AF%BC)
/>#include "stdio.h"
void new_line(){printf("\n");}
void print_line(int isCap,int len)
{
int letter='a';
int i;
isCap && (letter^=32);
for(i=0;i<len;i++)
printf("%-2c",letter++);
new_line();
}
int table(int isCap,int h)
{
int i;
for(i=1;i<=h;i++)
print_line(isCap,i);
}
int main(int argc,char *argv[])
{
table(0,6);
new_line();
table(1,6);
return 1;
}
再问: 大神,你写的我看不懂啊~
再答: isCap && (letter^=32); ==> if(isCap){letter^=32;} 如果要求大写,那么字母数值与32异或。 字母a的ascii值为97,字母A的ascii值为65。 两者差为32。 32的二进制为10000。 也就是说二进制的ascii码中,大写字母和对应小写字母只有一个字位的差别。
再问: 算了,我才刚刚学C语言~虽然还是看不懂,不过感谢你的热心哦~
void new_line(){printf("\n");}
void print_line(int isCap,int len)
{
int letter='a';
int i;
isCap && (letter^=32);
for(i=0;i<len;i++)
printf("%-2c",letter++);
new_line();
}
int table(int isCap,int h)
{
int i;
for(i=1;i<=h;i++)
print_line(isCap,i);
}
int main(int argc,char *argv[])
{
table(0,6);
new_line();
table(1,6);
return 1;
}
再问: 大神,你写的我看不懂啊~
再答: isCap && (letter^=32); ==> if(isCap){letter^=32;} 如果要求大写,那么字母数值与32异或。 字母a的ascii值为97,字母A的ascii值为65。 两者差为32。 32的二进制为10000。 也就是说二进制的ascii码中,大写字母和对应小写字母只有一个字位的差别。
再问: 算了,我才刚刚学C语言~虽然还是看不懂,不过感谢你的热心哦~