下载此文档

超长整数的处理报告.doc


文档分类:研究报告 | 页数:约20页 举报非法文档有奖
1/20
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/20 下载此文档
文档列表 文档介绍
目录
一、需求分析 1
二、设计分析 2
三、主要界面截图 10
四、技术要点 11
五、个人总结 12
六、参考文献 13
七、源程序 14
一、需求分析
该课程设计的题目是一个典型的超长整数处理问题。根据程序设计的要求,需要用链表解决一个超长整数奇偶数位相加问题,一方面使我们对链表的运用有了更深刻的认识,另一方面使我们理解了超长整数在计算机中的运算过程。

采用链表来表示一个带符号的超长整数(20位以上)。并且进行如下处理。
(1)将超长整数s上相邻的奇数位和偶数位的数相加,兵存放在奇数位上,构成一个新数(不考虑进位)。。
(2)超长整数要用字符串实现输入,按2位截取,转成整型存放在链表中,每个节点存两位,然后进行处理。
:
(1)数据输入:允许用户输入多组超长整数,每输入一个数都会将该数存入文件当中。
(2)数据计算:对输入的数据,首先显示出来,允许用户去选择要计算哪个数据,然后按照题目的要求将结果计算出来并保存到文件当中。
二、设计分析
主要有5个功能模块,每个模块对应一个C语言自定义函数。这些函数原型及其功能简述如下:
(1)菜单模块
void menu()
{
printf("***********************************************\n");
printf("***** *****\n");
printf("***** 菜单*****\n");
printf("***** *****\n");
printf("***** *****\n");
printf("***** *****\n");
printf("***** *****\n");
printf("***********************************************\n");
}
函数功能:在程序运行之前显示菜单,供用户进行选择。
(2)字符串转换模块
void read(int len)
{
int i,k,count=0;
char ch;
struct unit *p;
for(i=0,k=len-1;i<k;i++,k--)
{
ch=num[i];
num[i]=num[k];
num[k]=ch;
}
head=(struct unit*)malloc(sizeof(struct unit));
head->next=NULL;
for(i=1;i<=len;i++)
{
if(count==0)
{
p=(struct unit*)malloc(sizeof(struct unit));
p->next=head->next;
head->next=p;
}
if(i%2==0)
{
p->even=num[i-1]-'0';
count++;
if(count==2)
count=0;
}
else
{
p->odd=num[i-1]-'0';
count++;
}
}
}
函数功能:由于输入的数据用字符串进行存储的,需要将字符串转化成整型并且用链表将其存储,该函数的功能就是将输入的字符串存储到一个链表中。
(3)输入数据模块
void input()
{
FILE *file=fopen("","a");
if(file==NULL)
{
printf("文件打开失败!\n");
exit(0);
}
scanf("%s",num);
fprintf(file,"%s\n",num);
printf(" 写入的数据为:%s\n",num);
fclose(file);
}函数功能:该函数功能是进行数据的输入,并显示到屏幕上,存储到文件当中。
(4)显示数据模块
int show()
{
int i;
FILE *file=fopen("","r");
if(file==NULL)
{
printf("打开文件失败!\n");
exit(0);
}
for(i=1;!feof(file);i++)
{
fscanf(file,"%s\n",num);
printf("%d.%s\n",i,num);
}
fclose(file);
return i;
}
函数功能:该函数主要是用于数据计算时进行数据选择,当进行数据

超长整数的处理报告 来自淘豆网m.daumloan.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数20
  • 收藏数0 收藏
  • 顶次数0
  • 上传人63229029
  • 文件大小216 KB
  • 时间2017-08-17
最近更新