admin 管理员组文章数量: 1086019
2024年4月21日发(作者:xml格式演示文稿打开方式)
C语言程序设计模拟试题4
说明:
1. 本卷共五大题,共6页。
2. 本试卷时间120分钟,满分100分。
一、项选择题(每小题2分,共20分, 每小题只有一个正确答案,请将你认为
正确的答案填在对应的括号内。)
1. 组成C程序的基本单位是( )。
A.函数 B.标识符 C.表达式 D.语句
2. 在C语言中,正确的字符类型的常量是( )
A.‘b‘ B.“ab” C.’ab’ D.”a”
3. 在C语言中,逻辑值“真”是用( )表示的。
A.预定义为真值的宏 B.非零数
C.正数 D.非零整数
4.下列描述中不正确的是( )
A. 字符型数组中可以存放字符串
B. 可以对字符型数组进行整体输入、输出
C. 可以对整型数组进行整体输入、输出
D. 不能在赋值语句中通过赋值运算符“=”对字符型
数组进行整体赋值
5.设有如下定义:int x=1,y=-1;,则语句:printf(“%dn”,(x--&++y));的输出结果是
( )
A.1 B.0 C.-1 D.2
6.当c的值不为0时,在下列选项中能正确将c的值赋给变量a、b的是( )
A. c=b=a; B.(a=c)||(b=c); C.(a=c)&&(b=c); D.a=c=b;
7.以下程序的输出结果是( )
A.10 1 9 2 B. 9 8 7 6
C. 10 9 9 0 D.10 10 9 1
main()
{
int x=10,y=10,i;
for(i=0;x>8;y=++i)
printf(“%d %d”,x--,y);
}
8.以下程序的输出结果是( )
A.5 2 B.5 1 C.5 3 D.9 7
main()
{
int i,x[3][3]={9,8,7,6,5,4,3,2,1},*p=&x[1][1];
for(i=0;i<4;i+=2) printf(“%d”,p[i]);
}
9.以下程序的输出结果是( )
A.6 B.6789 C.’6’ D.789
main()
{
char a[10]={‘1’,’2’,’3’,’4’,’5’,’6’,’7’,’8’,’9’,0},*p;
int i;
i=8;
p=a+i;
printf(“%sn”,p-3);
}
10.C语言提供的合法的数据类型关键字是( )
A. Double B. short C. integer D. Char
二、读程序(每小题3分,共27分)
1、以下程序的输出结果为:( )
main()
{
int a,b,d=241;
a=d/100%9;
b=(-1)&&(-1);
printf("%d,%dn",a,b);
}
A.2,1 B.2,0 C.0.25,0 D.程序有错
2、以下程序的输出结果为:( )
#include "stdio.h"
main()
{int i;
for(i=1;i<=5;i++)
{if(i%2)
printf("*");
else
continue;
printf("#");
}
printf("$n");
}
A.#*#*#$ B.*#%*#$ C.*#*#*#$ D.*#*#*$
3、有以下程序:
#include "stdio.h"
main()
{char c[6];
int i=0;
for(;i<6;c[i]=getchar(),i++);
for(i=0;i<6;putchar(c[i]),i++);
}
输入以下三行,每行输入都是在第一列上开始,
a
b
cdef
程序输出结果为:( )
B. a C.a D.a
b b b
cdef c cd
d
e
f
4、以下程序的输出结果为:
#include "stdio.h"
main()
{int c;
while((c=getchar())!='n')
{
switch(c-'2')
{case 0:
case 1:putchar(c+4);
case 2:putchar(c+4);break;
case 3:putchar(c+3);
default:putchar(c+2);break;
}
}
printf("n");
}
每行输入在第一列上开始,
2473
程序输出结果为:( )
A.6696 B. 668977 C.666965 D.669855
5、以下程序的输出结果为:( )
A.19,59,5 B.29,59,5 C.2,9,5,9,5 D.17,4,8,5
main()
{
int i=1,j=3;
printf("%d",i++);
i+=j++*2;
printf("%d,%d",++i,++j)
printf("%d,%dn",i,j);
}
6、以下程序的输出结果为:( )
main()
{ int a=2,i;
for (i=0;i<3;i++)
printf("%4d",f(a++));
}
f(int a)
{ int b=0;
static int c=3;
b++;c++;
return a+b+c;
}
A. 7 8 9 B. 7 7 7
C.8 9 10 D.7 9 11
7、下列程序,分别选择3条printf语句行的正确输出结果。
point1(int x,int y)
{ int t=1;
x=x+t;y=y+t;
return;
}
point2(int *x,int *y)
{ int t=1;
*x= *x+t;
*y=*y+t;
return;
}
void point3(char *p)
{
p+=1;
*p=*p+1;
}
main()
{
char b[4]={‘a’,’c’,’s’,’f’},*pt=b;
int x=3,y=4;
point1(x,y);
printf(“%d,%dn”,x,y); (1) ( )
point2(&x,&y);
printf(“%d,%dn”,x,y); (2) ( )
point3(pt);
printf(“%cn”,*(pt+1)); (3) ( )
(1)A. 4,5 B. 3,4 C 4,3 D. 5,4
(2)A. 4,5 B. 3,4 C 4,3 D. 5,4
(3)A. c B. s C acsf D. d
三、读程序,填空(每空3分,共21)。
1、用以下程序把大写字母A~Z转换成对应的小写字母,其他字符不转换。
main()
{
char ch;
scanf(___________);
ch=(___________________)?ch+32:ch;
_________ ("char=%c",ch);
}
2、以下程序的功能是:从键盘上输入若干个学生的成绩,统计计算出平均成绩,
并输出低于平均分的学生成绩,用输入负数结束输入。请填空。
main()
{
float x[1000],sum=0.0,ave,a;
int n=0,i;
printf(“enter mark:n”);
scanf(“%f,&a);
while(a>=0.0&&n<1000)
{
sum+= _________ ;
x[n]= ____________ ;
n++;
scanf(“%f”,&a);
}
ave= __________ ;
printf(“ave=%fn”,ave);
for(i=0;i if( _____________ ) printf(“%fn”,x[i]); } 四、改程序。下列程序功能为:先从键盘上输入一个5行5列矩阵的各个元素 的值,然后输出对角线元素之和。请改正程序中的错误,使它能得出正确的结 果。(共10分) 注意:不要增加行或删除行,也不得更改程序的结构! #include “stdio.h” main() { int a[5][5],sum; int i,j; for(i=0;i<=5;i++) { for(j=0;j<=5;j++) scanf(“%d”,a[i][j]); } sum=sumprog(a); printf(“sum=%dn”,sum); } void sumprog(int a) { int sum; for(i=0;i<=3;i++) sum=sum+a[i][i]; } 五、 编写程序。(各题10分,共20分) 1、删除一个字符串中的所有空格。例如,输入字符串“this is a string”, 则应输出”thisisastring”.要求1)原字符串存放在a数组中,新字符串 存放在b数组中。2)要求画出流程图及编写程序。(本题10分) 2、编写一个程序,将数组a中n个整数按相反顺序存放。(本题10分) 要求:1)交换部分用函数 2)函数调用时形参和实参都要用指针
版权声明:本文标题:C语言程序设计模拟试题4 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/b/1713680750a646697.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论