C语言程序设计 (学生选修课程设计)

C语言程序设计 (学生选修课程设计),第1张

这是我做的,你看是否满意?可能有点大,但也没办法呀,你的题目也比较大,呵呵!所以,如果满意,多给我追加点分!

#include "stdioh"

#include "stdlibh"

#include "stringh"

typedef struct course

{

char number[15],name[25];

int kind,time,lessontime,practicetime,credit,term;

}type;

FILE fp1;

void overview(); //浏览函数,负责浏览整个课程信息

void seek(); //查询函数,负责查询课程信息

void choose_course();//选课函数,负责让用户选课

void out(type temp);

void input();

int main()

{

int n,i;

if((fp1=fopen("course_informationtxt","wb"))==NULL)

{printf("创建文件失败!\n");exit(0);}

printf("请输入要存储的课程数目:\n");

scanf("%d",&n);

printf("开始创建文件,请输入课程信息:\n\n");

for(i=0;i<n;i++)

{

printf("请输入第%d门课程的信息:\n",i+1);

input();

printf("\n");

}

printf("如想浏览整个课程信息,请输入1;如想查询课程信息,请输入2; 如想进行选课,请输入3;如想结束选修课系统,请输入0!\n");

while((scanf("%d",&n))!=EOF)

{

if(n==1)

overview();

if(n==2)

seek();

if(n==3)

choose_course();

if(n==0)

exit(0);

printf("\n\n如想继续 *** 作,只要按规则输入你要进行的 *** 作即可!\n规则:如想浏览整个课程信息,请输入1;如想查询课程信息,请输入2;如想进行选课,请输入3!\n");

}

printf("欢迎您使用此程序进行选课,谢谢!\n");

fclose(fp1);

return 0;

}

void input()

{

course c_a;

printf("请输入课程编码: ");

scanf("%s",c_anumber);

printf("请输入课程名: ");

scanf("%s",c_aname);

printf("请输入课程性质:限选课,请输入1;选修课,请输入2;必修课,请输入3! ");

scanf("%d",&c_aname);

printf("请输入课程总学时: ");

scanf("%d",&c_atime);

printf("请输入课程授课时间: ");

scanf("%d",&c_alessontime);

printf("请输入课程实验或实践时间: ");

scanf("%d",&c_apracticetime);

printf("请输入课程学分: ");

scanf("%d",&c_acredit);

printf("请输入课程所在的学期,比如第二学期,就输入2即可。");

scanf("%d",&c_aterm);

fwrite(&c_a,sizeof(struct course),1,fp1);//将一个结构体元素写入文件中

}

void out(type temp)

{

printf("课程代码: %s\n课程名: %s\n",tempnumber,tempname);

printf("课程名: %s\n",tempname);

if(tempkind==1)

printf("课程性质: Limited optional course\n");

else if(tempkind==2)

printf("课程性质: Optional course\n");

else if(tempkind==3)

printf("课程性质: Required Courses\n");

else

printf("该编码系统不认识,即无对应的课程性质存在!\n");

printf("课程总学时: %d\n课程授课学时: %d\n实验或上机学时: %d\n学分: %d\n课程开课学期: %d\n\n",temptime,templessontime,temppracticetime,tempcredit,tempterm);

}

void overview()

{

rewind(fp1);

course temp;

printf("整个课程信息如下:\n");

while((fread(&temp,sizeof(type),1,fp1))!=0)

out(temp);

}

void seek()

{

int judge,credit=0,kind=0;

char a='N';

course temp;

printf("如想按学分查询,请输入1;如想按课程性质,请输入2:\n");

scanf("%d",&judge);

rewind(fp1); //将文件指针位置置为开头

if(judge==1)

{

printf("请输入要查询的学分:\n");

scanf("%d",&credit);

while((fread(&temp,sizeof(type),1,fp1))!=0)

if(credit==tempcredit)

out(temp);

}

else if(judge==2)

{

printf("请输入你要查找课程的性质(限选课,请输入1;选修课,请输入2;必修课,请输入3):");

scanf("%d",&kind);

while((fread(&temp,sizeof(type),1,fp1))!=0)

if(tempkind==kind)

out(temp);

}

else

printf("不好意思,无此类查询!\n");

}

