云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 2015高考C语言题

2015高考C语言题

  • 62 次阅读
  • 3 次下载
  • 2025/5/4 5:09:07

}

第4题 (30.0分) 题号:546 难度:中 第1章 /*------------------------------------------------------- 【程序设计】

---------------------------------------------------------

主函数main()的char s[]中为测试数据,保存了形如 \字符串。将字符串 中类似\这样的子串视为一个等差数列的3个参数:首 项、公差、项数。将该子串转换成三个整数分别保存在二维 数组ser一行的前三列中,并根据这3个参数计算等差数列的和, 保存在ser数组的第四列。

例如:

子串\转换为13 2 4三个整数,和为64。 子串\转换为1 12 5三个整数,和为125。

编写函数:

1.编写函数int abstract(char s,int ser[][4]),将s字符 串中类似\这样的子串转换成三个整数,分别存放在 ser数组的第一、第二、第三列,函数返回这样的子串个数。 2.编写函数void sum(int ser[][4] , int n),计算ser数 组中n组等差数列的和,将其保存在ser数组各行第四列。 计算等差数列和的公式为:

项数*首项+项数*(项数-1)*公差/2。

--------------------------------------------------------- 注意:请勿改动主函数main()中的任何语句。

---------------------------------------------------------*/ #include #include #include #include

int abstract(char s[],int ser[][4]) {

/**********Program**********/

/********** End **********/ }

void sum(int ser[][4] , int n){

/**********Program**********/

/********** End **********/ }

int main() {

char s[]=\ int i,j,n,ser[10][4]; FILE *fp;

if((fp=fopen(\ {

printf(\ exit(0); }

n=abstract(s,ser); sum(ser,n); for(i=0;i

printf(\ fprintf(fp,\ }

printf(\ fprintf(fp,\ }

fclose(fp); getch(); return 0; }

答案:int i,k,sum; for(k=i=0;s[i];i++) if(isdigit(s[i])) {

sum=0;

for(;isdigit(s[i]);i++) sum=sum*10+s[i]-'0'; if(s[i]==',') ser[k][0]=sum;

else if(s[i]==';') ser[k][1]=sum; else

ser[k++][2]=sum; } return k; int i;

for(i=0;i

ser[i][3]=ser[i][2]*ser[i][0]+ser[i][2]*(ser[i][2]-1)*ser[i][1]/2; }

第5题 (30.0分) 题号:547 难度:中 第1章 /*------------------------------------------------------- 【程序设计】

---------------------------------------------------------

主函数main()中二维数组int num[6][3]为测试数据,num数 组各行第一、二列已经赋值为

{{4,12},{0,11},{6,-3},{12,7},{5,1},{13,9}}。

程序计算num数组各行第三列数据,并根据第三列数的大小 对num数组进行升序排序。

num数组各行第三列数等于下列a、b两个整数之和: a=该行第一列数+最小非负整数,使得a为3的倍数, 例如,num数组第一行第一列数为4,则最小非负整数为2; 第二行第一列数为0,则最小非负整数为0; 第五行第一列数为5,则最小非负整数为1; b=该行第二列数*该数所在行、列下标之和。

编写函数:

1)编写函数void cal(int num[][3],int n),根据上述计算 方法,计算num数组各行第三列数。

2)编写函数void sort(int num[][3],int n),根据num数组 第三列数据的大小,对num数组进行升序排序。

--------------------------------------------------------- 注意:请勿改动主函数main()中的任何语句。

---------------------------------------------------------*/

#include #include #include

void cal(int num[][3],int n) {

/**********Program**********/

/********** End **********/ }

void sort(int num[][3],int n) {

/**********Program**********/

/********** End **********/ }

int main() {

int num[6][3]={{4,12},{0,11},{6,-3},{12,7},{5,1},{13,9}}; int i; FILE *fp;

if((fp=fopen(\ {

printf(\ exit(0); }

cal(num,6); sort(num,6);

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

printf(\ fprintf(fp,\ }

fclose(fp); return 0; }

答案:int i,k; for(i=0;i

if((k=num[i][0]%3)==0)

num[i][2]=num[i][0]; else

num[i][2]=num[i][0]+3-k; num[i][2]+=(i+1)*num[i][1]; }

int i,j,t;

for(i=0;i

if(num[j][2]>num[j+1][2]) {

t=num[j][0];num[j][0]=num[j+1][0];num[j+1][0]=t; t=num[j][1];num[j][1]=num[j+1][1];num[j+1][1]=t; t=num[j][2];num[j][2]=num[j+1][2];num[j+1][2]=t; } }

搜索更多关于: 2015高考C语言题 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

} 第4题 (30.0分) 题号:546 难度:中 第1章 /*------------------------------------------------------- 【程序设计】 --------------------------------------------------------- 主函数main()的char s[]中为测试数据,保存了形如 \字符串。将字符串 中类似\这样的子串视为一个等差数列的3个参数:首 项、公差、项数。将该子串转换成三个整数分别保存在二维 数组ser一行的前三列中,并根据这3个参数计算等差数列的和, 保存在ser数组的第四列。 例如: 子串\

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com