- 1、本文档共20页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PAGE / NUMPAGES
C语言课程设计报告
班 级: 电气1004
学 号: 201009334
姓 名: 雷海燕
指导教师: 王果
评语:
评语:
2011 年 07 月
1 基本题目
1.1题目
1.1 题目
有17个人围成一圈,从0号的人开始报数,凡报到3的倍数的人离开圈子,然后再数下去。直到最后只剩下一个人为止。问此人原来的位置是多少号。
1.2 题目分析
创建一个指针变量,指针变量中的初值为0至16。然后通过for循环将指针变量中所指的值是三的倍数的变量赋值为0,最后找出所要找的值。
1.3 程序
#include stdio.h
#define N 17
int main()
{
int i,j,k,a[N+1],*p;
for(i=0,p=a;p=a+N;i++,p++)
*p=i;
p=a+1;
k=N;
for(i=0,j=1;k!=1;j++)
{
if(p(a+N))
p=a+1;
if(*p!=0)
i++;
if(i%3==0i!=0)
{
*p=0;i=0;k--;
}
p++;
}
for(i=1;i=N;i++)
if(a[i]!=0)
printf(最后留下的是%d\n,a[i]);
return 0;
}
1.4流程图
开始
开始
i=0,p=a N=17
i=0,p=a N=17
i=0
i=0
p=a+N
p=a+N
Y
Y
N*p=i, i++, p++
N
*p=i, i++, p++
p=a+1, i=0, j=0
p=a+1, i=0, j=0
k!=1k!=1
k!=1
k!=1
Y
Y
pa+N
pa+N
N
N
N
N
p=a+N
p=a+N
Y
Y
*p!=0
*p!=0
N
N
i++
i++
Y
Y
i%3!=0
i%3!=0
N
N
Y
Y
*p=0,i=0,k--
*p=0,i=0,k--
p++,j++
p++,j++
p++,j++
p++,j++
i=N
i=N
Y
Y
输出最后留下的值
输出最后留下的值
N
N
i++
i++
结束
图1.1 基本题目的流程图
1.5程序的运行结果
基本体运行结果如图1.2所示:
图1.2 基本题目运行结果
2 改错题目
2.1 改正后程序
#include stdio.h
int main()
{
int x=1; int y;
y=x++;
printf(y=%d ,y);
int z;
z=++x;
printf(z=%d\n,z)
return 0;
}
2.2 程序运行结果
程序完成的功能:用x的初始值算出y与z的值。
改正后的运行结果如图2.1所示:
图2.1 改正后的运行结果
3.综合题目
3.1 题目
班级成绩管理系统,对一个有N个学生的班级,每个学生有M门课程。该系统实现对班级成绩的录入、显示、修改、排序、保存等操作的管理。
3.2 程序的主要功能
本程序实现对一个班学生某几门课程的录入,成绩的显示、成绩的保存、对成绩进行排、对成绩进行修改、对成绩进行统计(包括每门课程的最高分、平均分、超过每门平均分的人数等),运行程序后退出程序。
3.3 各函数的功能
(1)input函数
利用嵌套循环语句,实现对N位学生,M门课程的输入。
(2)output函数
实现对先前输入学生成绩的输出。
(3)save函数
将输入数据存入指定文件中。
(4)rank函数
计算出所有学生的成绩总分,并按照分数从高到低,进行输出。
(5)change函数
判断密码是否正确,并对选中学生成绩进行修改。
3.4程序流程图
开始
输入
输入 x
A或aB或
A或a
B或b
F或f
i=0i=0C
i=0
i=0
C或c
D或d
E或e
G或g
输出科目名利用for循环,对每一位学生算出成绩总分
输出
科目名
利用for循环,对每一位学生算出成绩总分
输入科目名将数据存入指定文件
输入
科目名
将数据存入指定文件
Y利用coun函数,进行对学生成绩的统计
Y
利用coun函数,进行对学生成绩的统计
详见图6
i++
i++
i++YR
i++
Y
Return 0,
即退出系统
i=M
i=M
利用tran函数,进行加密码,修改学生成绩。详见图5
利用tran函数,进行加密码,修改学生成绩。
详见图5
iMN
iM
N
Ni=0
N
i=0
i=0输出姓名、学号
i=0
输出姓名、学号
利用for循环,将学生按成绩从高到
文档评论(0)