C语言综合设计报告

合集下载

c语言课程设计报告详细版

c语言课程设计报告详细版

c语言课程设计报告详细版一、课程目标知识目标:1. 掌握C语言的基本语法和结构,包括变量声明、数据类型、运算符、表达式和语句。

2. 理解并能运用控制结构,如顺序、选择和循环结构进行程序设计。

3. 学会使用数组、函数和指针进行程序开发,并能理解它们在解决复杂问题中的应用。

4. 熟悉基本的输入输出操作,文件操作以及简单的错误处理机制。

技能目标:1. 能够编写简单的C程序,解决实际问题,展现出逻辑思考和问题解决的能力。

2. 能够阅读和分析C程序代码,理解程序的结构和执行过程。

3. 能够使用调试工具检查和修正程序中的错误,提高程序的稳定性和可靠性。

4. 能够通过小组合作,完成一个综合性的项目,培养团队协作和项目管理的初步技能。

情感态度价值观目标:1. 培养学生对编程的兴趣,激发探究计算机科学的热情,形成主动学习和终身学习的习惯。

2. 培养学生的创新思维和批判性思维,鼓励尝试不同的解决方案,勇于面对编程中的挑战。

3. 增强学生的信息意识和责任感,理解程序在现实生活中的应用和影响,认识到编程对社会发展的贡献。

4. 通过项目实践,培养学生的集体荣誉感,加强沟通能力,形成良好的团队合作精神。

课程性质分析:本课程为高年级的C语言程序设计,旨在通过项目驱动的教学方法,使学生在实践中掌握C语言的编程技能,并能够在日常生活和学习中应用。

学生特点分析:学生具备一定的逻辑思维能力,对计算机编程有一定兴趣,但个体差异较大,需要针对不同层次的学生设计不同难度和类型的教学活动。

教学要求:1. 结合实际案例进行教学,强调理论知识与实践操作的结合。

2. 注重培养学生的实际编程能力和问题解决能力,鼓励学生自主探索和协作学习。

3. 通过形成性评价和总结性评价相结合的方式,全面评估学生的学习成果。

二、教学内容1. C语言基础- 变量与数据类型- 运算符与表达式- 输入输出函数- 顺序结构程序设计2. 控制结构- 选择结构(if-else)- 循环结构(for、while、do-while)3. 函数与数组- 函数定义与调用- 数组的使用- 二维数组4. 指针与字符串- 指针的概念与使用- 指针与数组- 字符串处理函数5. 文件操作与错误处理- 文件的打开与关闭- 文件的读写操作- 简单错误处理6. 综合项目实践- 项目需求分析- 功能模块划分- 编程实现与调试- 项目展示与评价教学内容安排与进度:第一周:C语言基础第二周:控制结构第三周:函数与数组第四周:指针与字符串第五周:文件操作与错误处理第六周至第八周:综合项目实践教材章节关联:《C程序设计》第一章至第五章,涵盖课程教学内容中的所有知识点,为综合项目实践打下基础。

c语言程序设计实验报告模板

c语言程序设计实验报告模板

c语言程序设计实验报告模板篇一:C语言程序设计实验报告一、实验目的:1、掌握C语言的数据类型和变量的声明。

2、掌握不同类型数据之间赋值的规律。

3、掌握C语言的运算符和表达式的使用。

4、熟悉C程序的编辑、编译、连接和运行的过程。

二、实验内容:①输人程序: #includevoid main { int a, b; float d,e; char c1,c2; double f, g; long m, n; unsigned int p,q; a=61;b=62; c1=a;c2=b; d=3.56;e=-6.87; f=3157.890121;g=0.123456789; m=50000;n=-60000; p=32768;q=40000; printf(a=%d,b=%d c1=%c,c2=%c d=%6.2f,e=%6.2f ,a,b,c1,c2,d,e); printf(f=%15.6f,g=%15.6f m=%ld,n=%ld p=%u,q=%u ,f,g,m,n,p,q); } ②运行此程序并分析结果 (2)按习题4. 8要求编写程序题目为: 设圆半径r=l. 5,圆柱高h=3,求圆周长、圆面积、圆球表面积、圆球体积、圆柱体积。

