2015高考C语言题

2019-03-03 20:46

试卷编号:8258 所属语言:计算机基础 试卷方案:111 试卷总分:400分 共有题型:3种

一、程序填空 共5题 (共计100分)

第1题 (20.0分) 题号:650 难度:中 第1章 /*------------------------------------------------------- 【程序填空】

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

函数int change(char s[])将s中的数字字符串转换成整数, 并返回该数。例如s[]中为\,转换后为123。

函数int multi(char s[],char t[])将s字符串转换的整数乘 以t字符串转换的整数,并返回乘积。

--------------------------------------------------------- 注意:请勿改动程序中的其他内容。

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

#include int change(char s[]) {

int i,sum; sum=0;

for(i=0;s[i];i++)

/**************************SPACE*************************/ sum=sum*10+【?】-'0'; return sum; }

int multi(char s[],char t[]) {

int mul;

/**************************SPACE*************************/ mul=【?】; return mul; }

int main() {

char s1[]=\ int mst;

mst=multi(s1,s2); printf(\ return 0; } 答案:

=======(答案1)======= s[i]

=========或========= *(s+i)

=======(答案2)======= change(s)*change(t) =========或========= change(t)*change(s)

第2题 (20.0分) 题号:651 难度:中 第1章 /*------------------------------------------------------- 【程序填空】

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

函数void check(long n, int c[])检测长整型正整数n是几 位数,同时找出最小的数字。将位数和最小的数字存放在数 组c中。

例如n=1256044时,n是7位数,最小的数字是0。

--------------------------------------------------------- 注意:请勿改动程序中的其他内容。

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

#include

/**************************SPACE*************************/ void check(long n, int 【?】) {

int min,p,k; min=9; p=0; do{

k=n;

min=(min>k)? k: min; n/=10; p++;

}while(n); c[0]=p; c[1]=min; }

int main() {

long n; int c[2];

printf(\输入长整型正整数:\ scanf(\ check(n, c);

/**************************SPACE*************************/ printf(\是%d位数,最小数字是%d\\n\【?】); return 0; } 答案:

=======(答案1)======= c[]

=========或========= c[2]

=======(答案2)======= n,c[0],c[1]

第3题 (20.0分) 题号:652 难度:中 第1章 /*------------------------------------------------------- 【程序填空】

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

函数int convert(int a,int nsys)将nsys(nsys<10)进制数a, 转换成十进制数并返回。

--------------------------------------------------------- 注意:请勿改动程序中的其他内容。

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

#include #define N 5

int convert(int a,int nsys) {

int t,p;

if(a

t=t+a*p;

/**************************SPACE*************************/ 【?】; p*=nsys; }

return t; }

int main() {

int i,d;

int num[N][2]={{704,8},{10011,2},{266,7},{3,5},{22110,3}}; for(i=0;i

d=convert(num[i][0],num[i][1]);

/**************************SPACE*************************/ printf(\进制数的%d\\t = 十进制数的%d\\n\【?】); }

return 0; } 答案:

=======(答案1)======= a/=10

=========或========= a=a/10

=======(答案2)======= num[i][1],num[i][0],d

第4题 (20.0分) 题号:653 难度:中 第1章 /*------------------------------------------------------- 【程序填空】

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

函数void rearr(int a[], int n)将已经升序排列的一维数 组a中的n个元素重新排列,重新排列的规则是:

将a数组中的最小元素放到a[0],最大元素放到a[1], 将次小元素放到a[2],次大元素放到a[3],..., 以此类推。

例如:

原a数组各元素为:

-11 -7 0 3 8 15 16 20 38 重新排列后a数组各元素为: -11 38 -7 20 0 16 3 15 8

--------------------------------------------------------- 注意:请勿改动程序中的其他内容。

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

#include #define N 9

void rearr(int a[], int n) {

int left,right,i; int b[N]; left=0; right=N-1;

for(i=0; left

b[i]=a[left++];

/**************************SPACE*************************/ b[i+1]=a[【?】]; }

if(left==right) b[i]=a[left]; for(i=0;i

/**************************SPACE*************************/ a[i]=【?】; }

int main() {

int i,a[N]={-11,-7,0,3,8,15,16,20,38}; rearr(a,N); for(i=0;i


2015高考C语言题.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:大道之行——文圣拳发展之路——卢飞宏

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

马上注册会员

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