void choose_course()

{

rewind(fp1);

course temp;

int judge=1,n=0,time=0,credit=0;

char choose[20][20];

r1: printf("请开始填写课程编号进行选课:\n");

while(judge==1)

{

printf("请输入你所选课程的标号: ");

scanf("%s",choose[n]);

n++;

printf("如想继续选课,请输入1;如想提交,请输入0!\n");

scanf("%d",&judge);

}

while((fread(&temp,sizeof(type),1,fp1))!=0)

{

for(int i=0;i<n;i++)

if(strcmp(tempnumber,choose[i])==0)

{time=time+temptime;credit=tempcredit;break;}

}

if(time<270||credit<40)

goto r1;

printf("你所选的课为:\n");

while((fread(&temp,sizeof(type),1,fp1))!=0)

{

for(int i=0;i<n;i++)

if(strcmp(tempnumber,choose[i])==0)

{out(temp);break;}

}

}

1、学好c语言,你可以很好地应付任何一种编程工具。

2、一定要多上机练习,通过程式了解相关知识。几经反复方得正果。

3、不要把学习c语言当成一种任务,更不要把它看成很难完成的任务。要充满自信,只要是一个智力正常的人都能学好c语言。始终保持游戏的心态,多发现其中的乐趣。当感到编程趣味无穷,那你在电脑方面将前程无量。

4、如果一个程式一时无法弄清楚最后暂时放在一边,过一段时间你可能会从其他的程式中悟出道理。

5、c语言是一个整体,各个方面是有机联系的,要从总体上把握它,不要把它割裂成互不关联的部件。

6、不要完全相信教材(包括本讲义),所有结论最好都上机验证。

怎样学好c语言

1

工欲善其事,必先利其器

准备工作:一个开发环境,如turbo

c

20、visual

c++等开发工具;一本好教材,如谭浩强主编的《c语言程序设计》(第二版)。我当时看的是他的第一版,就为它的简洁、完美所吸引,简直爱不释手,用了两个星期一口气看完。

2

秘密武器

初学者学习计算机语言要会“读程序”,要对小型的应用型、游戏型程序感兴趣,并模仿去加深对c语言程序设计的理解和 *** 作,只有不断地写程序、调试程序才能得到编写程序的经验和加深对程序的理解,这也是学习编写优秀高级程序的秘密武器。

3

发扬探索精神

学习c语言程序设计有点像做数学难题,只要我们善于思考,善于探索,发扬探索精神去寻找好的设计思想和方法,才能把c语言的精髓真正地掌握。

备战c语言考试要诀

1

了解大纲,临阵不乱

各类笔试中,大多数考题是与大纲要求的基本内容一致的,难度不高,但内容十分广泛,应牢固掌握c语言考试大纲要求的基础部分。只有熟悉题型,理解语法、句法,做到心中有数,才能临阵不乱。

2

善于归纳,强化记忆

对于需要记忆的计算机基础知识和基本概念,如果考试时因此失分就十分可惜。如:c语言中有几种不同的数据类型?运算的优先级别是怎样的?因此我们需要善于归纳这些计算机基础知识,并在理解的基础上强化记忆。

3

重视实践,善于调试

计算机科学是一门理论性、实践性都很强的学科,对c语言考试的参加者来说,基础理论方面要求不高,而上机试题往往是很多考生不能通过考试的重要原因,因此要勤于实践。

4

多做练习,查漏补缺

在认真地学完指定用书后,最好再找些试题,认真地测试一下,一则可以检查自己的复习情况;二则可以查漏补缺;三则可以调节心理状况,以备正式考试时沉着冷静、万无一失。

以上就是关于C语言程序设计 (学生选修课程设计)全部的内容,包括:C语言程序设计 (学生选修课程设计)、怎样才能学好C语言、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zz/9332221.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-27
下一篇 2023-04-27

发表评论

登录后才能评论

评论列表(0条)

保存