c语言计算机报价实验报告,计算机c语言实验报告(00002).docx

PAGE21 / NUMPAGES21

实验一 进制转换

一、实验要求

采用模块化程序设计完成进制转换。由键盘输入一个十进制正整数,然后将该数转换成指定的进制数(二、八、十六) 形式输出。指定的进制由用户输入。

二、实验目的

1、熟悉C 环境的安装、使用。

2、承上启下,复习《C 程序设计》等基础课程的知识。

3、掌握C 语言编程的方法。

三、预备知识

1、VC6.0的安装与使用。

2、C 程序设计基础知识。

四、实验内容

采用模块化程序设计完成进制转换。

五、程序框图

六、程序清单

1. 编写主函数:输入需转换的数与转换的进制

2. 编写子函数

(1)函数转换为除16进制以外的进制转换算数编程,使用while 循环实现计算进制的转换,并输出转换后的数字;

(2)函数转换为16进制,用while 函数实现16进制转换的计算并输出16进制转换后的数据;

3. 编写数组,关于16进制的一系列字符

4. 编写主函数加入do while 使函数可以循环。

七、实验步骤

#include

char num[16]={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'};

void fun(int n, int m)

{

int i=-1, a[100];

if(m!=16)

{

while(n)

{

a[i++]=n%m;

n=n/m;

}

while(i!=-1)

printf("%d",a[--i]);

printf("\n");

}

else

{

while(n)

{

a[++i]=num[n%16];

n/=16;

}

while(i!=-1)

printf("%c",a[i--]);

printf("\n");

}

}

int main()

{

int a, c;

char cIn = 0;

do

{

printf("\n输入正整数,转换的进制:");

scanf("%d %d",&a,&c);

fun(a,c);

printf("Go on? (Y/N):");

cIn = getchar( );

if(cIn == 'N' || cIn == 'n')

return 0;

}

while(1);fun(a,c);

printf("Go on? (Y/N):");

cIn = getchar( );

if(cIn == 'N' || cIn == 'n')

return 0;

}

while(1);

}

3、调试。

八、实验结果

实验二 学生班级成绩统计

一、实验要求

设计一个统计班级学生成绩的程序。

统计一个班(最多有35人) 的学生成绩,要求能实现如下四个功能:

(1) 由键盘输入每个学生的学号和四门课程的成绩。

(2) 计算每个学生的平均成绩和总成绩。

(3) 按总成绩从高到低排名,并按名次输出每个学生的情况,包括: 学号,各科成绩,平均成绩,总成绩,排名

(4) 根据要求输出某门课程(由键盘输入课程号) 成绩在90分(含90分) 以上且总分在前5名的学生情况(请采用结构体数据类型,并采用模块化结构实现) 。

二、实验目的

1、进一步熟悉C 环境的安装、使用。

2、进一步复习《C 程序设计》等基础课程的知识。

3、进一步掌握C 语言编程的方法。

三、预备知识

1、VC6.0的安装与使用。

2、C 程序设计基础知识。

3、软件实现基本流程。

四、实验内容

设计一个统计班级学生成绩的程序。

六、程序清单

1、先编写主函数,将所需要用到的子函数编写,

2、子函数1:输入数据,将所需要的数据存到数组中并计算平均值和总分,

3、子函数2:根据子函数1计算所得值进行排序,

4、子函数3:输出排序完的数据,

5、子函数4:编写查询程序,输入查询的科目缩写,并排名后输出。

七、实验步骤

1、可行性分析

2、需求分析

3、概要设计与详细设计(含绘制流程图)。

4、编码实现

#include

int order[35];

double addsum[35];

double addaver[35];

int b= 0;

typedef struct student

{

int id;

char name[35];

double math;

double english;

double chinese;

double computer;

} student;

student stu[35];

void shuru()

{

b= 0;

while( b < 35 )

{

printf( "输入学号(输入0退出输入):" );

scanf( "%d", &stu[b].id );

fflush

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值