c语言输出链表 模板,C语言职工信息管理系统链表模板.docx

资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。

资料内容仅供您学习参考,如有不当或者侵权,请联系改正或者删除。

专 业

专 业: 班 级: 学 号: 姓名:

指导教师: 成绩:

《程序设计综合训练》

设计报告

数字媒体技术

11媒体Z朱毅

陈湘军陈明霞

计算机工程学院

10月

第一部分

题目:

1.编写函数 int hamming(int x,int y,char a[],char b[])实现以下功能: 先将形参x和y分别转换为2个合法代码并按从低位到高位的顺序为 别保存2个合法代码的码距,函数返回该码距。

2?编写函数main()函数实现以下功能:声明字符数组a、b和变量 m、n输入两个整数冰保存到 m和n中,若m、n的值在0~32767范 围内则用 m、n和数组a、b做实参调用haming函数,计算由m和n 生成的两个合法代码的码距输出的到屏幕及文件myf2.out中。最后将

考生本人的准考证号输出到文件 myf2.out中。

来自:(秋)上机试卷(03)的编程题。

解题的基本思路:

子函数就是将形参 X,Y分别转换为2个合法的代码并按从低位到 高位的顺序分别保存2个合法代码到a和b指向的数组中,在计算a数 组和b数组中的两个合法代码的码距,函数返回码距。

主函数就是调用子函数,并输出结果。

设计方案:

(1)功能模块框图:

主函数

调用子函数:

hammi ng()

(2)程序流程图

创立文

r

件,输入

调用函数

出 口

用ham min g()调用

算法设计:

(1)算法描述:

由于hamming函数需要分别将两个整数转换为合法代码,因此编

写函数” void bin(int n,char str[]) ”。Bin函数的功能是将形参 n转换为合 法代码并保存到 b指向的一维数组中。Hamming函数先两次调用 bin 函数,分别将形参X和Y转换为合法代码并分别保存到 a和b指向的 一维数组中,在用循环语句从前向后遍历 a和b指向的数组各元素,函 数最后返回统计结果。

( 2) 实现方法 :

用VC6.0软件进行调试,分析,输入m,n两个值,进行分析,调用函 数 hanmming( ) , 在从 hanmming( ) 函数中调用函数 bin( ) , 返回 count 的值,输出,a,b数组中的值和返回值 count的值。

源代码 :

#include

void bin(int n,char str[])

{

int i=15,j;

while(n!=0)

{

str[i--]=n%2+'0';

n/=2;

}

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

str[j]='0';

str[16]='\0';

}

int hamming(int x,int y,char a[],char b[])

{

int count=0,i;

bin(x,a);

bin(y,b);

for(i=0;i<16;i++) if(a[i]!=b[i]) count++;

return count;

}

void main()

{

char a[17],b[17];

int m,n,x;

FILE *fp;

fp=fopen("myf2.out","w"); if(fp==NULL) printf("error");

do{

scanf("%d,%d",&m,&n);

}while(m>32767&&m<0&&n>32767&&n<0); x=hamming(m,n,a,b);

printf("\n%s\n%s\ndistance of %d and %d is %d \n",a,b,m,n,x); fprin tf(fp,"\n%s\n%s\ ndista nee of %d and %d is %d \n",a,b,m, n, x); fprin tf(fp,);

felose(fp);

}

程序调试:

就是输入的时候,n和m的值范围问题,当输入范围不正确时候跳 不出来

解决方法:用一个do{}while;循环条件为大于32767和小于0的时 候退出。

do{

gc anr("'%d ‘划“

e(n>32767ngrn<0&&n>32767fi^r)<0);

测试:

000 000 000001 @0 00

0009009000001000 distance of 1G and S 2 Press; any key to continue.

第二部分

职工信息管理系统

(1)题目名称:职工信息管理系统

内容:

职工信息包括职工号、姓名、性别、出生年月、 学历、职务、

工资、住址、电话等(职工号不重复)。试设计一职工信息管理系统

使之能提供以下功能:

1

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值