第三次测试练习题及答案(练习题3-1-2)
更新时间:2024-05-19 21:35:01 阅读量: 综合文库 文档下载
- 零号任务第三次测试推荐度:
- 相关推荐
单项选择
==================================================
1. 题号:3835
以下程序的输出结果是 min()
{int n[6]={1,2,3,4},i,j,k=2; int sum=0, min; min = n[0];
for(i=0;i<6;i++){ sum += n[i]; if( min>n[i] ) min=s[i]; }
pritnf(\}
A、10,1 B、6,1 C、10,0 D、0,0 答案: C
1. 题号:3553
若有以下定义和语句: int a[15]={1,2,3,4},x;
则对a数组元素非法引用的是().
A、x=a[a[2]]; B、x=a[a[7]-1]; C、x=a[a[2]-1]; D、x=a[a[7]+1];
答案: B
2. 题号:3640
以下程序段给数组所有的元素输入数据,请选择正确答案填入(). #include
int a[10],i=0; while(i<10){
scanf(\i++; }
return 0; }
A、&a[i+1] B、&a[i] C、&a[++i] D、ai 答案: B
3. 题号:3597
有以下程序: main()
{int m[][3]={1,2,3,4,5,6,7,8,9}; int i,k=2;
for(i=0;i<3;i++)
printf(\}
执行后输出结果是:.
A、4 5 6 B、7 8 9 C、1 2 3 D、1 4 7
答案: B
4. 题号:3647
下列一维数组说明中不正确的是().
A、int N; scanf(\B、#define S 10 int a[S];
C、int S,int a[15]={0}; S=a[10];
D、float a[]={1,6,6,0,2}; 答案: A
5. 题号:3880
以下能对一维数组a进行正确初始化的语句是().
A、int a[10]=(0,0,0,0,0) B、int a[10]={0}; C、int a[]=(0,0); D、int a[10]=[10*1]; 答案: B
6. 题号:3757
int a[10];合法的数组元素的最小下标值为().
A、10 B、1
C、0 D、9 答案: C
7. 题号:3938
若有定义语句:int m[]={5,4,3,2,1},i=4;,则下面对m数组元素的引用中,错误的是().
A、m[--i] B、m[2*2] C、m[m[0]] D、m[m[i]] 答案: C
8. 题号:3633
若有以下说明:
int a[12]={8,9,10,11,12}; 则值为9的表达式是().
A、a[2] B、a[3] C、a[1] D、a[4] 答案: C
9. 题号:3545
有以下程序:
#include
int a[]={2,3,5,9},i, j;
for(i=0;i<4;i++){
switch(a[i]/3) {
case 1:printf(\春\ case 2:printf(\夏\ case 3:printf(\秋\case 0:
case 4:printf(\冬\ } }
return 0; }
程序运行后的输出结果是().
A、春夏秋冬 B、春秋夏冬 C、冬春春秋 D、冬秋夏春 答案: C
10. 题号:3799
下列定义数组的语句中正确的是().
A、int x[]; B、int x[0..10];
C、#define N 10 int x[N]; D、 int N=10; int x[N]; 答案: C
11. 题号:3762
若有以下定义语句:int a[]={1,2,3,4,5,6,7,8,9,0};,则值为5 的表达式是()
A、a[a[4]] B、a[a[5]] C、a[5] D、a[a[3]] 答案: D
12. 题号:3642
下列选项中能正确定义数组的语句是().
A、int num[0..2008]; B、int N=2008;int num[N]; C、int num[];
D、#define N 2008 int num[N]; 答案: D
判断题
==================================================
1. 题号:3225
若有定义 int a[10];则 for (i=0;i<=10;i++) a[i]=i;编译时无语法错误.
答案:正确
2. 题号:3663
下列程序段是否正确:
int a[10]; .... a++;
答案:错误
3. 题号:3775
若有#define N 5;则a数组定义语句可以写成:int a[N];
答案:正确
4. 题号:3603
数组在内存中占一连续的存储区,数组名代表数组的首地址.
答案:正确
5. 题号:3722
定义 int x[5],n;则x=x+n;或x++;都是正确的.
答案:错误
填空题
==================================================
1. 题号:2506
已知int b[8]={11,5,3,21,67,45,77}; 则b[7]的值是_____.
答案: 空 1: 0
2. 题号:2740
已知int a[10]={1,2,3,4,5,6,7,0,9,6}; 下标最小的元素的值是_____.
答案: 空 1: 1
3. 题号:2690
已知int b[8]={1,2,3}; 则b[0]的值是_____.
答案: 空 1: 1
4. 题号:2779
设x的值为14,n的值为2,则表达式x%=n运算后x的值是_____.
答案: 空 1: 0
5. 题号:2949
已知int a[10]={1,2,3,4,5,6,7,0,9,6}; 下标最大的元素的值是_____.
答案: 空 1: 6
6. 题号:2628
已知int b[8]={11,5,3,21,67,45,77}; 则b[4]的值是_____.
答案: 空 1: 67
7. 题号:2836
已知int b[8]={1,2,3}; 则b[2]的值是_____.
答案: 空 1:
3
8. 题号:3494
以下程序的输出结果是_____。 main()
{ int arr[10], i, k=0; for(i=0; i < 10; i++) arr[i]=i;
for(i=0; i < 4; i++) k +=arr[i] + i; printf(\ }
答案: 空 1: 12
9. 题号:3528
已知int a[10]={3,2,4,1,5,6,7,8,9,10}; 最小的元素的下标值是_____.
答案: 空 1: 3
10.
题号:2870
已知int b[8]={1,2,3}; 则b[6]的值是_____.
for(i=0;i
5. 题号:7050
/*------------------------------------------------ 【程序设计】
--------------------------------------------------
题目:找出一批正整数中的最大的偶数。
注意:部分源程序给出如下。请勿改动主函数main和其 它函数中的任何内容,仅在函数fun的花括号中填 入所编写的若干语句。
*********Begin**********和********** End **********不可删除
------------------------------------------------*/
#include \
void TestFunc();
int fun(int a[],int n) {
/**********Begin**********/
/********** End **********/ }
void main() {
int a[]={1,2,9,24,35,18},k; k=fun(a,6);
printf(\TestFunc(); }
void TestFunc() {
FILE *IN,*OUT;
int iIN[10],iOUT,i,j; IN=fopen(\if(IN==NULL) {
printf(\ }
OUT=fopen(\if(OUT==NULL) {
printf(\ }
for(j=0;j<10;j++) {
for(i=0;i<10;i++)
fscanf(IN,\iOUT=fun(iIN,10);
fprintf(OUT,\ }
fclose(IN); fclose(OUT); }
示例代码:
int i,amax=-1; for(i=0;i if (a[i]>amax) amax=a[i]; return amax; 6. 题号:7014 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 题目:将一维数组按从小到大的顺序排序。 具体要求如下: (1)函数。 void process(int a[10]):将数组a中的元素从小到大排序。 (2)在主程序进行测试。 在主函数中定义一个数组 int a[10]:存储数组值,其初值为{2,1,4,45,23,33,-7,8,5,9}; 调用process函数,将数组a中的元素从小到大排序,并输出。 运行结果为: 排序后:-7 1 2 4 5 8 9 23 33 45 *********Begin**********和********** End **********不可删除 */ #include void process(int a[10]) { /********** Begin **********/ /********** End **********/ } int main() { int a[10]={2,1,4,45,23,33,-7,8,5,9},i; FILE *outf; /*系统判分使用*/ process(a); printf(\排序后:\ for(i=0;i<10;i++) printf(\ printf(\ /*此处将结果输出到文件\,请勿改动,否则影响判分*/ outf=fopen(\ fprintf(outf,\排序后:\ for(i=0;i<10;i++) fprintf(outf,\ fprintf(outf,\ fclose(outf); return 0; } 示例代码: int i,j,c; for(i=0;i<9;i++) { } for(j=i+1;j<10;j++) { } if(a[i]>a[j]) { } c=a[i]; a[i]=a[j]; a[j]=c; 7. 题号:7032 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 题目:将两个一维数组中前n个对应元素相加。 具体要求如下: (1)设计函数: void add(int a[], int b[],int n); 将数组b的前n个元素加到数组a的相应的前n个元素上,并在主函数中调用该函数。 (2)在主程序进行测试。 在主函数中定义两个一维数组 int a[10]:存储数组值,其初值为{2,1,4,45,23,33,-7,8,5,9}。 int b[10]: 存储数组值,其初值为{3,1,-5,6,8,12,-2,9,0,35}。 调用add函数,将b数组的前6个元素加到数组a的前6个元素上,输出数组a中的元素 运行结果为: 数组A:5,2,-1,51,31,45,-7,8,5,9 数组B:3,1,-5,6,8,12,-2,9,0,35 *********Begin**********和********** End **********不可删除 */ #include void add(int a[],int b[],int n) { /********** Begin **********/ /********** End **********/ } int main() { int a[10]={2,1,4,45,23,33,-7,8,5,9}; int b[10]={3,1,-5,6,8,12,-2,9,0,35}; int i; FILE *outf; /*系统判分使用*/ add(a,b,6); printf(\数组A:\ for(i=0;i<10;i++) { printf(\ } printf(\数组B:\ for(i=0;i<10;i++) printf(\ /*此处将结果输出到文件\,请勿改动,否则影响判分*/ outf=fopen(\ fprintf(outf,\数组A:\ for(i=0;i<10;i++) fprintf(outf,\ fprintf(outf,\数组B:\ for(i=0;i<10;i++) fprintf(outf,\ fclose(outf); return 0; } 示例代码: int i; for(i=0;i a[i]=a[i]+b[i]; } 8. 题号:7043 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 题目:计算一维数组中n个元素的平均值。 具体要求如下: (1)函数。 double fun(int a[],int n):计算一维数组a中前n个元素的平均值。 (2)在主程序进行测试。 在主函数中定义一个数组 int a[10]:存储数组值,其初值为{23,34,21,45,67,75,13,68,90,88}。 调用fun函数,求出数组a中前6个元素的平均值,结果保留两位小数。 *********Begin**********和********** End **********不可删除 */ #include double fun(int a[],int n) { /********** Begin **********/ /********** End **********/ } int main() { int a[10]={23,34,21,45,67,75,13,68,90,88}; double result; FILE *outf; /*系统判分使用*/ result=fun(a,6); printf(\ /*此处将结果输出到文件\,请勿改动,否则影响判分*/ outf=fopen(\ fprintf(outf,\ fclose(outf); return 0; } 示例代码: int i; double s=0; for(i=0;i s=s+a[i]; } return s/n; 9. 题号:6946 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 题目:把20个随机数存入一个数组,然后输出该数组中的最大值。 -------------------------------------------------- 注意:部分源程序给出如下。请勿改动主函数 main和其它函数中的任何内容,仅在函 数的花括号中填入所编写的若干语句。 *********Begin**********和********** End **********不可删除 ------------------------------------------------*/ #include void TestFunc(); int vector[20] ; int fun(int list[],int size) { /*********Begin**********/ /********** End **********/ } main() { int i; for (i=0;i<20;i++) { vector[i]=rand()P; printf(\ } i=fun(vector,20); printf(\ TestFunc(); } void TestFunc() { int i,t; FILE *fp ; fp = fopen(\for (i=0;i<20;i++) { fprintf(fp,\ } t=fun(vector,20); fprintf(fp,\fclose(fp) ; } 示例代码: int i,max=0; for(i=1; i 10. 题号:7026 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 题目请编写函数fun,其功能是:计算并输出给定10个数的方差: ┌ 1 10 ┐0.5 S=│─∑ (Xk-X')^2│ └ 10 k=1 ┘ 1 10 其中X'=─∑ Xk 10 k=1 例如,给定的10个数为95.0、89.0、76.0、65.0、88.0、72.0、85.0、81.0、90.0、56.0,输出为s=11.730729。 注意:部分源程序在文件prog.c中。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。 *********Begin**********和********** End **********不可删除 */ #include double fun(double x[10]) { /********** Begin **********/ /********** End ***********/ } NONO() {/* 请在此函数内打开文件,输入测试数据,调用 fun 函数,输出数据,关闭文件。*/ FILE *rf, *wf ; int i, j ; double s, x[10] ; rf = fopen(\wf = fopen(\for(i = 0 ; i < 5 ; i++) { for(j = 0 ; j < 10 ; j++) fscanf(rf, \ s = fun(x) ; fprintf(wf, \ } fclose(rf) ; fclose(wf) ; } main() { double s, x[10]={95.0,89.0,76.0,65.0,88.0,72.0,85.0,81.0,90.0,56.0}; int i; printf(\ for(i=0;i<10;i++)printf(\ s=fun(x); printf(\NONO(); } 示例代码: int i; double avg=0.0; double sum=0.0; double abs=0.0; double fc; for (i=0;i<10;i++) sum+=x[i]; avg=sum/10; for (i=0;i<10;i++) abs+=(x[i]-avg)*(x[i]-avg); fc=sqrt(abs/10) ; return fc; 11. 题号:6913 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 题目:编写函数对数组中的数据进行从小到大的排序。 -------------------------------------------------- 注意:部分源程序给出如下。请勿改动主函数 main和其它函数中的任何内容,仅在函 数的花括号中填入所编写的若干语句。 *********Begin**********和********** End **********不可删除 ------------------------------------------------*/ #include void sort(int a[],int n) { /**********Begin**********/ /********** End **********/ } void main() { int a[16],i; for(i=0;i<16;i++) a[i]=rand()+15; for(i=0;i<16;i++) printf(\ printf(\sort(a,16); for(i=0;i<16;i++) printf(\TestFunc(); } void TestFunc() { FILE *IN,*OUT; int n; int i[10]; int o; IN=fopen(\if(IN==NULL) { printf(\ } OUT=fopen(\if(OUT==NULL) { printf(\ } for(n=0;n<10;n++) { fscanf(IN,\ } sort(i,10); for(n=0;n<10;n++) fprintf(OUT,\fclose(IN); fclose(OUT); } 示例代码: int i,j,t; for(i=0;i 12. 题号:6995 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 题目:编写函数fun对主程序中用户输入的具有10 个数据的数组a按由大到小排序,并在主程序中输出 排序结果。 -------------------------------------------------- 注意:部分源程序给出如下。请勿改动主函数 main和其它函数中的任何内容,仅在函 数的花括号中填入所编写的若干语句。 *********Begin**********和********** End **********不可删除 ------------------------------------------------*/ #include int fun(int array[], int n) { /**********Begin**********/ /********** End **********/ } main() { int a[10],i; printf(\请输入数组a中的十个数:\\n\for (i=0;i<10;i++) scanf(\fun(a,10); printf(\由大到小的排序结果是:\\n\for (i=0;i<10;i++) printf(\printf(\bky(); } voidbky() { FILE *IN,*OUT; int n; int i[10]; IN=fopen(\if(IN==NULL) { printf(\ } OUT=fopen(\if(OUT==NULL) { printf(\ } for(n=0;n<10;n++) { fscanf(IN,\ } fun(i,10); for(n=0;n<10;n++) { fprintf(OUT,\ } fclose(IN); fclose(OUT); } 示例代码: int k,j,t; for (k=0;k 13. 题号:7027 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 题目:求一批数中小于平均值的数的个数。 -------------------------------------------------- 注意:部分源程序给出如下。请勿改动主函数 main和其它函数中的任何内容,仅在函 数的花括号中填入所编写的若干语句。 *********Begin**********和********** End **********不可删除 ------------------------------------------------*/ #include void bky(); int average_num(int a[],int n) { /**********Begin**********/ /********** End **********/ } main() { int n,a[100],i,num; scanf(\for(i=0;i printf(\bky(); } voidbky() { FILE *IN,*OUT; int n; int i[10]; int o; IN=fopen(\if(IN==NULL) { printf(\ } OUT=fopen(\if(OUT==NULL) { printf(\ } for(n=0;n<5;n++) { fscanf(IN,\ } o=average_num(i,5); fprintf(OUT,\fclose(IN); fclose(OUT); } 示例代码: int i,sum=0,k=0; double average; for(i=0;i 14. 题号:6975 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 题目:给定n个数据, 求最小值出现的位置(如果最小值 出现多次,求出第一次出现的位置即可)。 注意:部分源程序给出如下。请勿改动主函数main和其 它函数中的任何内容,仅在函数fun的花括号中填 入所编写的若干语句。 *********Begin**********和********** End **********不可删除 ------------------------------------------------*/ #include \ int station(int s[],int n) { /**********Begin**********/ /********** End **********/ } main() { int a[100],n,i,t; clrscr(); scanf(\for(i=0;i printf(\yzj(); getch(); } yzj() { FILE *IN,*OUT; int n; int i[10]; int o; IN=fopen(\if(IN==NULL) { printf(\ } OUT=fopen(\if(OUT==NULL) { printf(\ } for(n=0;n<10;n++) { fscanf(IN,\ } o=station(i,10); fprintf(OUT,\fclose(IN); fclose(OUT); } 示例代码: int i,k; k=0; for(i=1;i 15. 题号:6979 /*------------------------------------------------ 【程序设计】 -------------------------------------------------- 题目:编写函数fun用比较法对主程序中用户输入的具有10 个数据的数组a按由大到小排序,并在主程序中输出 排序结果。 -------------------------------------------------- 注意:部分源程序给出如下。请勿改动主函数 main和其它函数中的任何内容,仅在函 数的花括号中填入所编写的若干语句。 *********Begin**********和********** End **********不可删除 ------------------------------------------------*/ #include \ int fun(int array[], int n) { /*********Begin**********/ /********** End **********/ } main() { int a[10],i; printf(\请输入数组a中的十个数:\\n\for (i=0;i<10;i++) scanf(\fun(a,10); printf(\由大到小的排序结果是:\\n\for (i=0;i<10;i++) printf(\printf(\TestFunc(); } TestFunc() { FILE *IN,*OUT; int n; int i[10]; int o; IN=fopen(\if(IN==NULL) { printf(\ } OUT=fopen(\if(OUT==NULL) { printf(\ } for(n=0;n<10;n++) { fscanf(IN,\ } fun(i,10); for(n=0;n<10;n++)
正在阅读:
MPLS L2VPN介绍及方案设计10-05
预备党员自我鉴定02-24
浅析土壤污染与修复技术08-06
2015年山东潍坊中考满分作文03-03
所得税会计核算存在的问题与对策研究11-08
2017教师写给孩子的新学期寄语02-09
- 计算机试题
- 【2012天津卷高考满分作文】鱼心人不知
- 教育心理学历年真题及答案--浙江教师资格考试
- 20180327-第六届“中金所杯”全国大学生金融知识大赛参考题库
- 洪林兴达煤矿2018年度水情水害预测预报
- 基本要道讲义
- 机电设备安装试运行异常现象分析与对策
- 《有机化学》复习资料-李月明
- 非常可乐非常MC2--非常可乐广告策划提案 - 图文
- 2011中考数学真题解析4 - 科学记数法(含答案)
- 企业人力资源管理师三级07- 09年真题及答案
- 基于单片机的光控自动窗帘控制系统设计说明书1 - 图文
- 20160802神华九江输煤皮带机安装方案001
- (共53套)新人教版一生物必修2(全册)教案汇总 word打印版
- 2014行政管理学总复习
- 中国银监会关于加强地方政府融资平台贷款风险监管的指导意见
- 民宿酒店核心竞争与研究
- 游园活动谜语大全2012
- 河南省天一大联考2016届高三英语5月阶段性测试试题(六)(A卷)
- 小型超市管理系统毕业论文详细设计4
- 练习题
- 答案
- 测试
- 名校建设申报材料(电子信息工程技术专业方案)2013.2.17
- 培训学校经典招生话术
- 俄罗斯教材《代数引论》的启迪(4)
- 江苏省扬州市宝应县2016届中考化学一模试卷(解析版)
- JSP内置对象
- 深圳中考复习专题-词汇运用专题 - 图文
- 青岛版小学三年级科学下册教案
- 第一周测试
- 北京咖啡加盟电话 小区里开咖啡店注意事项
- 精品解析:【全国市级联考word】湖南省张家界市2018届高三第三次
- 民国大家作文素材
- 澳洲留学资金证明如何出具?
- 2009年二级建造师公路工程管理与实务模拟题
- 内控学校合同管理制度
- 描写笑的作文
- 利益诉求与社会管理
- 成交的一切都是为了爱
- 整理稿《文学批评方法与案例》部分试题及参考答案
- 2009年全国高考重庆文科综合试题
- 2017年幼儿园植树节国旗下讲话稿