文档介绍:《C 语言程序设计》课程设计题目
1
1 一元稀疏多项式的运算
问题描述:设有两个带头指针的单链表表示两个一元稀疏多项式A、B,实现两个一元稀疏多项式的处理。
实现要求:
⑴ 输入并建立多项式;
⑵ 输出多项式,输为表头。空栈:当表中没有元素时称为空栈。
设栈 S=(a1,a2,…an),那么 a1 称为栈底元素,an 为栈顶元素。栈中元素按a1,a2,…an 的次序进栈,退栈的第一个元素应为栈顶元素 an。即栈的修改是按后进先出的原那么进展的。
top
⋀
空链栈
top
a
n
┇
a
3
a
2
a
1
⋀
栈的链式存储构造称为链栈,是运算受限的单链表。其插入和删除操作只能在表头位置上进展。链栈的根本形式如下:
非空链栈
《C 语言程序设计》课程设计题目
3
实现要求:
⑴ 链栈根本操作的实现:栈的初始化,生成一个空栈;压栈,即元素进栈; 弹栈,即元素出栈;
⑵ 十进制整数 N 向其它进制数 d(二、八、十六)的转换是计算机实现计算的根本问题。转换法那么:该转换法那么对应于一个简洁算法原理:
n=(n div d)*d+n mod d 其中:div 为整除运算,mod 为求余运算
⑶ 在文字处理软件或编译程序设计时,经常需要检查一个字符串或一个表达式中的括号是否相匹配?
匹配思想:从左至右扫描一个字符串(或表达式),那么每个右括号将与最近遇到的那个左括号相匹配。那么可以在从左至右扫描过程中把所遇到的左括号存放到堆栈中。每当遇到一个右括号时,就将它与栈顶的左括号(假设存在)相匹配,同时从栈顶删除该左括号。
算法思想:设置一个栈,当读到左括号时,左括号进栈。当读到右括号时, 那么从栈中弹出一个元素,与读到的左括号进展匹配,假设匹配成功,连续读入;
否那么匹配失败,返回 FLASE。
用 C 语言设计一个年历系统
问题描述:
年历系统首先对于输入的任一年,能够给出该年每月的日期及实际周几的对应状况,并与实际的星期数垂直对齐,如下表所示〔当输入 2004 时显示如下〕:
Input the year:2004
The calendar of the year 2004.
Januray 1 February 2
============================== ==============================
Sun
Mon
Tue
Wed
Thu
Fri
Sat
Sun
Mon
Tue
Wed
Thu
Fri
Sat
1
2
3
1
2
3
4
5
6
7
4
5
6
7
8
9
10
8
9
10
11
12
13
14
11
12
13
14
15
16
17
15
16
17
18
19
20
21
18
19
20
21
22
23
24
22
23
24
25
26
27
28
25
26
27
28
29
30
31
29
============================== ==============================
March 3 April 4
============================== ==============================
Sun Mon Tue Wed Thu Fri Sat Sun Mon Tue Wed Thu Fri Sat
1
2
3
4
5
6
1
2
3
《C 语言程序设计》课程设计题目
4
7
8
9
10
11
12
13
4
5
6
7
8
9
10
《C 语言程序设计》课程设计题目
5
14
15
16
17
18
19
20
11
12
13
14
15
16
17
21
22
23
24
25
26
27
18
19
20
21
22
23
24
28
29
30
31
25
26
27
28
29
30
============================== ==============================
功能要求 :
⑴ 输入任一年将显示出该年的全部月份日期