admin 管理员组文章数量: 1184232
2024年3月7日发(作者:慧编程app)
大学计算机专业《C语言程序设计》试卷及答案
试卷编号:9049 所属语言:Turbo C
试卷方案:09(2) 模拟试卷总分:100分 共有题型:5种
一、填空 共15题 (共计15分)
第1题 (1.0分)
C语言表达式!(3<6)||(4<9)的值是【1】.
答案: 1). 1 逻辑“或”
第2题 (1.0分)
int a=1,b=2,c=3; 执行语句a=b=c;后a的值是【1】.
答案: 1). 3
第3题 (1.0分)
以下程序的输出结果为【1】,
#include "stdio.h" main(){int a=010,j=10;printf("%d,%dn",++a,j--);}
答案: 1). 9,10
第4题 (1.0分)
执行下列语句的结果是【1】,a=3;printf("%d,",++a);printf("%d",a++);
答案: 1). 4,4
第5题 (1.0分)
当a=1,b=2,c=3时,执行以下程序段后b=【1】.
if (a>c) b=a;
a=c;
c=b;
答案: 1). 2
第6题 (1.0分)
假设有条件 int x=1,y=2,z=3;则表达式z+=x>y?++x:++y的值是【1】.
答案: 1). 6
第7题 (1.0分)
执行下列语句后,b 的十进制值是【1】.
int x=240,y=15,b;
char z='A';
b=(( x && y ) && ( z < 'a' ));
答案: 1). 1
第8题 (1.0分)
当a=3,b=2,c=1;时,执行以下程序段后 a=【1】.
if(a>b) a=b;
if(b>c) b=c;
else c=b;
c=a;
答案: 1). 2
第9题 (1.0分)
以下程序的输出结果为【1】,
#include "stdio.h" main(){int a;for(a=0;a<10;a++);printf("%d",a);}
答案: 1). 10
第10题 (1.0分)
程序段int k=10; while(k=0) k=k-1循环体语句执行【1】次.
答案: 1). 0
第11题 (1.0分)
以下程序段要求从键盘输入字符,当输入字母为'Y' 时,执行循环体,则括号内应填写【1】.
ch=getchar();
while(ch ____ 'Y')/*在括号中填写*/
ch=getchar();
答案: 1). ==
第12题 (1.0分)
以下do-while语句中循环体的执行次数是【1】.
a=10;
b=0;
do { b+=2; a-=2+b; } while (a>=0);
答案: 1). 3
第13题 (1.0分)
C语言中,数组元素的下标下限为【1】.
答案: 1). 0
第14题 (1.0分)
如果函数不要求带回值,可用【1】来定义函数返回值为空.
答案: 1). void
第15题 (1.0分)
C语言源程序的基本单位是【1】.
答案: 1). 函数
二、判断 共15题 (共计15分)
第1题 (1.0分)
a=(b=4)+(c=6) 是一个合法的赋值表达式. 答案:Y
第2题 (1.0分)
在C语言中,变量必需先定义后使用 答案:Y
第3题 (1.0分)
语句 printf("%f%%",1.0/3);输出为 0.333333. 答案:N
第4题 (1.0分)
语句scanf("%7.2f",&a);是一个合法的scanf函数. 答案:N
第5题 (1.0分)
在switch-case语句中,必须使用default语句. 答案:N
第6题 (1.0分)
关系运算符(大于、小于)的优先级高于(低于加减乘除)算术运算符并且低于(高于)赋值运算符.答案:N
第7题 (1.0分)
C语言中的for语句可以用于循环次数已经确定的情况,但是不能用于循环次数不确定而只给出循环结束条件的情况.
答案:N
第8题 (1.0分)
do-while循环是先判断循环条件表达式,后执行循环体;while循环是先执行循环体,后判断循环条件表达式.答案:N
第 9题 (1.0分)
在定义二维数组时,可以将该数组的两个维数全部省略答案:N
第10题 (1.0分)
任何数组的下标都是从0开始;答案:Y
第11题 (1.0分)
C语言中只能逐个引用数组元素而不能一次引用整个数组.答案:Y
第12题 (1.0分)
数组中的元素类型不能不同答案:Y
第13题 (1.0分)
通过return语句,函数可以带回一个或一个以上的返回值.答案:N
第14题 (1.0分)
如果函数值的类型和return语句中表达式的值不一致,则以
函数类型为准.答案:Y
第15题 (1.0分)
C程序中有调用关系的所有函数必须放在同一个源程序文件中.答案:N
三、单项选择 共20题 (共计40分)
第1题 (2.0分)
下列程序的输出结果是().
main()
{
printf("%dn",null);
}
A:0
B:变量无定义
C:-1
D:1
答案:B
第2题 (2.0分)
用下列语句定义a,b,c,然后执行b=a、c='b'+b,则b,c的值是().
long a=0xffffff;
int b; char c;
A:0ffffff 和0x61
B:-1和98
C:-1和97
D:指向同一地址
答案:C
第3题 (2.0分)
已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用
八进制表示的字符常量'101'是().
A:字符A
B:字符a
C:字符e
D:非法的常量
答案:A
第4题 (2.0分)
若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97),
则以下程序段的执行结果是().
进制整数)
A:因变量类型与格式描述符的类型不匹配,输出无定值
B:输出项与格式描述符个数不符,输出为零值或不定值
C:61,141,k=%12
D:61,141,k=%d 答案:C
第5题 (2.0分)
若a是float型变量,b是unsigned型变量,以下输入语句中合法的是().
A:scanf("%6.2f%d",&a,&b);
B:scanf("%f%n",&a,&b);
C:scanf("%f%3o",&a,&b);
D:scanf("%f%f",&a,&b);
答案:C
第6题 (2.0分)
以下程序的输出结果为().
main()
{int i=010,j=10;
printf("%d,%dn",++i,j--);
}
A:11,10
B:9,10
C:010,9
D:10,9
答案:B
第7题 (2.0分)
int a=1,b=2,c=3;
if(a>c)b=a;a=c;c=b;则c的值为().
A:1
B:2
C:3
D:不一定
答案:B
第8题 (2.0分)
下列各m的值中,能使m%3==2&&m%5==3&&m%7==2为真的是().
A:8
B:23
C:17
D:6
答案:B
ch='a'; k=12; printf("%x,%o,",ch,ch); printf("k=%%%dn",k);(x十六进制整数,o八
第9题 (2.0分)
以下运算符中,优先级最高的运算符是().
A:?:
B:++
C:&&
D:,
答案:B
第10题 (2.0分)
设j和k都是int类型,则for循环语句
for(j=0,k=0;j<=9&&k!=876;j++)( j<=9,k!=876) scanf("%d",&k)循环;().
A:最多执行10次
B:最多执行9次
C:是无限循环
D:循环体一次也不执行
答案:A
第11题 (2.0分)
下面有关 for 循环的正确描述是().
A:for 循环只能用于循环次数已经确定的情况
B:for 循环是先执行循环循环体语句,后判断表达式
C:在 for 循环中,不能用 break 语句跳出循环体
D:for 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
答案:D
第12题 (2.0分)
以下程序的运行结果是().
main()
{ int n;
for(n=1;n<=10;n++)
{
if(n%3==0) continue;
printf("%d",n);
}
}
A:12457810
B:369
C:12
D:1234567890
答案:A
第13题 (2.0分)
以下程序段的输出结果为().
for(i=4;i>1;i--)
for(j=1;j
putchar('#');
A:无
B:######
C:#
D:###
答案:B
第14题 (2.0分)
设j和k都是int类型,则for循环语句().
for(j=0,k=0;j<=9&&k!=876;j++) scanf("%d",&k);
A:最多执行10次
B:最多执行9次
C:是无限循环
D:循环体一次也不执行 答案:A
第15题 (2.0分)
在C语言中,为了结束由while语句构成的循环,while后一对圆括号
中表达式的值应该为().
A:0
B:1
C:True
D:非0
答案:A
第16题 (2.0分)
以下对一维整型数组a的正确说明是().
A:int a(10);
B:int n=10,a[n];
C:int n; scanf("%d",&n); int a[n];
D:#define SIZE 10 (换行) int a[SIZE];
答案:D
第17题 (2.0分)
在C语言中,引用数组元素时,其数组下标的数据类型允许是().
A:整型常量
B:整型表达式
C:整型常量或整型表达式
D:任何类型的表达式
答案:C
第18题 (2.0分)
以下不能正确定义二维数组的选项是().
A:int a[2][2]={{1},{2}};
B:int a[][2]={1,2,3,4};
C:int a[2][2]={{1},2,3};
D:int a[2][]={{1,2},{3,4}};
答案:D
第19题 (2.0分)
若有说明: int a[3][4]={0};则下面正确的叙述是().
A:只有元素a[0][0]可得到初值0
B:此说明语句不正确
C:数组a中各元素都可得到初值,但其值不一定为0
D:数组a中每个元素均可得到初值0
答案:D
第20题 (2.0分)
以下数组定义中不正确的是().
A:int a[2][3];
B:int b[][3]={0,1,2,3};
C:int c[100][100]={0};
D:int d[3][]={{1,2},{1,2,3},{1,2,3,4}};
答案:D
四、程序填空 共2题 (共计12分)
第1题 (6.0分)
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:从读入的整数数据中,统计大于零的整数个数和小于零的
整数个数。用输入零来结束输入,程序中用变量i统计大于
零的整数个数,用变量j统计小于零的整数个数。
-------------------------------------------------------*/
#include
main()
{int k,n,i,j;
printf("Enter INT number,with 0 to endn");
i=j=0;
scanf("%d",&n);
while(n!=0)
/***********SPACE***********/
{if(n>0)i=【?】;
/***********SPACE***********/
if(n<0)j=【?】;
/***********SPACE***********/
scanf("%d",【?】);
}
printf("i=%4dn",i,j);
}
答案:
1). i + 1
2). j + 1
3). &n
第2题 (6.0分)
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:以下程序是用选择法对10个整数按升序排序,程序中有4个空,
填空使程序完整。
-------------------------------------------------------*/
/***********SPACE***********/
【?】
main()
{
int i,j,k,t,a[N];
for(i=0;i<=N-1;i++)
scanf("%d",&a[i]);
版权声明:本文标题:大学计算机专业《C语言程序设计》试卷及答案(一) 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1709777504a546269.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论