作者 张庆 单位 集美大学 输入2个大写英文字母,调用函数CharSwap将其转换成小写字母并交换。
时间: 2024-04-29 15:22:25 浏览: 152
下面是一个示例代码,其中CharSwap函数接受两个指向字符的指针参数,交换它们所指向的字符,并将其转换为小写字母。
```c++
#include <iostream>
using namespace std;
void CharSwap(char* a, char* b) {
*a = tolower(*a);
*b = tolower(*b);
char temp = *a;
*a = *b;
*b = temp;
}
int main() {
char c1, c2;
cout << "请输入两个大写字母:" << endl;
cin >> c1 >> c2;
CharSwap(&c1, &c2);
cout << "转换为小写字母并交换后的结果为:" << c1 << " " << c2 << endl;
return 0;
}
```
示例输出:
```
请输入两个大写字母:
A D
转换为小写字母并交换后的结果为:d a
```
相关问题
6-1 atof函数的实现 分数 10 作者 张庆 单位 集美大学
atof函数是C语言标准库中的一个函数,用于将字符串转换为双精度浮点数。下面是一个简单的atof函数的实现:
```c
#include <ctype.h>
double atof(const char *s)
{
double val, power;
int sign;
// 跳过空格字符
while (isspace(*s))
s++;
// 判断正负号
sign = (*s == '-') ? -1 : 1;
if (*s == '+' || *s == '-')
s++;
// 计算整数部分
for (val = 0.0; isdigit(*s); s++)
val = val * 10.0 + (*s - '0');
// 计算小数部分
if (*s == '.')
s++;
for (power = 1.0; isdigit(*s); s++) {
val = val * 10.0 + (*s - '0');
power *= 10.0;
}
// 计算指数部分
if (*s == 'e' || *s == 'E') {
int exp_sign, exp_val;
s++;
exp_sign = (*s == '-') ? -1 : 1;
if (*s == '+' || *s == '-')
s++;
for (exp_val = 0; isdigit(*s); s++)
exp_val = exp_val * 10 + (*s - '0');
power *= pow(10.0, exp_sign * exp_val);
}
return sign * val / power;
}
```
该函数首先跳过字符串中的空格字符,然后判断正负号,接着计算整数部分和小数部分,最后计算指数部分(如果有的话),最终返回转换后的双精度浮点数值。
需要注意的是,该实现并不完整,没有处理一些特殊情况,例如科学计数法中指数部分为负数的情况,或者字符串中包含非数字字符的情况。在实际应用中,应该根据具体需求进行完善。
10-3 查询所授每门课程平均成绩均在70分以上的教师(MSSQL) 分数 8 作者 张庆 单位 集美大学
可以使用如下的 SQL 语句来查询所授每门课程平均成绩均在70分以上的教师:
```
SELECT t.教师姓名
FROM 教师信息表 t
INNER JOIN 授课信息表 c ON t.教师编号 = c.教师编号
INNER JOIN 学生成绩表 s ON c.课程编号 = s.课程编号
GROUP BY t.教师姓名, c.课程编号
HAVING AVG(s.成绩) >= 70
```
其中,`教师信息表` 表、`授课信息表` 表和 `学生成绩表` 表是需要根据实际情况替换成对应的表名。在这个查询中,我们使用了三张表进行连接和聚合操作,首先通过 `INNER JOIN` 关键字将三张表进行关联,然后通过 `GROUP BY` 关键字对教师姓名和课程编号进行分组,最后通过 `HAVING` 关键字筛选出平均成绩大于等于 70 分的教师。
阅读全文