上海海事大学C语言程序设计练习题全题库Word文件下载.docx
- 文档编号:19039606
- 上传时间:2023-01-03
- 格式:DOCX
- 页数:242
- 大小:87.70KB
上海海事大学C语言程序设计练习题全题库Word文件下载.docx
《上海海事大学C语言程序设计练习题全题库Word文件下载.docx》由会员分享,可在线阅读,更多相关《上海海事大学C语言程序设计练习题全题库Word文件下载.docx(242页珍藏版)》请在冰豆网上搜索。
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;
elsec=b;
c=a;
第9题(1.0分)
main(){inta;
for(a=0;
a<
10;
a++);
a);
1).10
第10题(1.0分)
程序段intk=10;
while(k=0)k=k-1循环体语句执行【1】次.
1).0
第11题(1.0分)
以下程序段要求从键盘输入字符,当输入字母为'
Y'
时,执行循环体,则括号内应填写【1】.
ch=getchar();
while(ch____'
)/*在括号中填写*/
1).==
第12题(1.0分)
以下do-while语句中循环体的执行次数是【1】.
a=10;
b=0;
do{b+=2;
a-=2+b;
}while(a>
=0);
第13题(1.0分)
C语言中,数组元素的下标下限为【1】.
第14题(1.0分)
如果函数不要求带回值,可用【1】来定义函数返回值为空.
1).void
第15题(1.0分)
C语言源程序的基本单位是【1】.
1).函数
二、判断共15题(共计15分)
a=(b=4)+(c=6)是一个合法的赋值表达式.答案:
Y
在C语言中,变量必需先定义后使用答案:
语句printf("
%f%%"
1.0/3);
输出为0.333333.答案:
N
语句scanf("
%7.2f"
&
a);
是一个合法的scanf函数.答案:
在switch-case语句中,必须使用default语句.答案:
关系运算符(大于、小于)的优先级高于(低于加减乘除)算术运算符并且低于(高于)赋值运算符.答案:
C语言中的for语句可以用于循环次数已经确定的情况,但是不能用于循环次数不确定而只给出循环结束条件的情况.
do-while循环是先判断循环条件表达式,后执行循环体;
while循环是先执行循环体,后判断循环条件表达式.答案:
第9题(1.0分)
在定义二维数组时,可以将该数组的两个维数全部省略答案:
任何数组的下标都是从0开始;
C语言中只能逐个引用数组元素而不能一次引用整个数组.答案:
数组中的元素类型不能不同答案:
通过return语句,函数可以带回一个或一个以上的返回值.答案:
如果函数值的类型和return语句中表达式的值不一致,则以
函数类型为准.答案:
C程序中有调用关系的所有函数必须放在同一个源程序文件中.答案:
三、单项选择共20题(共计40分)
第1题(2.0分)
下列程序的输出结果是().
main()
{
printf("
%d\n"
null);
A:
B:
变量无定义
C:
-1
D:
1
B
第2题(2.0分)
用下列语句定义a,b,c,然后执行b=a、c='
b'
+b,则b,c的值是().
longa=0xffffff;
intb;
charc;
0ffffff和0x61
-1和98
-1和97
指向同一地址
C
第3题(2.0分)
已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用
八进制表示的字符常量'
\101'
是().
字符A
字符a
字符e
非法的常量
A
第4题(2.0分)
若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97),
则以下程序段的执行结果是().
ch='
k=12;
%x,%o,"
ch,ch);
k=%%%d\n"
k);
(x十六进制整数,o八进制整数)
因变量类型与格式描述符的类型不匹配,输出无定值
输出项与格式描述符个数不符,输出为零值或不定值
61,141,k=%12
61,141,k=%d答案:
第5题(2.0分)
若a是float型变量,b是unsigned型变量,以下输入语句中合法的是().
scanf("
%6.2f%d"
a,&
b);
%f%n"
%f%3o"
%f%f"
第6题(2.0分)
以下程序的输出结果为().
{inti=010,j=10;
++i,j--);
11,10
9,10
010,9
10,9
第7题(2.0分)
c)b=a;
a=c;
c=b;
则c的值为().
2
3
不一定
第8题(2.0分)
下列各m的值中,能使m%3==2&
m%5==3&
m%7==2为真的是().
8
23
17
6
第9题(2.0分)
以下运算符中,优先级最高的运算符是().
?
:
++
第10题(2.0分)
设j和k都是int类型,则for循环语句
for(j=0,k=0;
j<
=9&
k!
=876;
j++)(j<
=9,k!
=876)scanf("
k)循环;
().
最多执行10次
最多执行9次
是无限循环
循环体一次也不执行
第11题(2.0分)
下面有关for循环的正确描述是().
for循环只能用于循环次数已经确定的情况
for循环是先执行循环循环体语句,后判断表达式
在for循环中,不能用break语句跳出循环体
for循环的循环体语句中,可以包含多条语句,但必须用花括号括起来
D
第12题(2.0分)
以下程序的运行结果是().
{intn;
for(n=1;
n<
=10;
n++)
{
if(n%3==0)continue;
n);
}
369
12
90
第13题(2.0分)
以下程序段的输出结果为().
for(i=4;
i>
1;
i--)
for(j=1;
i;
j++)
putchar('
#'
);
无
######
#
###
第14题(2.0分)
设j和k都是int类型,则for循环语句().
for(j=0,k=0;
j++)scanf("
k);
循环体一次也不执行答案:
第15题(2.0分)
在C语言中,为了结束由while语句构成的循环,while后一对圆括号
中表达式的值应该为().
True
非0
第16题(2.0分)
以下对一维整型数组a的正确说明是().
inta(10);
intn=10,a[n];
intn;
scanf("
n);
inta[n];
#defineSIZE10(换行)inta[SIZE];
第17题(2.0分)
在C语言中,引用数组元素时,其数组下标的数据类型允许是().
整型常量
整型表达式
整型常量或整型表达式
任何类型的表达式
第18题(2.0分)
以下不能正确定义二维数组的选项是().
inta[2][2]={{1},{2}};
inta[][2]={1,2,3,4};
inta[2][2]={{1},2,3};
inta[2][]={{1,2},{3,4}};
第19题(2.0分)
若有说明:
inta[3][4]={0};
则下面正确的叙述是().
只有元素a[0][0]可得到初值0
此说明语句不正确
数组a中各元素都可得到初值,但其值不一定为0
数组a中每个元素均可得到初值0
第20题(2.0分)
以下数组定义中不正确的是().
inta[2][3];
intb[][3]={0,1,2,3};
intc[100][100]={0};
intd[3][]={{1,2},{1,2,3},{1,2,3,4}};
四、程序填空共2题(共计12分)
第1题(6.0分)
/*-------------------------------------------------------
【程序填空】
---------------------------------------------------------
题目:
从读入的整数数据中,统计大于零的整数个数和小于零的
整数个数。
用输入零来结束输入,程序中用变量i统计大于
零的整数个数,用变量j统计小于零的整数个数。
-------------------------------------------------------*/
#include<
stdio.h>
{intk,n,i,j;
EnterINTnumber,with0toend\n"
i=j=0;
while(n!
=0)
/***********SPACE***********/
{if(n>
0)i=【?
】;
if(n<
0)j=【?
【?
】);
i=%4d\n"
i,j);
1).i+1
2).j+1
3).&
n
第2题(6.0分)
以下程序是用选择法对10个整数按升序排序,程序中有4个空,
填空使程序完整。
【?
】
inti,j,k,t,a[N];
for(i=0;
i<
=N-1;
i++)
a[i]);
N-1;
【?
】
for(j=i+1;
if(a[j]<
a[k])k=j;
if(【?
】){t=a[i];
a[i]=a[k];
a[k]=t;
outputthesortedarray:
\n"
%5d"
a[i]);
1).#defineN10
2).k=i;
3).j<
N或N>
j或j<
=N-1或N-1>
=j
4).k!
=i
五、程序设计共3题(共计18分)
/*------------------------------------------------
【程序设计】
--------------------------------------------------
编写函数fun求1!
+2!
+3!
+……+n!
的和,在
main函数中由键盘输入n值,并输出运算结果。
请
编写fun函数。
例如:
若n值为20,则结果为9。
注意:
部分源程序给出如下。
请勿改动主函数main和其
它函数中的任何内容,仅在函数fun的花括号中填
入所编写的若干语句。
------------------------------------------------*/
#include<
floatfun(intn)
/**********Program**********/
/**********End**********/
inti,n;
longintresult;
result=fun(n);
%ld\n"
result);
yzj();
yzj()
FILE*IN,*OUT;
inti;
intiIN;
longintiOUT;
IN=fopen("
1.in"
"
r"
if(IN==NULL)
{printf("
PleaseVerifyTheCurrerntDir..ItMayBeChanged"
OUT=fopen("
1.out"
w"
if(OUT==NULL)
PleaseVerifyTheCurrentDir..ItMayBeChanged"
for(i=0;
{fscanf(IN,"
iIN);
iOUT=fun(iIN);
fprintf(OUT,"
iOUT);
fclose(IN);
fclose(OUT);
----------------------
floatf=1,s=0;
for(i=1;
=n;
{f=f*i;
s=s+f;
returns;
编写函数fun其功能是:
根据整型形参m,
计算如下公式的值:
y=1/5+1/6+1/7+1/8+1/9+1/10...+1/(m+5)
若m=9,则应输出:
1.168229
请勿改动主函数main
和其它函数中的任何内容,仅在函数fun的花
括号中填入所编写的若干语句。
doublefun(intm)
/**********Program**********/
/**********End**********/
main()
{intn;
clrscr();
Entern:
"
&
\nTheresultis%1f\n"
fun(n));
getch();
}
ints,i;
intt;
floato;
in.dat"
ReadFileError"
out.dat"
WriteFileError"
5;
t);
o=fun(t);
%f\n"
o);
doubley=0;
inti;
i<
=m;
i++)
{y+=1.0/(i+5);
return(y);
----------------------
第3题(6.0分)
编写函数fun,函数的功能是:
求给定正整数m以
内的素数之和。
例如:
当m=20时,函数值为77。
intfun(intm)
inty;
y=fun(20);
y=%d\n"
y);
yzj();
intiIN,iOUT,i;
20.in"
20.out"
inti,k,s=0;
for(i=2;
{for(k=2;
k<
k++)
if(i%k==0)break;
if(k==i)s=s+i;
returns;
试卷总分:
100分
共有题型:
6种
若有以下数组a,数组元素:
a[0]~a[9],其值为
941282107513
该数组中下标最大的元素的值是【1】.
表达式18&
53的值是【1】.
c语言程序的三种基本结构是:
顺序结构,选择结构,【1】结构.
循环
预处理命令行都必须以【1】号开始.
设i,j,k均为int型变量,则执行完for循环
for(i=0,j=10;
=j;
i++,j--)k=i+j;
后,k的值为【1】.
10
执行下列语句后,*(p+1)的值是【1】.
chars[3]="
ab"
*p;
p=s;
b
若输入字符串:
abcde<
回车>
则以下while循环体将执行【1】次.
While((ch=getchar())=='
e'
)printf("
*"
void
C语言中,数组元素的下
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 上海 海事 大学 语言程序设计 练习题 题库