C语言 6-2 大写转小写 分数 10 作者 李祥 单位 湖北经济学院 C语言标准函数库中包括 tolower 函数,用于将大写字母转换为小写字母。作为练习,我们自己编写一个功能与之相同的函数。 函数原型 char ToLower(char x); 说明:参数 x 是任意字符的 ASCII 码。若 x 是大写字母的 ASCII 码,则函数值为对应小写字母的 ASCII 码,否则函数值与 x 相同。 裁判程序 #include <stdio.h> int IsUpper(char x); char T
时间: 2023-12-10 14:39:22 浏览: 219
以下是编写的代码:
```c
#include <stdio.h>
char ToLower(char x);
int main() {
char c;
printf("请输入一个字符:");
scanf("%c", &c);
printf("转换后的结果为:%c\n", ToLower(c));
return 0;
}
int IsUpper(char x) {
return (x >= 'A' && x <= 'Z');
}
char ToLower(char x) {
if (IsUpper(x)) {
return (x - 'A' + 'a');
} else {
return x;
}
}
```
函数 IsUpper 用于判断一个字符是否是大写字母,如果是返回 1,否则返回 0。
函数 ToLower 根据 IsUpper 的返回值判断是否需要转换,并返回转换后的结果。
相关问题
C语言 大写转小写 分数 10 作者 李祥 单位 湖北经济学院 C语言标准函数库中包括 tolower 函数,用于将大写字母转换为小写字母。作为练习,我们自己编写一个功能与之相同的函数。 函数原型 char ToLower(char x); 说明:参数 x 是任意字符的 ASCII 码。若 x 是大写字母的 ASCII 码,则函数值为对应小写字母的 ASCII 码,否则函数值与 x 相同。 裁判程序 #include <stdio.h> int IsUpper(char x); char ToLower(char x); int main() { char a, b; a = getchar(); b = ToLower(a); putchar(b); putchar('\n'); return 0; } /* 你提交的代码将被嵌在这里 */ 提示:利用前面作业中编写的 IsUpper 函数判断大写字母。
``#include <stdio.h>
int IsUpper(char x);
char ToLower(char x);
int main() {
char a, b;
a = getchar();
b = ToLower(a);
putchar(b);
putchar('\n');
return 0;
}
int IsUpper(char x) {
if (x >= 'A' && x <= 'Z') {
return 1;
} else {
return 0;
}
}
char ToLower(char x) {
if (IsUpper(x)) {
return x + ('a' - 'A');
} else {
return x;
}
}
```
编写一个函数,接受字符串 ‘6-1-2 * 分数 10 作者李祥 单位湖北经济学院’ 作为输入,目标是返回该字符串中’*'左边的所有内容,包括空格和标点。这个函数应如何设计? 用c语言
你可以使用C语言编写一个简单的函数来处理这个问题。这里可以使用指针和循环来找到星号前的部分。下面是一个可能的函数设计:
```c
#include <stdio.h>
#include <string.h>
// 函数声明
char* get_before_star(const char* input);
// 实现函数
char* get_before_star(const char* input) {
int len = strlen(input); // 获取字符串长度
for (int i = 0; i < len; i++) {
if (input[i] == '*') { // 找到星号位置
return (char*) &input[0]; // 返回直到星号的位置,即整个左侧部分的地址
}
}
return input; // 如果没有找到星号,直接返回原串
}
int main() {
const char* str = "6-1-2 * 分数 10 作者李祥 单位湖北经济学院";
char* result = get_before_star(str);
printf("'%s' 星号左边的内容: %s\n", str, result);
free(result); // 释放内存,因为只复制了数据,不是整个字符串
return 0;
}
```
在这个函数中,我们遍历输入字符串,当遇到'*'字符时,停止并返回从开始到那个位置的内存地址。如果没有找到'*',则返回整个输入。
阅读全文