对于数据库操作语句,系统不区分字母的大小写形式,认为大写和小写是一个字母,但是由于个人习惯不同,有人喜欢用大写形式,有人喜欢用小写形式。对于一个数据库操作语句,请你帮助他们,分别输出完全大写形式和完全小写形式。测试数据有多组,第一行的正整数T表示测试数据的组数。每组单独占一行,包含不多于200个字符。对于每组测试数据,分别输出其完全大写和完全小写形式,每种输出单独占一行,第一行输出完全大写形式,第二行输出完全小写形式。不要用strupr()和strlwr()函数。c语言程序
时间: 2024-03-14 08:42:52 浏览: 70
数据结构--大小写字母转换
好的,以下是 C 语言的实现代码:
```c
#include <stdio.h>
#include <string.h>
void to_upper(char* str) {
for (int i = 0; str[i] != '\0'; i++) {
if (str[i] >= 'a' && str[i] <= 'z') {
str[i] -= 32; // 转换为大写形式
}
}
}
void to_lower(char* str) {
for (int i = 0; str[i] != '\0'; i++) {
if (str[i] >= 'A' && str[i] <= 'Z') {
str[i] += 32; // 转换为小写形式
}
}
}
int main() {
int T;
scanf("%d", &T); // 输入测试数据组数
getchar(); // 清除输入缓冲区的回车符
while (T--) {
char str[201];
fgets(str, sizeof(str), stdin); // 输入字符串
str[strcspn(str, "\r\n")] = '\0'; // 清除字符串结尾的换行符
char upper_str[201], lower_str[201];
strcpy(upper_str, str);
strcpy(lower_str, str);
to_upper(upper_str); // 转换为大写形式
to_lower(lower_str); // 转换为小写形式
printf("%s\n", upper_str); // 输出完全大写形式
printf("%s\n", lower_str); // 输出完全小写形式
}
return 0;
}
```
运行程序后,输入测试数据的组数,然后输入每组字符串,程序会输出该字符串的完全大写形式和完全小写形式。例如,输入:
```
2
SELECT * FROM students
insert into products (name, price) values ('apple', 3.5)
```
程序会输出:
```
SELECT * FROM STUDENTS
select * from students
INSERT INTO PRODUCTS (NAME, PRICE) VALUES ('APPLE', 3.5)
insert into products (name, price) values ('apple', 3.5)
```
阅读全文