用scanf输人数据,输出计算结果口输出时要有文字说明,取小数点后两位数字。

程序:三、实验步骤:①输人程序:#includevoid main { int a, b; float d,e; char c1,c2; doublef, g; long m, n; unsigned int p,q; a=61;b=62; c1=a;c2=b; d=3.56;e=-6.87; f=3157.890121;g=0.123456789; m=50000;n=-60000; p=32768;q=40000; printf(a=%d,b=%d c1=%c,c2=%c d=%6.2f,e=%6.2f ,a,b,c1,c2,d,e); printf(f=%15.6f,g=%15.6f m=%ld,n=%ld p=%u,q=%u ,f,g,m,n,p,q); }②运行此程序并分析结果。

c语言课程设计报告模板及范文

c语言课程设计报告模板及范文

c语言课程设计报告模板及范文一、引言引言部分在课程设计报告中扮演了导读的角色,通常包括以下内容:•背景:简要介绍课程设计的背景和目的。

•目的:阐述课程设计的目标和意义。

•项目概述:对设计项目的总体概况进行描述。

•报告结构:简要介绍后续报告的组织结构。

二、需求分析需求分析是课程设计过程中的重要环节,它用于明确项目的目标和功能,通常包括以下内容:•问题定义:对设计中需要解决的问题进行明确定义。

•功能需求:详细描述设计项目需要实现的各项功能。

•性能需求:根据设计的要求,确定设计项目的性能指标。

•接口需求:描述设计项目与其他模块或系统之间的接口要求。

三、设计方案设计方案部分是课程设计报告的核心,通常包括以下内容:•总体设计思路:对设计方案的总体思路进行简要介绍。

•模块划分:按照功能将设计项目分成各个模块,并描述各个模块的功能和关系。

•模块设计:对各个模块进行详细的设计说明,包括算法、数据结构等。

•界面设计:如果设计项目包含界面,需要对界面进行详细的设计说明。

•流程图:结合文字和图表展示设计项目的流程。

四、实现与测试实现与测试部分是课程设计报告中比较实际的内容,通常包括以下内容:•开发环境:列出完成设计的开发环境和所使用的工具。

•代码实现:详细描述设计项目的代码实现方法。

•测试方法:列出设计项目的测试方法和测试样例。

•测试结果:给出设计项目在测试样例下的实际运行结果。

五、总结与展望总结与展望部分对整个课程设计进行总结,并对未来的优化和拓展提出展望,通常包括以下内容:•成果总结:对整个课程设计的成果进行总结和评价。

•存在问题:对设计项目中存在的问题和不足进行归纳和总结。

•改进方向:针对存在问题提出改进的方向和思路。

•未来展望:对设计项目未来的拓展和优化方向进行展望。

六、参考文献在课程设计报告中,如果有引用的书籍、论文或网络资源,需要列出参考文献。

