最新全国计算机二级考试c语言程序设计真题大全
在日常的学习、工作、生活中,肯定对各类范文都很熟悉吧。范文怎么写才能发挥它最大的作用呢?下面我给大家整理了一些优秀范文,希望能够帮助到大家,我们一起来看一看吧。
全国计算机二级考试c语言程序设计真题篇一
计算机二级考试是计算机等级考试中竞争最激烈的,你知道怎样备考计算机二级考试吗?下面是小编为大家带来的计算机二级c语言程序设计备考题,欢迎阅读。
编程题
1、三个整数a、b、c,由键盘输入,输出其中最大的数。
2、从键盘输入的10个整数中,找出第一个能被7整除的数。若找到,打印此数后退出循环;若未找到,打印“not exist”。
3、有一个一维数组,内放10个学生成绩,写一个函数,求出平均分。
4、有n个学生,每个学生的信息包括学号、性别、姓名、四门课的成绩,从键盘上输入n个学生的信息,要求输出总平均成绩最高的学生信息,包括学号、性别、姓名和平均成绩。
参考答案:
1、main()
{ int a,b,c;
printf(“请输入三个整数:”); scanf(“%d,%d,%d”,&a,&b,&c);
if(aif(belse printf(“max=%d ”,b);
else if(aelse printf(“max=%d ”,a); }
2、#include”stdio.h”
main()
{ int i,a;
for(i=1;i<=10;i++)
{ scanf(“%d”,&a);
{ if(a%7==0)
printf(“%d”,a); break; } }
if(i==11)
printf(“not exist”); }
3、float average(float array[ ],int n)
{ int i;
float aver,sum=array[0];
for(i=1;isum=sum+array[i];
aver=sum/n;
return(aver); }
main()
{ float ave,score[10];
int i;
for(i=0;i<10;i++)
scanf("%f",&score[i]);
ave=average(score,10);
printf("%f ",ave); }
4、 #include"stdio.h"
#define n 3
struct student
{ long stu_num;
char sex;
char name[15];
int score[4];
float average; };
main()
{ int i,j,index;
float sum,max;
struct student stuarr[n];
for(i=0;i{ printf("please input %d student information: ",i+1);
scanf("%ld,%c,%s",&stuarr[i].stu_num,&stuarr[i].sex,stuarr[i].name);
for(j=0;j<4;j++)
scanf("%d",&stuarr[i].score[j]); }
for(i=0;i{ sum=0.0;
for(j=0;j<4;j++)
sum+=stuarr[i].score[j];
stuarr[i].average=sum/4.0; }
max=stuarr[0].average;
index=0;
for(i=1;iif(stuarr[i].average>max)
{max=stuarr[i].average; index=i; }
printf("总平均成绩最高的学生信息是学号=%ld,性别=%c,姓名=%s,平均成绩=%4.1f ",stuarr[index].stu_num,stuarr[index].sex,stuarr[index].name,stuarr[index].average); }
1.c语言中,关系表达式和逻辑表达式的值是( b ) 。
a、0
b、 0或1
c、 1
d、‘t’或’f’
2. 下面( d )表达式的值为4.
a、 11/3
b、 11.0/3
c、 (float)11/3
d、 (int)(11.0/3+0.5)
【解析】(1)相同数据类型的元素进行数学运算(+、-、*、/)得到结果还保持原数据类型。
(2)不同数据类型的元素进行数学运算,先要统一数据类型,统一的标准是低精度类型转换为高精度的数据类型。
选项a,11与3为两个整数,11/3结果的数据类型也应为整数,因此将3.666666的小数部分全部舍掉,仅保留整数,因此11/3=3.
选项b,11.0为实数,3为整数,因此首先要统一数据类型,将整型数据3转换为3.0,转换后数据类型统一为实型数据,选项b变为11.0/3.0,结果的数据类型也应为实型数据,因此选项b 11.0/3=3.666666
选项c,先将整数11强制类型转换,转换为实型11.0,因此选项c变为11.0/3,其后计算过程、结果与选项b同
选项d,首先计算11.0/3,其计算过程、结果与选项b同,得到3.666666;再计算3.666666+0.5=4.166666,最后将4.166666强制类型转换为整型,即将其小数部分全部舍掉,结果为4
3.设整型变量 a=2,则执行下列语句后,浮点型变量b的值不为0.5的是( b )
a、b=1.0/a
b、b=(float)(1/a、
c、b=1/(float)a
d、b=1/(a*1.0)
4. 若“int n; float f=13.8;”,则执行“n=(int)f%3”后,n的值是(a)
a、1
b、4
c、4.333333
d、4.6
【解析】“(int)f“表示将f中的值强制类型转换为整型,即将13.8的小数部分舍掉,转换为13;然后计算13%3,结果为1,再将结果赋给变量n,因此n的值为1
5. 以下对一维数组a的正确说明是: d
a、char a(10);
b、 int a[];
c、int k=5,a[k];
d、char a[3]={‘a’,’b’,’c’};
【解析】详见教材p143~144,一维数组的定义、初始化
类型符 数组名 [常量表达式]
类型符是指数组中数组元素的类型;数组名要符合标识符命名规则;常量表达式是指数组的长度(数组中包含元素的个数),其值只能是整数,不可以是变量,而且从1开始计数。
选项a,常量表达式只能放在中括号 [ ]中
选项b,只有在对数组初始化(即赋值)的时候才可以省略数组的长度,b中并未对a进行初始化。
选项c,常量表达式不能为变量。
6.以下能对一维数组a进行初始化的语句是:( c )
a、int a[5]=(0,1,2,3,4,)
b、 inta(5)={}
c、 int a[3]={0,1,2}
d、 int a{5}={10*1}
【解析】详见教材p145,一维数组的定义、初始化
选项b,d,常量表达式只能放在中括号 [ ]中
选项a,数组可以看做是若干个相同数据类型元素的有序集合,因此以集合的.形式对其初始化,使用{ }对其初始化,选项a用了().
7.在c语言中对一维整型数组的正确定义为 d 。
a、int a(10);
b、int n=10,a[n];
c、int n;a[n];
d、#define n 10
8、已知:int a[10]; 则对a数组元素的正确引用是( d )。
a、a[10]
b、a[3.5]
c、a(5)
d、a[0]
【解析】详见教材p144,数组元素的引用
数组名[下标]
引用数组元素时,[ ]中的下标为逻辑地址下标,只能为整数,可以为变量,且从0开始计数
int a[10]表示定义了一个包含10个整型数据的数组a,数组元素的逻辑地址下标范围为0~9,即a[0] 表示组中第1个元素; a[1] 表示组中第2个元素; a[2] 表示组中第3个元素; ......;a[9] 表示组中第10个元素.
选项a,超过了数组a的逻辑地址下标范围;
选项b,逻辑地址下标只能为整数
选项c,逻辑地址下标只能放在[ ]中
9.若有以下数组说明,则i=10;a[a[i]]元素数值是(c )。
int a[12]={1,4,7,10,2,5,8,11,3,6,9,12};
a、10
b、9
c、6
d、5
【解析】先算a[a[i]]内层的a[i],由于i=10,因此a[i]即a[10].
a[10]对应下面数组中的元素为9. 因此a[a[i]]即为a[9]
a[9]对应下面数组中的元素为6. 因此a[9]即为6
10.若有说明:int a[][3]={{1,2,3},{4,5},{6,7}}; 则数组a的第一维的大小为: ( b )
a、2
b、3
c、4
d、无确定值
【解析】二维数组的一维大小,即指二维数组的行数,在本题中,按行对二维数组赋值,因此内层有几个大括号,数组就有几行
s("content_relate");
【2017年9月计算机二级c语言程序设计备考题】相关文章:
2017年9月计算机二级c语言程序设计备考题及答案
08-30
2017年9月计算机二级c语言程序设计习题08-25
2017年9月计算机二级c语言程序设计练习题08-27
2017年9月计算机二级c语言程序设计习题及答案08-24
2017年9月计算机二级c语言程序设计练习题及答案08-27
计算机二级《c语言程序设计》测试题10-04
计算机二级c语言程序设计试题及答案09-12
2017年9月计算机二级考试c语言巩固试题10-04
2017年9月计算机二级c语言基础试题及答案09-29