2024年2月18日发(作者:)
竭诚为您提供优质文档/双击可除
c语言程序设计实践报告
篇一:c语言课程设计实践报告
北京理工大学珠海学院c语言程序设计实践报告
20XX—20XX学年第1学期
学院:计算机学院
专业班级:软件工程5班
学号:13
学生姓名:陈洪阳
指导教师:戴俊雅
成绩:
时间:
20XX年1月5日
实践1.猜数游戏题目概述:
编程先由计算机“想”一个1~100之间的数请人猜,如果人猜对了,在屏幕上输出人猜了多少次才猜对此数,以
1 12
此来反映猜数者“猜”的水平,则结束游戏;否则计算机给出提示,告诉人所猜的数是太大还是太小,最多可以猜10次,如果猜了10次仍未猜中的话,则停止本次猜数,然后继续猜下一个数。每次运行程序可以反复猜多个数,直到操作者想停止时才结束。
程序设计概要与分析:
在源程序的开头中包含stdlib和time库函数,这样我们就可以调用srand()和rand()函数,其中调用srand()提供一个种子,它是一个unsignedint类型,取值范围是0~65535,然后调用rand(),根据提供给srand()的种子值返回一个随机数,我们用rand()%100就把随机决定的数值范围确定在1~100之间,然后定义一个num,记录这个随机产生的随机数,定义input,来储存用户输入的猜数值,用times来记录猜的次数,用dowhile循环来执行用户猜的次数有10次,用ifelse条件语句来判断用户是否猜中,或猜得太大、太小,用一个while循环来做总嵌套,设置n的值一开始不为零,while循环的条件是当n的值不等于0,最后用户就可以修改n的值来决定是否退出。
程序代码:
#include
#include
#include
2 12
intmain()
{
intn=1;while(n!=0){srand((unsigned)time(nuLL));intnum,input;inttimes=0;num=(rand()%100)+1;printf("在1~100间猜一个数n");scanf("%d",do{if(input==num){}elseif(input>num){}elseif(input }
}}printf("你猜的数太小了,请再猜一个n");scanf("%d",times++;}while(times=9)printf("你已经猜了10次都猜不中,你输了n");printf("继续下一轮新的猜数请按1,退出请按0n");scanf("%d",return0;
运行结果示例:
选择继续下一轮新的猜数,猜了10次都没猜中
心得体会:
要懂得如何生成一个随机数,并且要确定它的范围在1~100之间,同时我们还要用dowhile循环体把猜数的次数控制在10次,每当我们输入猜想的数时就要做出判断,看看是否猜中,或者猜得太大或太小,输出提示信息。也懂得了通过修改while判断循环里面的条件,使得循环体里面的程序受我们修改的条件控制,可以继续循环执行或者不再继续执行。
3 12
实践2.成绩排名次题目概述:
某班期末考试科目为数学(mT)、英语(en)和物理(ph),有最多不超过30人参加考试,学号可以用输入的序号代替。考试后要求:
(1)计算每个学生的总分和平均分;
(2)按总分成绩由高到低排出成绩的名次;
(3)打印出名次表,表格内包括学生编号、各科分数、总分和平均分;
(4)任意输入一个学号,能够查找出该学生在班级中的排名及其考试分数。
程序设计与概要:
定义存储学生信息的结构体,包括学生编号,姓名,各科成绩,总分,平均分还有名次。该结构体命名为student,然后定义结构体数组students[],首先输入准备录入学生信息的人数,用amount来记录人数,用一个for循环,从0~amount-1,依次输入每个学生的各种信息,如学号,姓名,数学、英语和物理成绩。用grade[]数组来存这三科的成绩,如grade[0]存储数学成绩,grade[1]存储英语成绩。输入之后,再用一个for循环把每个同学的总分求出来,总分再除去3求出该名同学的平均分。按总分成绩由高到低排出名次,用两个for循环嵌套,第一个循环从0~amount,表示从第一个同学开始拿出来比较,第二个循环从1~amount,表示除了
4 12
之前取出的同学以外的每一个同学,如果前一位同学的总分小于后一个同学的话,就交换两人的信息,第二个循环比较之后,便会把总分最高的同学的信息储存在第一个,然后我们设置排名rank的值为1,rank++,进行筛选第二名的,之后对应地把rank的值设给学生的总分排名
打印学生信息,输出表格的基本框架后,用一个for循环,依次输出每个学生的信息,最后还有根据学号查询学生信息,用户输入要查询的学生学号,在for循环里面依次比较,如果找到学号与用户输入相同的,便输出该名学生的信息。
程序代码:
#include
#include
#include
#definem30
structstudent
{
unsignedintnum;
charname[10];
intgrade[3];
intsum;
floatave;
5 12
intrank;
};
students[m];
intamount;
voidinput(students[]);
voidtitle();
篇二:c语言程序设计实践报告
中南大学
c语言程序设计实践报告
题目通讯录程序设计学生姓名指导教师学院专业班级完成时间
一、任务描述通讯录程序设计
设计一个实用的小型通讯录程序,具有添加,查询和删除功能。由姓名,籍贯,电话号码1,电话号码2,电子邮箱组成,姓名可以由字符和数字混合编码。电话号码可由字符和数字组成。
实现功能:(1)系统以菜单方式工作
(2)信息录入功能(3)信息浏览功能(4)信息查询功能(5)信息修改功能(6)系统退出功能
二、算法描述
设计一个实用的的小型通讯录程序必须具备系统以菜单方式工作、信息录入、信息浏览、信息查询、信息修改、
6 12
发布者:admin,转转请注明出处:http://www.yc00.com/news/1708271972a1548295.html
评论列表(0条)