- 1、本文档共5页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C语言-用工程文件解决抽奖问题
实验题目 标准库函数使用与编译预处理 实验时间 实验地点 实验成绩 实验性质 □验证性 √设计性 □综合性 教师评价:
□算法/实验过程正确; □源程序/实验内容提交 □程序结构/实验步骤合理;
□实验结果正确; □语法、语义正确; □报告规范;
其他:
评价教师签名: 一、实验目的
1、掌握C项目的一般结构、程序的开发环境、过程
2、掌握函数的调用、参数传递用法。
3、掌握随机数、数组的使用。 二、实验项目内容(实验题目)
设某次活动有20个学生参加,每个学生有一个学号,学号为8位正整数,以2011开始,后4位为随机数。要求编写C程序实现下面的功能
使用工程文件的方法来分别存放C源程序,文件名为a.cpp、b.cpp、c.cpp,也可以自己取名。
编写生成学号的函数、排序函数(用于对学号进行排序);
要求将自己的学号放入到排序完成后学号数组开始位置。编写进行抽奖的函数,抽奖规则是三等奖3名,二等奖2名,一等奖1名。
5、编写主函数进行测试,并打印出结果。
三、源程序(实验过程或算法)
1、算法如下
1.采用工程文件的方法,创建一个空白工作区,先编写一个主函数award1,将其放在主文件中,主函数的功能为调用其他函数并打印出结果;
2.主函数文件中定义两个全局变量,在其他文件中用 extern 进行扩展,实现学号的传递;
3. 定义产生随机数的函数aw1,定义排序函数aw2,定义抽奖函数aw3,定义了判断自己是否中奖的函数aw4,将其分别放在下列四个文件中:”a.cpp”,”b.cpp”,”c.cpp”,”d.cpp”;
4.分别调用上述函数,打印出相关结果。
2、源程序如下
/*award1.cpp*/
#include stdafx.h
#includestdio.h
int a[20]; /*定义了全局变量a[20]*/
int b[6]; /*定义了全局变量b[6]*/
void main()
{ void aw1(); /*定义了产生随机数的函数aw1*/
void aw2(); /*定义了排序函数aw2*/ /*aw2还有将我的学号放在第一位的功能*/
void aw3(); /*定义了抽奖函数aw3*/
void aw4(); /*定义了判断自己是否中奖的函数aw4*/
aw1();
printf(before sorting:\n);
for(int i=0;i20;i++) /*输出排序前的随机数*/
printf(%10d,a[i]);
aw2();
printf(\nafter sorting:\n);
for(i=0;i20;i++) /*输出排序后的随机数*/
printf(%10d,a[i]);
printf(\nMy number is %d\n,a[0]); /*输出自己的学号*/
aw3();
printf(The third prize:\n); /*输出三等奖*/
for(i=0;i3;i++)
{ int k=b[i];
printf(%10d,a[k]);
}
printf(\nThe second prize:\n); /*输出二等奖*/
for(i=3;i5;i++)
{ int k=b[i];
printf(%10d,a[k]);
}
printf(\nThe first prize:\n); /*输出一等奖*/
for(i=5;i6;i++)
{ int k=b[i];
printf(%10d,a[k]);
}
aw4();
printf(Hello World!\n);
}
/*a.cpp*/
#include stdafx.h
#includestdio.h
#includestdlib.h
#includetime.h
extern int a[20];
void aw1()
{
srand (time(NULL));
for(int i=0;i20;i++)
a[i]rand()%10000;
}
/*b.cpp*/
#include stdafx.h
#includestdio.h
extern int a[20];
void aw2()
{ int temp,i,j,k;
for(i=0;i20;i++) /*选择
文档评论(0)