2.输入1个字母,如果是小写字母,输出其大写形式;如果是大写字母,输出其小写形式的C语言源代码
时间: 2024-10-24 17:05:41 浏览: 29
这是一个简单的C语言程序,用于实现将单个小写字母转为大写,或将大写字母转为小写的功能:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char input;
printf("请输入一个字符:");
scanf(" %c", &input); // 避免直接读入换行符
if (islower(input)) { // 判断是否为小写字母
input = toupper(input); // 转换成大写
printf("大写形式: %c\n", input);
} else if (isupper(input)) { // 判断是否为大写字母
input = tolower(input); // 转换成小写
printf("小写形式: %c\n", input);
} else {
printf("这不是一个小写或大写字母.\n");
}
return 0;
}
```
这段代码首先从用户那里获取一个字符,然后检查它是小写字母还是大写字母。如果是,它会使用相应的库函数`toupper`或`tolower`将其转换。如果不是字母,则输出错误信息。
相关问题
从键盘输入一个字符串,将其中的小写字母转化成大写字母,然后输出到一个磁盘文件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()` 函数将小写字母转化为大写字母,同时需要检查文件是否打开成功,否则会输出错误信息并退出程序。
用C语言将字符串中的小写字母转换为对应的大写字母其他字符不变部分源程序给出
以下是将字符串中的小写字母转换为大写字母的C语言源代码:
```c
#include <stdio.h>
#include <ctype.h>
int main() {
char str[100];
int i = 0;
printf("Enter a string: ");
fgets(str, sizeof(str), stdin);
while (str[i]) {
str[i] = toupper(str[i]);
i++;
}
printf("Uppercase string: %s", str);
return 0;
}
```
代码解释:
1. 首先,我们定义了一个字符串 `str` 和一个整数变量 `i`,用于遍历字符串。
2. 然后,我们使用 `fgets` 函数从标准输入中读入字符串。
3. 接着,我们使用 `toupper` 函数将字符串中的小写字母转换为大写字母。`toupper` 函数是 `ctype.h` 头文件中的一个函数,它接受一个字符作为参数,并将它转换为对应的大写字母。如果字符不是小写字母,则原样返回。
4. 最后,我们打印输出转换后的字符串。
注意:此代码假设输入的字符串不超过100个字符。如果输入的字符串超过100个字符,可能会导致缓冲区溢出。
阅读全文