C语言用getchar函数读入两个小写英文字符,然后分别用putchar和printf函数输出这两个字符对应的大写字符。
时间: 2024-09-24 12:21:35 浏览: 55
在C语言中,你可以通过`getchar()`函数读取用户输入的小写字母,然后利用ASCII码表转换成大写字母。ASCII码表规定了字母的大小写之间的偏移值,比如'A'到'a'之间相差32。下面是一个简单的示例:
```c
#include <stdio.h>
int main() {
char lower; // 存储小写字母
printf("请输入一个小写字母:");
lower = getchar(); // 读取用户输入
// 将小写字母转换为大写
if (lower >= 'a' && lower <= 'z') { // 判断是否是小写字母
char upper = lower - 32; // 对应的大写字母
if (upper > 'Z')
upper -= 26; // 避免超出'A'~'Z'的范围
putchar(upper); // 输出大写字母
// 再次输出第二个字符的大写版本,如果需要的话
// 但这里通常只输出一次,因为两次getchar()可能会接收两次输入
// lower = getchar();
// ...
printf("\n第一个字符的大写形式:%c\n", upper);
} else {
printf("这不是一个小写字母。\n");
}
return 0;
}
```
相关问题
1.采用getchar和putchar函数编写如下程序,从键盘输入一个大写字母字符, 接着在显示器上输出对应的小写字母字符。 运行情况举例:
为了编写这样一个程序,我们可以利用ASCII码的特性,大写字母和小写字母的ASCII值相差固定值。以下是一个简单的C语言示例:
```c
#include <stdio.h>
int main() {
int ascii_diff = 32; // ASCII码的大写字母和小写字母之间的差值
char input_char; // 输入的大写字母
// 从键盘输入大写字母
printf("请输入一个大写字母: ");
scanf("%c", &input_char); // getchar()在这里不是必需的,因为我们使用scanf直接读入字符
// 将大写字母转换为小写字母
if (isalpha(input_char)) { // 检查是否为字母字符
input_char += ascii_diff; // 转换ASCII值
if (input_char > 'z') { // 避免超出'a'到'z'的范围
input_char -= 26; // 超出则往回循环
}
else if (input_char < 'a') { // 超过'a'
input_char += 26; // 往前循环
}
} else {
printf("输入的不是一个大写字母。\n");
return 1;
}
// 输出小写字母
printf("对应的英文小写字母是: %c\n", input_char);
return 0;
}
从键盘输入一个字符串,将其中的小写字母转化成大写字母,然后输出到一个磁盘文件letter.dat中保存,输入字符串以‘#’结束,再从该文件中读取这些数据再显示屏上输出,源程序命名为ex2.c 请用C语言输出
好的,这是一个字符串操作的问题。下面是 C 语言的代码实现:
```c
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main() {
char s;
FILE *fp;
// 从键盘输入字符串并转化为大写字母,并保存到磁盘文件
fp = fopen("letter.dat", "w");
if (fp == NULL) {
printf("打开文件失败!");
exit(1);
}
while ((s = getchar()) != '#') {
s = toupper(s); // 将小写字母转化为大写字母
fputc(s, fp);
}
fclose(fp);
// 从磁盘文件中读取内容并显示在屏幕上
fp = fopen("letter.dat", "r");
if (fp == NULL) {
printf("打开文件失败!");
exit(1);
}
while ((s = fgetc(fp)) != EOF) {
putchar(s);
}
fclose(fp);
return 0;
}
```
这段代码同样分为两部分,第一部分从键盘读入字符串,并将其中的小写字母转化为大写字母,逐个写入到名为 `letter.dat` 的文件中,直到输入 `#` 终止输入。第二部分从同一个文件中读取内容,并打印到屏幕上。
需要注意的是,这里使用了 `toupper()` 函数将小写字母转化为大写字母,同时需要检查文件是否打开成功,否则会输出错误信息并退出程序。
阅读全文