6-2 统计专业人数 分数 15 全屏浏览题目 切换布局 作者 张泳 单位 浙大城市学院 本题要求实现一个函数,统计学生学号链表中专业为计算机的学生人数。链表结点定义如下: struct ListNode { char code[8]; struct ListNode *next; }; 这里学生的学号共7位数字,其中第2、3位是专业编号。计算机专业的编号为02。 函数接口定义: int countcs( struct ListNode *head ); 其中head是用户传入的学生学号链表的头指针;函数countcs统计并返回head链表中专业为计算机的学生人数。 裁判测试程序样例: #include <stdio.h> #include <stdlib.h> #include <string.h> struct ListNode { char code[8]; struct ListNode *next; }; struct ListNode *createlist(); /*裁判实现,细节不表*/ int countcs( struct ListNode *head ); int main() { struct ListNode *head; head = createlist(); printf("%d\n", countcs(head)); return 0; } /* 你的代码将被嵌在这里 */ 输入样例: 1021202 2022310 8102134 1030912 3110203 4021205 # 输出样例: 3 代码长度限制 16 KB 时间限制 400 ms 内存限制
时间: 2024-03-14 22:45:30 浏览: 609
下面是我给出的代码实现:
```c
int countcs(struct ListNode *head) {
int count = 0;
while (head != NULL) {
if (head->code[1] == '0' && head->code[2] == '2') {
count++;
}
head = head->next;
}
return count;
}
```
这个函数的实现很简单,只需要遍历整个链表,对于每个结点,检查它的学号中第2和第3位是否为 "02",如果是的话,累加计数器即可。最后返回计数器的值即可。
相关问题
6-1 计算两个复数之积 分数 15 全屏浏览题目 切换布局 作者 张泳 单位 浙大城市学院 本题要求实现一个计算复数之积的简单函数。 函数接口定义: struct complex multiply(struct complex x, struct complex y);
以下是一个实现计算复数之积的函数的示例代码:
```c
#include <stdio.h>
struct complex {
double real; // 复数的实部
double imag; // 复数的虚部
};
// 计算两个复数之积
struct complex multiply(struct complex x, struct complex y) {
struct complex z;
z.real = x.real * y.real - x.imag * y.imag;
z.imag = x.real * y.imag + x.imag * y.real;
return z;
}
int main() {
struct complex x = {1.0, 2.0};
struct complex y = {3.0, 4.0};
struct complex z = multiply(x, y);
printf("(%g + %gi) * (%g + %gi) = %g + %gi\n", x.real, x.imag, y.real, y.imag, z.real, z.imag);
return 0;
}
```
在这个示例代码中,我们定义了一个 `struct complex` 结构体表示复数,包含实部和虚部两个成员变量。我们还定义了一个 `multiply` 函数,用于计算两个复数之积。在 `multiply` 函数中,我们使用了结构体变量的成员运算符 `.` 来访问结构体的成员变量。最后在 `main` 函数中,我们定义了两个复数 x 和 y,并调用 `multiply` 函数计算它们的积,然后输出结果。
运行上述代码,输出结果为:
```
(1 + 2i) * (3 + 4i) = -5 + 10i
```
这表示计算复数 `(1 + 2i)` 和 `(3 + 4i)` 的积,结果为复数 `(-5 + 10i)`。
6-1 计算两数的和与差 分数 10 作者 张泳 单位 浙大城市学院 本题要求实现一个计
6-1 计算两数的和与差,本题要求实现一个计算器程序,能够计算任意两个实数的和与差。
程序输入格式为:第一行输入一个整数n,表示有n组测试数据。接下来n行,每行输入两个实数,表示要计算的两个数。
程序输出格式为:对于每一组测试数据,输出两行结果,第一行为两个数的和,第二行为两个数的差。每行输出保留两位小数。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)