单链表:求所有不及格人数的累计数
所有 单链 人数
2023-09-14 09:14:36 时间
#include<iostream>
#include<malloc.h>
#include <iomanip>
using namespace std;
typedef int ElemType;
#define M 20
typedef struct LNode
{
ElemType data; //定义数据与
struct LNode* next; //指针域
}LNode, * LinkList;
void CreateLink(LinkList& h, ElemType a[], int n)
{
LinkList s, tc; int i;
h = (LinkList)malloc(sizeof(LinkList));
tc = h;
for (i = 0; i < n; i++)
{
s = (LinkList)malloc(sizeof(LinkList)); //头节点创建
s->data = a[i];
tc->next = s;
tc = s;
}
tc->next = NULL;
}
int Count(LinkList sl)
{
int k = 0;
LNode* p;
if (sl->next == NULL)return 0;
p = sl->next;
//不及格判断
while (p != NULL)
{
if (p->data < 60) { k++; }
p = p->next;
}
return k;
}
void main()
{
int N;
//cout << "请输入学生人数:" << endl;
cout << "学生人数为:";
cin >> N;
LinkList head;
ElemType a[M];
int i, k;
cout << "请依次输入所有学生的成绩:" << endl;
for (i = 0; i < N; i++)
scanf_s("%d", &a[i]);
cout << "所有学生的成绩依次为:" << endl;
for (i = 0; i < N; i++)
{
cout << a[i] << setw(6);
}
cout << endl;
CreateLink(head, a, N);//创建单链表
k = Count(head);//调用求计数值的函数
cout << "所有学生的成绩中不及格的人数为:" << k << "人";
cout << endl;
}
相关文章
- CListControl如何删除所有子项
- 显示所有APP的进程详细信息(进程ID、进程所在UID、进程占用内存、进程名)
- (回溯法)和为n的所有不增正整数和式分解算法
- kibana操作elasticsearch:查询所有数据
- 去掉所有的标签
- NLP:以周杰伦的《Mojito》歌词为例字符串切分之清除一段由列表组成的字符串文本中的所有杂乱符号
- JavaWeb课程复习资料(七)——select服务查询所有功能编写
- Qt QEvent(所有事件的翻译)
- 习题 5.8 输出所有的“水仙花数”。
- 【Android Gradle 插件】自定义 Gradle 任务 ② ( 在 Terminal 面板中执行 gradlew task 命令显示所有任务 | 命令行输出所有任务 | 单独执行指定任务 )
- 【Groovy】集合遍历 ( 调用集合的 every 方法判定集合中的所有元素是否符合闭包规则 | =~ 运算符等价于 contains 函数 | 代码示例 )
- 查看 内网所有ip
- e777. 获得JList组件的所有项
- Chrome68将所有HTTP网站标记为不安全!你的网站HTTPS了吗?
- mvn install:install-file将本地一个中央仓库没有的jar包,推到本地仓库----所有依赖不上仓库不能用