大小写字母转换问题: 将从键盘读入的小写字母转换成大写字母向屏幕输出,同时输出该大写字母的ascii码值和所占的内存空间大小。(输入输出中的◊代表一个空格) 输入一行:小写字母 输出两行:第一行为提示输入小写字母;第二行输出转换后的大写字母、对应ascii码值和在内存中占多少字节 **输入提示:"please input a lowercase:\n" **输入:用getchar() **输出格式 :"%c %d %d" 输入输出样例: please input a lowercase:a a 65 1
时间: 2023-05-31 17:18:44 浏览: 200
### 回答1:
题目要求把输入的小写字母转换成大写字母输出,并输出转换后的大写字母的 ASCII 码和所占内存空间大小。
输入提示:"please input a lowercase:\n"
输入方式:用 getchar() 函数获取字符类型的输入
输出格式:"转换后的大写字母:%c\n大写字母的 ASCII 码:%d\n所占内存空间大小:%d\n"
样例输入:a
样例输出:转换后的大写字母:A
大写字母的 ASCII 码:65
所占内存空间大小:1
### 回答2:
题目要求我们输入一个小写字母,然后将其转换成大写字母后输出,同时输出大写字母的ASCII码值和所占内存空间大小。
我们可以通过读入一个字符,判断该字符是否为小写字母,如果是小写字母,将其转换为大写字母,再输出。
我们可以使用getchar()函数来读入一个字符,然后通过判断该字符是否为小写字母,来完成大小写转换。ASCII码中,小写字母a的值为97,大写字母A的值为65,它们之间的差是32,因此将小写字母转为大写字母,只需要将其值减去32。
转换完毕后,我们可以使用printf()函数输出转换后的大写字母,并且在输出时用%c来控制输出字符,%d来输出ASCII码值,同时使用sizeof()函数来计算该字符占用的内存大小,输出结果。
下面是代码实现:
```c
#include <stdio.h>
int main() {
char ch;
printf("please input a lowercase:\n");
ch = getchar(); // 读入字符
if(ch >= 'a' && ch <= 'z') { // 判断是否为小写字母
ch = ch - 32; // 转换为大写字母
printf("%c %d %d", ch, ch, sizeof(ch)); // 输出
}
return 0;
}
```
测试样例:
输入:
```
a
```
输出:
```
A 65 1
```
上面的输出结果中,第一列为转换后的大写字母,第二列为该字母的ASCII码值,第三列为该字母在内存中占用的字节数。
### 回答3:
本题要求我们输入一个小写字母,将其转换为大写字母,并输出大写字母的ascii码和所占的内存空间大小。我们可以通过以下代码实现:
```
#include <stdio.h>
int main() {
printf("please input a lowercase:\n"); // 提示输入小写字母
char c = getchar(); // 用getchar()读取输入的小写字母
if (c >= 'a' && c <= 'z') { // 判断读入是否为小写字母
char C = c - 'a' + 'A'; // 转换为大写字母
printf("%c %d %d", C, C, sizeof(C)); // 输出大写字母、ascii码和内存占用大小
} else {
printf("Invalid input!"); // 若输入不为小写字母则输出“Invalid input!”
}
return 0;
}
```
其中,我们通过判断读入的小写字母是否在'a'到'z'之间来确定输入是否为小写字母;如果是小写字母,我们通过'C = c - 'a' + 'A''的方式将其转换成大写字母,并依次输出C、C的ascii码值和C在内存中占用的大小;如果不是小写字母,则输出“Invalid input!”。需要注意的是,由于字符类型变量占用一个字节的内存空间,所以在输出内存空间大小时,我们可以使用sizeof(C)来获取其占用的大小。
当输入为小写字母'a'时,输出为:
```
please input a lowercase:
a
A 65 1
```
当输入为大写字母或其他字符时,输出为:
```
please input a lowercase:
B
Invalid input!
```
阅读全文