范文示例:```c #include <stdio.h>void main() { printf(。

c语言实验报告册

c语言实验报告册

c语言实验报告册C语言实验报告册。

实验一,C语言基本程序设计。

1. 实验目的。

通过本实验,掌握C语言的基本程序设计方法,包括变量的定义和使用、表达式的计算、控制结构的使用等。

2. 实验内容。

(1)编写一个C程序,实现输入两个整数,然后输出它们的和、差、积和商。

(2)编写一个C程序,实现输入一个实数,计算并输出它的绝对值。

3. 实验步骤。

(1)定义两个整型变量a和b,用来存储输入的整数。

(2)使用printf函数提示用户输入两个整数,并使用scanf函数将用户输入的值分别赋给变量a和b。

(3)定义四个整型变量sum、diff、product和quotient,分别用来存储a和b的和、差、积和商。

(4)分别计算a和b的和、差、积和商,并将结果分别赋给sum、diff、product和quotient。

(5)使用printf函数输出sum、diff、product和quotient的值。

4. 实验结果。

输入:a = 5。

b = 3。

输出:sum = 8。

diff = 2。

product = 15。

quotient = 1。

5. 实验结论。

通过本实验,我掌握了C语言的基本程序设计方法,包括变量的定义和使用、表达式的计算、控制结构的使用等。

在实际编程中,我需要注意变量的类型和范围,以避免数据溢出和精度丢失的问题。

实验二,C语言函数的使用。

1. 实验目的。

通过本实验,学习C语言函数的定义和调用,掌握函数参数的传递和返回值的使用。

2. 实验内容。

(1)编写一个C程序,实现输入两个整数,计算它们的最大公约数和最小公倍数。

(2)编写一个C程序,实现输入一个整数n,计算并输出1到n的阶乘之和。

3. 实验步骤。

(1)定义一个函数gcd,用来计算两个整数的最大公约数。

(2)定义一个函数lcm,用来计算两个整数的最小公倍数。

(3)定义一个函数factorial,用来计算一个整数的阶乘。

(4)在主函数中,调用gcd和lcm函数计算最大公约数和最小公倍数;调用factorial函数计算阶乘之和。

c语言综合实验报告

c语言综合实验报告

c语言综合实验报告C语言综合实验报告引言:C语言是一门广泛应用于计算机科学领域的编程语言,具有高效、灵活和可移植等特点。

在本次实验中,我们将通过综合实验来探索C语言的各种特性和用法。

本报告将详细介绍实验的目的、设计思路、实验过程、结果分析以及对C 语言的理解和应用。

一、实验目的本次综合实验旨在通过实践,加深对C语言的理解和应用。

具体目标包括:1. 熟悉C语言的基本语法和数据类型;2. 掌握C语言的输入输出操作;3. 理解和运用C语言的控制结构和函数;4. 实现一个简单的C语言项目,提升编程能力。

二、设计思路在本次实验中,我们选择了一个简单而实用的项目——学生成绩管理系统。

该系统可以实现学生信息的录入、查询、修改和删除等功能。

通过这个项目,我们能够全面运用C语言的各种特性和用法。

三、实验过程1. 定义结构体:首先,我们需要定义一个学生的结构体,包含学号、姓名和成绩等信息。

通过结构体,我们可以方便地对学生信息进行管理和操作。

2. 实现录入功能:接下来,我们编写一个函数,实现学生信息的录入。

通过用户输入学生的学号、姓名和成绩,我们可以将这些信息存储到结构体数组中,并将其保存到文件中。

3. 实现查询功能:为了方便查找学生信息,我们编写了一个查询函数。

该函数可以根据学号或姓名来查找学生信息,并将结果显示在屏幕上。

4. 实现修改功能:当需要修改学生信息时,我们可以调用修改函数。

该函数可以根据学号或姓名找到对应的学生信息,并允许用户修改学生的姓名和成绩。

5. 实现删除功能:最后,我们编写了一个删除函数,用于删除指定学生的信息。

用户只需要输入学号或姓名,系统就可以找到对应的学生并将其从结构体数组中删除。

四、结果分析经过实验,我们成功实现了学生成绩管理系统。

该系统具备录入、查询、修改和删除等功能,能够方便地管理学生的信息。

通过这个实验,我们不仅掌握了C语言的各种特性和用法,还提升了编程能力。

五、对C语言的理解和应用通过本次实验,我们对C语言有了更深入的理解和应用。

C语言程序设计实验实验报告

C语言程序设计实验实验报告

C语⾔程序设计实验实验报告《C语⾔程序设计实验》实验报告实验九⽂件编程(⼀)班级:_07某某专业1班_学号:______姓名:___实验样例_____⽇期:___2008.6.10_____台州学院数信学院计算机系制作⼀、实验⽬的和要求综合使⽤基本结构、基本算法、函数、指针、结构体、链表等知识设计程序。

⼆、实验指导1、注意:本次实验为综合性实验,需要综合本课程以前所学内容,完成编制⼀个⼩型应⽤程序。

需要复习课本以前所学内容,浏览上课讲解的相关内容。

2、实验时间安排:准备实验⽅案,上课时上机编程,课余完成整个设计并完成实验报告。

3、实验具体要求:以⼀张假想的学⽣期中成绩表为实验对象,编制⼀个⼩型应⽤程序,可以考虑实现以下功能:(1)成绩修改;(2)成绩查询;(3)成绩统计;(4)成绩输⼊。

也可以实现其他⾃定义的功能。

界⾯采⽤简易菜单形式,可以分级显⽰。

实验需要进⾏以下步骤:需求分析、程序设计、程序调试、程序运⾏,并对程序运⾏效果进⾏分析,提出改进⽅案。

初步锻炼学⽣的程序设计能⼒、程序调试能⼒、对实验结果进⾏综合分析的能⼒。

4、实验成绩评价标准:参见成绩评定表。

四、实验报告内容(参见样本,请另附页)实验报告必须包含以下内容:1、对你设计的程序功能进⾏的较详细描述。

2、画出程序测试⽤的学⽣期中成绩表(包含:表头、若⼲⾏包含学⽣成绩等信息的数据⾏)。

3、给出程序清单(包含结构体的声明与定义、所有的函数声明、所有的全局变量、所有的函数定义、必要的注释。

注:如果程序过长,可以不⽤给出所有的函数定义,只给出主要的函数定义)。

4、运⾏结果(写出运⾏时的主界⾯、各模块的实现界⾯等,不作具体要求,但要求能清晰地体现出程序的功能)。

5、对你的设计作⼀个评价(可以包含你所花的时间、精⼒,你遇到的困难及如何解决的,你的设计过程所遇到的其他事情;必须包含你对设计的客观评价,以及提出的改进⽅案)。

1、程序功能描述:(略)2、成绩表样表:3、程序清单:(红⾊部分是和上⼀个程序的区别之处)#includestruct student /*期中成绩表的结构声明*/{int num;char name[20];char sex;float YuWen;float ShuXue;float YingYu;float totle;};#define MAX_STU_NUMBER 100 /*宏定义最⼤学⽣数为100⼈*/struct student Stu[MAX_STU_NUMBER]; /*⼀次性定义100个学⽣的存储空间*/int STU_NUMBER; /*存放学⽣数*/char *FileName = "chengji.txt"; /*成绩存放的⽂件*//*所有的函数声明:*/int SelectMainMenu(); /*显⽰并选择主菜单。

C语言程序设计课程设计报告

C语言程序设计课程设计报告

C语言程序设计课程设计实验报告一、设计名称:学生成绩治理查询系统实验项目性质:综合性所涉及课程:C语言程序设计打算学时:实验学时12二、设计目的:1.通过本课程设计,培育上机动手能力,使学生巩固《C语言程序设计》课程学习的内容,把握工程软件设计的大体方式,强化上机动手能力,闯过编程关;2.为后续各门运算机课程的学习打下坚实基础。

3.明白得程序设计的思路,把握结构化程序设计的方式,综合利用C语言进行程序编写,巩固常常利用的C语言概念,如数组、指针、结构体、链表、文件操作等,注意良好的程序设计风格的培育。

提高编写程序解决实际问题的能力、调试程序的技术。

三、设计环境(软件、硬件及条件)1.硬件:PC机2.软件:Turbo C++四、设计说明:程序系统的结构:用一系列图表列出本程序系统内的每一个程序(包括每一个模块和子程序)的名称、标识符和它们之间的层次结构关系。

主程序:新建:输入记录(遇#号时停止输入)。

插入:在指定位置插入记录。

显示:列出所有记录。

查询:一、按学号查询;二、按名字排序。

删除:一、按学号删除;二、按名字删除;3、删除所有记录。

排序:一、按语文成绩排序;二、按英语成绩排序;3、按数学成绩排序。

保留:保留为任意名字,系统自动加后缀名为.txt。

读取:读取程序目录下的后缀名为.txt的文件。

退出:退出程序。

五、各功能模块的具体实现,用图表表示。

输入记录显示开始:输入学号输入的学号是否为#Y N 结束,返回主菜单输入记录循环输入结束开始p=hp!=NULL输出学生信息;p=p->next结束按学号(姓名)查询信息Y N读取文件六、各模块(函数)的功能介绍,数据结构设计描述,参数说明等。

STUDENT *init(); /*初始化链表*/STUDENT *create(); /*新建链表*/STUDENT *del_no(STUDENT *h);/*按学号删除信息*/STUDENT *del_name(STUDENT *h); /*按姓名删除信息*/void print(STUDENT *h); /*显示信息函数*/void search_no(STUDENT *h); /*按学号搜索*/void search_name(STUDENT *h); /*按姓名搜索*/STUDENT *insert(STUDENT *h); /*插入信息函数*/void sort(STUDENT *h);/* 排序函数*/void save(STUDENT *h);/*保留数据到文件*/void load(STUDENT *h); /*从文件读取数据*/int menu_main(); /*菜单函数*/void inputs(char *prompt,char *s,int count);/*输出信息*/七、程序代码:Enter records\n");printf(" 2. Add records\n");printf(" 3. List records\n");printf(" 4. Search records\n");printf(" 5. Delete records\n");printf(" 6. Sort records\n");printf(" 9. Quit\n\n");printf("*****************************************\n");do{ printf("\n Enter you choice(1~9):"); /*提示输入选项*/ scanf("%s",s); /*输入选择项*/c=atoi(s); /*将输入的字符串转化为整型数*/}while(c<1||c>9); /*选择项不在1~9之间重输*/return c; /*返回选择项,主程序依照该数挪用相应的函数*/}Search records on number\n");printf(" 2. Search records on name\n");printf(" 3. Back\n\n");printf("*****************************************\n");do{ printf("\n Enter you choice(1~3):"); /*提示输入选项*/ scanf("%s",s); /*输入选择项*/c=atoi(s); /*将输入的字符串转化为整型数*/}while(c<1||c>3);return c; /*返回选择项,主程序依照该数挪用相应的函数*/}Chinese\n");printf(" 2. English\n");printf(" 3. Math\n");printf(" 4. Back\n\n");printf("*****************************************\n");do{ printf("\n Enter you choice(1~4):"); /*提示输入选项*/ scanf("%s",s); /*输入选择项*/c=atoi(s); /*将输入的字符串转化为整型数*/}while(c<1||c>4);return c; /*返回选择项,主程序依照该数挪用相应的函数*/}Delete records on number\n");printf(" 2. Delete records on name\n");printf(" 3. Delete all records\n");printf(" 4. Back\n\n");printf("*****************************************\n");do{ printf("\n Enter you choice(1~4):"); /*提示输入选项*/ scanf("%s",s); /*输入选择项*/c=atoi(s); /*将输入的字符串转化为整型数*/}while(c<1||c>4);return c; /*返回选择项,主程序依照该数挪用相应的函数*/}.");/*提示*/getch(); /*读入任意字符*/}.\n");getch(); /*读入任意字符*/if(p==h)h=p->next;elseq->next=p->next;free(p); /*释放*/printf("\n%s had been deleted\n",s); }printf("\nPress any key to continue..."); getch(); /*读入任意字符*/return h;}.\n");getch();if(p==h)h=p->next;else q->next=p->next;free(p); /*释放*/printf("\n%s had been deleted\n",s);}printf("\nPress any key to continue...");getch(); /*读入任意字符*/return h;}.");getch(); /*读入任意字符*/}.");getch(); /*读入任意字符*/}xt"};STUDENT *p;FILE *fp; /*指向文件的指针*/printf("\n Input the filename:");scanf("%s",outfile);strcat(outfile,last);if((fp=fopen(outfile,"wb"))==NULL) /*打开文件,并判定打开是不是正常*/ {printf("\nCannot open file!\n");exit(1); /*退出*/}p=h;while(p!=NULL){if(fwrite(p,sizeof(STUDENT)-sizeof(p->next),1,fp)!=1){printf("Error!\n");exit(1);} /*写入*/p=p->next;}fclose(fp); /*关闭文件*/printf("\n------OK------\n");printf("Press any key to continue...");getch(); /*读入任意字符*/}xt"};STUDENT *p,*a1=NULL,*a2=NULL;FILE *fp;/*概念文件指针*/printf("\n Input the filename:");scanf("%s",outfile);strcat(outfile,last);if((fp=fopen(outfile,"rb"))==NULL)/*打开文件*/{printf("\nCannot open file!\n");exit(1); /*退出*/}p=h;a1=a2=(STUDENT *)malloc(LEN);fread(a1,sizeof(STUDENT)-sizeof(a1->next),1,fp); while(!feof(fp)){n++;if(n==1)h=a1;else a2->next=a1;a1=(STUDENT *)malloc(LEN);fread(a1,sizeof(STUDENT)-sizeof(a1->next),1,fp);}a2->next=NULL;printf("\n------OK------\n");printf("Press any key to continue...");getch(p); /*读入任意字符*/}///////////////////////////////////////////void sort(STUDENT *h) /*排序函数*/{int i=0,j;STUDENT *p,*q,*t,*h1,*z;clrscr(); /*清屏*/printf("Enter you choice :\n");scanf("%d",&j);z=h;h1=h->next;h->next=NULL;while(h1!=NULL){t=h1;h1=h1->next;q=h;while(t->score[--j]<p->score[--j]&&p!=NULL){q=p;p=p->next;}if(p==q){t->next=p;h=t;}else{t->next=p;q->next=t;}}p=h;while(p!=NULL){i++;p=p->next;}h=z;printf("------OK------\n");}//////////////////////////////////////////////////九、体会、总结本课程设计完成了设计一个学生成绩治理系统,学生的学习成绩进行治理,具有查询和检索功能,而且能够对指定文件操作。

C语言程序设计实验报告

C语言程序设计实验报告

C语言程序设计实验报告实验报告:C语言程序设计一、实验目的本实验旨在通过学习C语言程序设计,培养学生的编程思维和解决问题的能力,掌握C语言的基本语法和常见的数据结构,为以后的编程工作打下坚实的基础。

二、实验内容1.C语言基础知识的学习和理解2.C语言程序设计的实践3.编写简单的C语言程序,如输入输出、循环、条件判断等基本操作4.使用C语言实现常见的数据结构,如数组、链表、栈、队列等三、实验过程1.学习C语言的基础知识,包括变量、常量、算术运算、逻辑运算、关系运算等。

2. 通过编写简单的程序来熟悉C语言的基本语法,如输出“Hello World”、计算两个数的和等。

3. 学习C语言的控制结构,如if语句、for循环、while循环等。

4.实现常见的数据结构,如数组、链表、栈、队列,并编写相应的操作函数。

5.在编写程序的过程中,加入适当的注释,提高代码的可读性和可维护性。

四、实验结果通过实验,我掌握了C语言的基本语法和常用的数据结构。

在实践过程中,我能够独立完成简单的C语言程序的编写,能够正确地使用各种控制结构来解决实际问题。

同时,我也学会了如何使用调试工具来找出程序中的错误并进行修正,提高了编程效率。

五、实验总结通过本次实验,我对C语言的程序设计有了进一步的了解和掌握。

C 语言是一门广泛应用于计算机领域的编程语言,掌握好C语言的编程技巧对于提高编程效率和代码质量非常重要。

在实验过程中,我发现编写注释对于代码的可读性和可维护性非常重要,因此在以后的编程过程中,我会养成良好的注释习惯。

同时,我还发现了一些自己在编程过程中常见的错误,如缺少分号、拼写错误等,以后会更加谨慎地避免这些错误的发生。

此外,我还会继续深入学习C语言的高级特性,如指针和动态内存分配等,不断提升自己的编程水平。

通过本次实验,我还学会了如何利用互联网资源解决编程问题,如查阅帮助文档、相关问题的解决方案等。

这为我今后在编程过程中遇到问题时寻找解决办法提供了极大的便利。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《C程序设计》综合性实践学习报告
专业学号姓名题目名称自评分最后得分
基本思
路及关
键语句
说明
本题基本思路如下:
该程序设计四个函数:读函数ReadDat()把100个四位数从键盘存入数组a中,再写函数jsValue(),其功能是:求出所有这些四位数是素数的个数cnt,再把所有满足此条件的四位数依次
存入数组b中,然后对数组b的四位数按从小到大的顺序进行排序,最后调用写函数writeDat()
输出。

在main()函数中调用以上函数。

关键语句说明如下:
①for(i = 0 ; i < 3 ; i++) 循环输入100个四位数
②for(i=0;i<cnt-1;i++) 将所有素数按从小到大的顺序进行排序
for(j=i+1;j<cnt;j++)
if(b[j]<b[i])
{
t=b[i];
b[i]=b[j];
b[j]=t;
}
③for(i = 2 ; i < m ; i++) 判断一个数是否为数素
if(m % i == 0)是素数,否则不是素数
④for(i = 0 ; i < cnt; i++) 循环输出数组b
printf( "b[%d]=%d\n",i,b[i]);
(流程图在下个表中)
运行结果如下:(以三个数为例)
教师评

签名:
日期:
主要函数流程图
ReadDat() jsValue()
writeDat() main()
程序源代码:
#include "stdio.h"
void readDat(); //函数声明
N Y 开始
for i 0 to 3 输入数据 四位数
开始
for i 0 to 3 isP(a[i])=1 N
Y if(b[j]<b[i])
t=b[i];b[i]=b[j];b[j]=t
for i 0 to 3
for i 0 to 3 结束
b[cnt++]=a[i] 开始 素数的个数
素数的值
for i 0 to cnt
b[i]
结束
开始
调用readDat()
调用jsValue()
调用writeDat()
结束
void writeDat(); //函数声明
void jsValue(); //函数声明
int a[3], b[3], cnt=0 ; //定义数组a和b,定义全局变量cnt
int isP(int m)
{
int i ;
for(i = 2 ; i < m ; i++) //判断是否为数素
if(m % i == 0) return 0 ; //不是素数返回0
return 1 ; //是素数返回1
}
void jsValue()
{
int i,j,t;
for(i=0;i<3;i++) //将是素数的数存入数组b中
if(isP(a[i])) b[cnt++]=a[i];
for(i=0;i<cnt-1;i++) //将所有素数按从小到大的顺序进行排序
for(j=i+1;j<cnt;j++)
if(b[j]<b[i])
{
t=b[i];
b[i]=b[j];
b[j]=t;
}
/*将所有这些四位数是素数的个数cnt,依次存入数组b中,然后按从小到大的顺序进行排序*/
}
void main()
{
readDat() ; //调用输入函数
jsValue() ; //调用判断函数
writeDat() ; //调用显示函数
}
void readDat()
{
int i ;
printf("请输入100个四位数\n");
for(i = 0 ; i < 3 ; i++) //循环输入100个四位数
{
scanf( "%d,", &a[i]) ;
while(a[i]<1000||a[i]>9999) //如果输入的不是四位数,则重新输入
{printf("你输入的不是四位数,请重新输入:\n");
scanf( "%d,", &a[i]) ;} //将输入的数据存入数组a中
}
}
void writeDat() //显示函数
{
int i ;
printf( "素数的个数 cnt=%d\n", cnt) ;
printf("素数的值从小到大分别为:\n");
for(i = 0 ; i < cnt ; i++) //输出数组b
printf( "b[%d]=%d\n",i, b[i]) ;
/***********输出数组b(调用函数)********/
}
题目
程序设计四个函数:读函数ReadDat()把100个四位数从键盘存入数组a中,再写函数jsValue(),其功能
是:求出所有这些四位数是素数的个数cnt,再把所有满足此条件的四位数依次存入数组b中,然后对数组b 的四位数按从小到大的顺序进行排序,最后调用写函数writeDat()输出。

在main()函数中调用以上函数。

相关文档
最新文档