全国大学生信息技术应用水平大赛C语言复赛试题及答案1(3)

2018-12-08 18:16

教育部教育管理信息中心

void main()

{

int i,j,a[5],b[5],y=0;

long x,k=10000;

printf(\请输入一个五位数:\

scanf(\

for(i=0;i<5;i++){

a[i]=x/k;

x=x-a[i]*k;

if(x>10)

k=k/10;

else

a[++i]=x;

}

for(j=9;j>=0;j--){

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

if(j==a[i])

11

教育部教育管理信息中心

{

b[y++]=j;

}}

for(i=0;i<5;i++){

printf(\

getch();

}

2、输入年、月、日,输出该日期是该年的第几天。(25分) #include\void main() {

int i,tian,x,y,z,yue=0,a[13]; a[0]=0;

a[1]=a[3]=a[5]=a[7]=a[8]=a[10]=a[12]=31; a[4]=a[6]=a[9]=a[11]=30; printf(\请输入年,月,日:\ scanf(\ if(x@0==0||x%4==0&&x0!=0) else

a[2]=28; yue=yue+a[i]; for(i=0;i

printf(\年%d月%d日是该年的第%d天!\ getch(); }

3、利用数组实现数据的存储。将学生的学号和成绩存储在数组中,利用循环计算出数组中存储学生的平均成绩,找出高于平均分的学生信息并输出。(20分)

4、输入五个国家的名字,按字母顺序(即按ASCII码从小到大的顺序)排列输出。(20分)

a[2]=29;

12

教育部教育管理信息中心

5、用指针实现:任意输入20个数,将它们按照从大到小的顺序输出。(20分) 附加题

6、编写一个简单的通讯录管理系统。通讯录包括:姓名、通讯地址、邮编、联系电话,现编写一个通讯录管理系统,可以对通讯录进行输入、显示、查找,通讯录保存到一个文件中。(50分) (提示:可能用到以下库函数:

malloc(),功能:分配size字节的存储区,

用法:(类型 *)malloc(size *sizeof(你要定义的类型));包含于库中

feof(),功能:检测文件是否结束 用法: int feof(fp)

FILE *fp;包含于库中。)

第四届全国ITAT教育工程就业技能大赛复赛试题C语言程序设计(B卷) 1、编程完成数据加密。数据是五位的整数,加密规则为:每位数字都加上6,然后用和除以8的余数代替该数字,再将第一位和第五位交换,第二位和第四位交换。(15分) #include\void main() {

int i,t,a[5]; long n,k=10000;

printf(\请输入一个五位数:\ scanf(\ for(i=0;i<5;i++) { }

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

printf(\ printf(\ for(i=0;i<5;i++)

a[i]=(a[i]+6)%8; t=a[0]; a[0]=a[4]; a[4]=t; t=a[1]; a[1]=a[3]; a[3]=t;

for(i=0;i<5;i++) }

13

printf(\ getch();

a[i]=n/k; n=n-a[i]*k; if(n>10)

k=k/10; a[++i]=n; else

教育部教育管理信息中心

2、请猜数字,该数字由系统随即产生。要求:用户最多有10次猜测的机会,如果在10次内猜对数字,则程序显示祝贺信息,如果连续10次都没有猜中数字,则游戏自动退出。(25分) (提示:可能用到以下库函数:

randomize();用系统的时间作为随机种子;包含于stdlib.h库中 random(100):随机产生0-99之间的一个随机数;包含于stdlib.h库中 toupper():将字符c转换为大写英文字母,包含于ctype.h库中)

3、有一个3×4的矩阵,要求编写程序找出每一行中最大值并与第一列交换。(20分) #include\void main() {

int i,j,k,x,y,t,max,a[3][4]={39,25,52,44,31,43,15,23,66,44,22,11}; for(i=0;i<3;i++){ } }

4、输入五个字符串,要求按照字母顺序(即按ASCII码从小到大的顺序)输出这五个字符串。(20分) 5、用指针实现:把一个整数插入到由小到大排列的数列中,插入后仍然保持由小到大的顺序。(20分) 附加题

6、编写一个简单的通讯录管理系统。通讯录包括:姓名、通讯地址、邮编、联系电话,现编写一个通讯录管理系统,可以对通讯录进行输入、显示、查找等,通讯录保存到一个文件中。(50分) (提示:可能用到以下库函数:

malloc(),功能:分配size字节的存储区,

用法:(类型 *)malloc(size *sizeof(你要定义的类型));包含于库中

feof(),功能:检测文件是否结束 用法: int feof(fp)

FILE *fp;包含于库中。) for(j=0;j<4;j++){ }

a[x][y]=a[i][0]; t=a[i][0]; a[i][0]=max; max=t;

for(k=0;k<4;k++)

printf(\printf(\

if(max<=a[i][j]){

max=a[i][j]; x=i; y=j;}

第五届全国ITAT教育工程就业技能大赛复赛试题C语言程序设计(A卷) 14

教育部教育管理信息中心

1、 编程解决如下数学问题:有12升水,怎样利用一个8升和一个5升的容器将水分为两个6升?要

求以如下格式打印出分水步骤。(20分) a12 b8 c5 12 0 0

* * * ( “*”表示当前状态下每个容器的盛水量) ...... 0 6 6

2、 编程实现:有二维数组a[3][3]={{5.4,3.2,8},{6,4,3.3},{7,3,1.3}},将数组a的每

一行元素均除以该行上的主对角元素(第1行同除以a[0][0],第2行同除以a[1][1],...),按行输出新数组。(20分) #include\void main() { }

3、 编程:设x取值为区间[1,20]的整数,求函数f(x)=x-sin(x)- cos(x)的最大值,要求使用自定

义函数实现f(x)功能。(20分)

4、 编写函数fun,通过指针实现将一个字符串反向。要求主函数输入字符串,通过调用函数fun实

现输入字符串反向。(20分)

5、 已知学生三门课程基本信息如下。请使用结构体编程,计算学生三门课程平均成绩后,列表输出

学生的姓名、数学、英语、计算机、平均分信息,并按平均分排序。(20分) 姓名 数学 英语 计算机 Mary 93 100 88 Jone 82 90 90 Peter 91 76 71 Rose 100 80 92

6、 附加题:编程实现输入一串英文,统计其中各单词出现的个数(不区分大小写字母),以“000”

作为字符串输入结束标志,例如:

Twinkle twinkle little star 000(回车) twinkle little star

2 1 1 (50分)

int i,j;

float a[3][3]={{5.4,3.2,8},{6,4,3.3},{7,3,1.3}},b[3][3]; for(i=0;i<3;i++) for(j=0;j<3;j++) {

for(j=0;j<3;j++) {

printf(\printf(\

b[i][j]=a[i][j]/a[i][i];

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

第五届全国ITAT教育工程就业技能大赛复赛试题C语言程序设计(B卷) 15


全国大学生信息技术应用水平大赛C语言复赛试题及答案1(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:福师2016秋《计算机应用基础》在线作业一

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: