C语言程序设计考试试卷(附答案)
C语言程序设计考试试卷
计算机程序设计 课程 56 学时 3.5 学分 考试形式: 闭 卷
一、选择题(15小题,每小题2分,共计30分)
1.下面不正确的字符串常量是 A 。
A)'abc' B)"12'12" C)"0" D)" "
2.以下正确的叙述是 D
A)在C程序中,每行中只能写一条语句
B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数
C)在C程序中,无论是整数还是实数,都能被准确无误(精确)地表示
D)在C程序中,%是只能用于整数运算的运算符
3.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'十'6'一'3';后,c2中的值为 A
A)D B)68 C)不确定的值 D)C
4.sizeof(float)是 B :
A)一个双精度型表达式 B)一个整型表达式
C)一种函数调用 D)一个不合法的表达式
5.以下说法正确的是 D :
A)输入项可以为一实型常量,如scanf("%f",3.5);
B)只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d");
C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf("%4.2f",&f);
D)当输入数据时,必须指明变量的地址,如scanf("%f",&f);
6.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A,B,当从第一列开始输入数据时,正确的数据输入方式是 D (注:表示回车)。
int a1,a2; char c1,c2;
scanf("%d%d",&a1,&a2); scanf("%c%c",&c1,&c2);
A) 1020AB B)10 20AB
C)10 20 AB D)10 20AB
7.请阅读以下程序:
void main()
{int a=5,b=0,c=0;
if(a=b+c) printf("***\n");
e1se printf("$$$\n");
以上程序 D :
A)有语法错不能通过编译 B)可以通过编译但不能通过连接
C)输出*** D)输出$$$
8.下面程序段的运行结果是 C 。 x=y=0;
while(x<15) {y++;x+=++y;}
printf("%d,%d",x,y);
A)20,7 B)6,12 C)20,8 D)8,20
9.若有说明:int a[3]={0};则下面正确的叙述是 D 。
A) 只有元素a[0]可得到初值0
B) 此说明语句不正确
C) 数组a中各元素都可得到初值,但其值不一定为0
D) 数组a中每个元素均可得到初值0
10.在c语言中,引用数组元素时,其数组下标的数据类型允许是_ C _。
A)整型常量 B)整型表达式
C)整型常量或整型表达式 D)任何类型的表达式
11.下面程序段的运行结果是 _ B _。
char c[5]={'a','b','\0','c','\0'};
printf("%s",c);}
A)’a’’b’ B)ab C)ab c D)a b
12.以下叙述正确的是 C 。
A) 在C程序中,main函数必须位于程序的最前面
B) C程序的每行中只能写一条语句
C) C语言本身没有输入输出语句
D) 在对一个C程序进行编译的过程中,可发现注释中的拼写错误
13.简单变量做实参时,实参与其对应的形参之间的数据传递方式是 C 。
A)双向值传递方式 B)地址传递方式
C)单向值传递方式 D)用户指定传递方式
14.编辑程序的功能是 A 。
A)修改并建立源程序 B)将源程序翻译成目标程序
C)调试程序 D)命令计算机执行指定的程序
15.在C语言中,5种基本数据类型的存储空间长度排列顺序为 C 。
A)char
C)char
二、计算表达式(每小题1.5分,共计15分):
设 int x=25,y=-20;float a=102.56,b=50.87;(注意:各式结果不影响后续的题目!)
1.(++y)+(x--) ( 6 )
2.y*=y+=25 ( 25 )
3.x+y>=0?(x-2*y):(x+2*y) ( 65 )
4.(x+y)/2+(int)(a-b)%(int)b ( 3 ) 5.x/2+(a-b)/2 ( 37.845 )
6.!(x=a)&&(y=b)&&1 ( 0 )
7.!(a+b-1)||y+x/2 ( 1 )
8.计算(y>=0)&&(++y)后y的值为: ( -20 )
9.printf(“%d”,’\102’);结果为 ( 66 )
10.已知’a’的ASCII码为97,则:printf(“%c”,’\x64’);结果为( d )
三、写出下列程序的的执行结果(每小题5分,共计20分,注意输出格式)
1.#include
Int main()
{ int a=23389,b=45;float x=647.3586,y=13643.5538;
char c1=’A’,c2[]="Hello";
printf("a=%4d,b=%4d\n",a,b);
printf("%-9.2f,%9.2f\n",x,y);
printf("%o,%x,%u\n",b,b,b);
printf("%d,%c\n",c1,c1);
printf("%s,%6.4s\n",c2,c2);
return 0;
}
2.#include
#define N 10
int main( )
{ int a=1,b=0, i;
for (i=0; i
{ printf("%6d%6d",a,b);
printf("\n");
a=b+a;
b=a+b;}
return 0;}
a = 2 3 3 8 9 , b = 4 5
6 4 7 . 3 6 , 1 3 6 4 3 . 5 5
5 5 , 2 d , 4 5
6 5 , A
H e l l o , H e l l
3.#include
int main()
{ int i,j,k=0;
for(i=1;i<31;i++)
{ for(j=2;j<=i-1;j++)
if(i%j==0) break;
if(j==i)
{ printf("%7d",i) ;
k++;
if(k%2==0) printf("\n");
}
}
Return 0;
}
4.#include
int main()
{ int i=16,j,x=6,y,z;static char c[]=”I am a student”;
j=i+++1; printf(“%5d\n”,j);
x*=i=j; printf(“%5d\n”,x);
x=1,y=2,z=3;
x+=y+=z;
printf(“%5d\n”,(z+=x)>y? z++:y++);
x=y=z=-1;
++x||++y||z++;
printf(“%5d,%5d,%5d\n”,x,y,z);
printf(“%s,%5.4s\n”,c,c); 1 0
1 1
2 3
5 8
1 3 2 1
2 3
5 7
1 1 1 3
1 7 1 9
2 3 2 9 return 0;
}
四、程序填空(每空1.5分,共计15分)
1.下面程序的功能是:将字符数组s2中的全部字符拷贝到字符数组s1中,不用strcpy函数。
#include
main()
{ char s1[80], s2[80];
int i;
printf("input s2:");
gets(s2);
for(i=0;s2[i]!=’\0’; i++ )
s1[i]=s2[i] ;
s1[i]=’\0’;
printf("s1: %s \n",s1);
return 0;
}
2.输入20个整数,找出其中的最大数及最小数,并求其和值。
#include
int main()
{ int a[20],i,max,min,sum;
printf("input a[0]-a[19]:");
for(i=0;i<20;i++)
scanf(“%d”, &a[i] );
max=a[0]; min=a[0]; sum= a[0] ;
for(i=1; i<20 ;i++)
{ if(a[i]>max) max=a[i];
if(a[i]
sum+=a[i];
}
printf(%d,%d,%d\n",max,min,sum); 1 7
1 0 2
9
0 , 0 , 0
I a m a s t u d e n t , I a m
c语言程序设计试卷及答案(A)
第 1 页,共 7 页
《C语言程序设计》 2013至 2014 学年度第 1 学期期 末 (A)卷
专业班级 姓名 学号
(考生注意:考试时间为120分钟。答案须写在答题纸上,并注明题号,考试结束后将试卷连同答题纸一齐交)
一、单项选择题(每小题2分,共40分)
1。在一个C语言程序中,有并且只能有一个( )函数。
A。 main函数 B。自定义函数 C。外部函数 D.内部函数
2。一个C语言程序,总是从( )函数开始执行。
A。 main函数 B。自定义函数 C.外部函数 D。内部函数
3.下列标识符中,不能用作变量名的是( )。
A. _1234_ B。 _1_2 C. int_2_ D。 2_int_
4.下列字符常量不合法的是( ).
A。 ‘2’ B. ‘\t’ C. ‘ab’ D. ‘ \n’
5。执行以下语句后的输出结果为( ).
int x; float y; y=3.6; x=(int)y+10; printf(“x=%d,y=%f”,x,y);
A. x=13.6,y=3.600000 B. x=13,y=3。600000 C。 x=13,y=3 D. x=13,y=3。6
6.以下哪种变量类型在C语言中不存在 ( ).
A。 整型变量 B。实型变量 C。 字符串变量 D.字符变量
7.设m=10,n=4,则赋值运算m%=n+1执行后m的值是( )。
A。 1 B。 2 C。 3 D. 0
8。下面语句执行后输出结果为( )。
int x=10,y=3,z; printf(“%d\n",z=(x%y,x/y));}
C语言程序设计考试试卷(附答案)
C语言程序设计考试试卷
计算机程序设计 课程 56 学时 3.5 学分 考试形式: 闭 卷
一、选择题(15小题,每小题2分,共计30分)
1.下面不正确的字符串常量是 A 。
A)'abc' B)"12'12" C)"0" D)" "
2.以下正确的叙述是 D
A)在C程序中,每行中只能写一条语句
B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数
C)在C程序中,无论是整数还是实数,都能被准确无误(精确)地表示
D)在C程序中,%是只能用于整数运算的运算符
3.已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'十'6'一'3';后,c2中的值为 A
A)D B)68 C)不确定的值 D)C
4.sizeof(float)是 B :
A)一个双精度型表达式 B)一个整型表达式
C)一种函数调用 D)一个不合法的表达式
5.以下说法正确的是 D :
A)输入项可以为一实型常量,如scanf("%f",3.5);
B)只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d");
C)当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf("%4.2f",&f);
D)当输入数据时,必须指明变量的地址,如scanf("%f",&f);
6.已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A,B,当从第一列开始输入数据时,正确的数据输入方式是 D (注:表示回车)。
int a1,a2; char c1,c2;
scanf("%d%d",&a1,&a2); scanf("%c%c",&c1,&c2);
C语言程序设计期末考试试卷
1 / 10
一、单项选择题(本大题共20题,每题2分,共40分)
1、以下不是C语言的特点的是
A、C语言简洁、紧凑
B、能够编制出功能复杂的程序
C、C语言可以直接对硬件进行操作
D、C语言移植性好
2、以下不正确的C语言标识符是
A、ABCB、abcC、a_bcD、ab.c3、一个C语言程序是由。
A、一个主程序和若干子程序组成
B、函数组成
C、若干过程组成
D、若干子程序组成
4、一个算法应该具有“确定性”等5个特性,对另外4个特性的描述中错误的是
A、有零个或多个输入
B、有零个或多个输出
C、有穷性
D、可行性
5、设变量a是整型,f是实型,i是双精度型,则表达式10+‘a’+i*f值的数据类型为
2 / 10
A、intB、floatC、doubleD、不确定6、在C语言中,char型数据在内存中的存储形式是。
A、补码B、反码C、源码D、ASCII码
7、有如下程序,输入数据:12345M678<cR>后(表示回车),x的值是。
#include
main(){
int x;
float y;
scanf("%3d%f",&x,&y);
}
A、12345B、123C、45D、3458、若有以下定义int a,b; float x,则正确的赋值语句
是。
A、a=1,b=2
B、b++;
C、a=b=5
D、b=int(x);
9、以下程序的执行结果是。
#include
{
int i=10,j=10;
3 / 10
printf("%d,%d\n",++i,j--);
}
A、11,10B、9,10C、11,9D、10,910、巳知字母A的ASCII码是65,以下程序的执行结果
是。
#include
main()
{
char c1='A',c2='Y';
printf("%d,%d\n",c1,c2);
A、A,YB、65,65C、65,90D、65,8911、下列运算符中优先级最高的是。
《C语言程序设计》期中考试试卷
1 淮 海 工 学 院
10 – 11 学年 第 2 学期 C语言程序设计 期中考试试卷
题号 一 二 三 四 五 总分
得分
单项选择题答题表
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
一、单项选择题(共20题,每题1分,共20分,答案填写在单项选择题答题表中)
1. 以下叙述中正确的是( )。
A) C 程序的基本组成单位是语句
B) C 程序中的每一行只能写一条语句
C) 简单C 语句必须以分号结束
D) C 语句必须在一行内写完在
2. 一个C程序是由____________。
A) 一个主程序和若干个子程序构成
B) 一个或多个函数构成
C) 若干过程组成
D) 若干子程序组成
3. 以下选项中正确的定义语句是____________。
A) double a; b;
B) double a=b=7;
C) double a=7, b=7;
D) double, a, b;
4. 计算机能直接执行的程序是( )。
A) C源程序
B) 目标程序
C) 汇编程序 D) 可执行程序
5. 下列符号可以作为变量名的是____________。
A) +a
B) *p
C) _DAY
D) next day
6. 设c是字符变量,则以下表达式正确的是____________。
A) c=666
B) c='c'
C) c="c"
D) c="abcd"
7. 以下说法正确的是____________。
A) 输入项可以为一个实型常量,如scanf("%f", 3.5)
B) 只有格式控制没有输入项也能进行正确输入,如scanf("%d")
C) 当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(%4.2f", &f)
D) 当输入数据时,必须指定变量的地址,如scanf("%f", &f)
8. 若a, b, c均定义为整型,要给它们输入数据,正确的输入语句是____________。
C语言程序设计试卷及答案
第1页 (共14页) C语言程序设计 笔试试题
题号 一 二 三 四 五 六 笔试(70%) 综合
(30%) 总分
分数
试卷说明:
1. 笔试卷面总分100分,取卷面成绩的70%计入总分;
2. 综合成绩为平时成绩(10%)和实验成绩(20%)之和,占总分的30%;
3. 答题时禁止拆开试卷钉,试卷背面即为草稿纸;
4. 答题时间120分钟。
一、单项选择题。将正确答案填入下面框中。
(本题16分,每小题1分)
题号 1 2 3 4 5 6 7 8
答案
题号 9 10 11 12 13 14 15 16
答案
1. 有以下程序
main()
{int a=1,b=0;
if(!a) b++;
else if(a==0) if(a) b+=2;
else b+=3;
printf(“%d\n”,b);
}则程序输出( A )。
A) 0 B) 1 C) 2 D) 3
2. 有以下定义:int a; long b; double x,y;则下列正确的是( A )。
A) a%(int)(x-y) B) a=x!=y C) (a*y)%b D) y=x+y=x
3. 若有定义 int (*p)[3];则下列说法正确的是( C )。
号
学
名
姓
注意行为规范
遵守考试纪律
第2页 (共14页) A) 定义了基类型为int的三个指针变量
B) 定义了一个名为 *pt、具有三个元素的整型数值
C) 定义了一个名为pt的指针变量,它可以指向每行有三个整数元素的二维数组D) 定义了基类型为int的具有三个元素的整型数组
4. 有以下程序段
main()
{ int x=10;
while(x--);
printf("x=%d\n",x);}
则最后的输出结果是:( B )。
《C语言程序设计》期中考试试卷 2
1 淮 海 工 学 院
10 – 11 学年 第 2 学期 C语言程序设计 期中考试试卷
题号 一 二 三 四 五 总分
得分
单项选择题答题表
1 2 3 4 5 6 7 8 9 10
11 12 13 14 15 16 17 18 19 20
一、单项选择题(共20题,每题1分,共20分,答案填写在单项选择题答题表中)
1. 以下叙述中正确的是( )。
A) C 程序的基本组成单位是语句
B) C 程序中的每一行只能写一条语句
C) 简单C 语句必须以分号结束
D) C 语句必须在一行内写完在
2. 一个C程序是由____________。
A) 一个主程序和若干个子程序构成
B) 一个或多个函数构成
C) 若干过程组成
D) 若干子程序组成
3. 以下选项中正确的定义语句是____________。
A) double a; b;
B) double a=b=7;
C) double a=7, b=7;
D) double, a, b;
4. 计算机能直接执行的程序是( )。
A) C源程序
B) 目标程序
C) 汇编程序 D) 可执行程序
5. 下列符号可以作为变量名的是____________。
A) +a
B) *p
C) _DAY
D) next day
6. 设c是字符变量,则以下表达式正确的是____________。
A) c=666
B) c='c'
C) c="c"
D) c="abcd"
7. 以下说法正确的是____________。
A) 输入项可以为一个实型常量,如scanf("%f", 3.5)
B) 只有格式控制没有输入项也能进行正确输入,如scanf("%d")
C) 当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(%4.2f", &f)
D) 当输入数据时,必须指定变量的地址,如scanf("%f", &f)
8. 若a, b, c均定义为整型,要给它们输入数据,正确的输入语句是____________。
《C语言程序设计》试卷(答案)
2006――2007学年第一学期《C语言程序设计》试卷
班级________ 姓名__________ 学号_________
一、 选择题(每题2分,共60分)
1、 以下选项中正确的整型常量是 ________________A
A) 12 B)-20. C)1,000 D)4 5 6
2、 以下选项中不正确的实型常量是________________A
A)2.607E-1 B)0.8103e2.0 C)-77.77 D)456e-2
3、 以下选项中不合法的用户标识符是_______________B
A)abc B)case C)Main D)PRINTF
4、 C语言中运算对象必须是整型的运算符是___________A
A)% B)/ C)! D)* *
5、若变量已正确定义并赋值,符合C语言语法的表达式是_____________B
A)a=a+7; B)a=7+b+c,a++ C)int(12.3%4) D)a=a+7=c+b
6、 TURBO C中int 类型变量所占字节数是________________B
A)1 B)2 C)3 D)4
7、若变量已正确说明为float类型,要通过以下赋值语句给a赋予10、b赋予22、c赋予33,以下不正确的输入形式是_____________B
A)10 B)10.0,22.0,33.0 C)10.0 D)10 22
22 22.0 33.0 33
33
scanf(“ %f %f %f” ,&a,&b,&c);
8、 以下程序的输出结果是:________________A
C语言程序设计试卷及答案 2
C语言程序设计
一、单项选择题(共15小题,每题4分,共60分)
1、下列有关C语言的叙述中错误的是()。
A) C语句必须以分号结束 B) 任何一个C程序中有且只有一个主函数
C) 复合语句在语法上可被看作一条语句 D) C程序中对数据的任何操作都可由运算符实现
2、以下不能定义为用户标识符的是()。
A) MAIN B) _HJ C) 2ong D) LINE1
3、以下能正确定义一维数组的是( )。
A) int a[5]={0,1,2,3,4,5}; B) int a[5]=”012345”;
C) char a[ ]=”012345”;
D) char a[5]={0,1,2,3,4,5};
4、以下关于main()函数的说法,正确的是 。
A) main()必须是程序的第一行 B)main()可以有参数
C) 一个程序可以有多个main() D)main()可以被用户自定义的函数调用
5、设char str1[10] = “ABCDE”, str2[10] = “xyz”;
则执行语句 printf(“%d”, strlen(strcpy(str1, str2))); 后的输出结果是()。
A) 9 B) 8 C) 5 D) 3
6、若用数组名作为函数调用的实参,则传递给形参的是()。
A) 数组的首地址 B) 数组第一个元素的值 C) 数组中全部元素的值 D) 数组元素的个数
7、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为( )。
A)void B)double C)int D)char
8、下面不能正确进行字符串赋值操作的语句是( )。
A) char s[5]={"ABCD"}; B) char s[5]; s="ABCD"; C) char *s;s="ABCDEF"; D) char *s="ABCD";
C语言程序设计试卷及答案_1
第 1 页 共 10 页 XX大学 C语言程序设计 期末考试A卷及参考答案 课程名称 考试日期 考生姓名 学号 专业或类别 题号 一 二 三 四 五 总分 累分人 签名 题分 20 10 15 30 25 100 得分 考生注意事项:1、本试卷共 页,请查看试卷中是否有缺页。 2、考试结束后,考生不得将试卷、答题纸和草稿纸带出考场。 教师注意事项:如果整门课程由一个教师评卷的,只需在累分人栏目签名,题首的评卷人栏目可不签名 一、 单项选择题(每小题 2 分,共 20 分) 得分 评卷人 1、以下选项中不合法的用户标识符是( ) A) _123 B) A$ C) printf D) Dim 2、定义 int i; float f; 表达式i*f+’c’-20 的值是( )类型 A) float B) int C) char D) doudle 3、两个指针变量不可以( )。 A) 比较 B) 相加 C) 相减 D) 指向同一地址 kaiser
第 2 页 共 10 页 4、程序中定义: char str[]="abcdefg"; char *ps="hijklmn"; 合法的语句组合是( ) A) str[2]=‘x’; ps[2] =‘x’; B) ps[2] =‘x’; ps = str; C) str = ps; str[2] =‘x’; D) str[2] =‘x’; ps = str; 5、在C语言中,要求运算数必须是整型的运算符是 ( ) A) / B) % C) < D) ! 6、以下程序的输出结果是( ) #define ADD2(x) x+x void main() { int a=3,b=4,c=10,d=ADD2(a+b)*c; printf("d=%d",d); } A) d=50 B) d=70 C) d=77 D) d=140 7、已知有共用体变量data1定义如下: union message { int i; char ch; double d; } data1; 则变量data1所占的内存存储空间可表示为( ) A).sizeof(int) B).sizeof(char) C).sizeof(double) D).sizeof(int)+sizeof(char)+sizeof(double t) kaiser
C语言程序设计试卷复习资料(附答案)
第 1 页 共 4 页 C语言程序设计试卷复习资料(附答案)
一、 选择题
1、在16位机中,int型字宽为(A)字节。
(A)2 (B)4 (C)6 (D)8
2、类型修饰符unsigned修饰(D)类型是错误的。
(A)char (B)int (C)long int (D)float
3、对于int *pa[5];的描述,(D)是正确的。
(A)pa是一个指向数组的指针,所指向的数组是5个int型元素 (B)pa是一个指向某数组中第5个元素的指针,该元素是int变量 (C)pa[5]表示某个数组的第5个元素 (D)pa是一个具有5个元素的指针数组,每个元素是一个int型指针。
4、下列关于指针的运算中,(D)是非法的。
(A)
两个指针在一定条件下,可以进行相等或不等的运算。
(B)
可以有一个空指针赋值给某个指针。
(C)
一个指针可以加上一个整数。
(D)
两个指针在一定条件下,可以相加。 第 2 页 共 4 页 5、指针可以用来表示数组元素,下列表示中( ? )是错误的。已知: int a[3][7]; (A)*(a+1)[5] (B)*(*a+3)
(C)*(*(a+1))
(D)*( (A)int (B)int (C)int (D)float
7、重载函数在调用时选择的依据中,( ? )是错误的。
(A)参数个数 (B)参数类型 (C)函数名字 (D)函数的返回值类型
8、在一个函数中,要求通过函数调用来实现一个不太复杂的功能,并且要求加快执行速 度,选用( ? )最合适。
(A)内联函数 (B)重载函数 (C)递归函数 (D)嵌套调用
9、采用函数重载的目的在于( ? )
(A)实现共享 (B)减少空间 (C)提高速度 (D)使用方便,提高可读性10、说明语句 “const char *ptr; ”中,ptr应该是( ? )。
(A)指向字符常量的指针 (B)指向字符的常量指针 (C)指向字符串常量的指针 (D)指向字符串的常量指针
