内容发布更新时间 : 2025/1/11 0:24:29星期一 下面是文章的全部内容请认真阅读。
浙江理工大学
C程序设计 试题(一)
试题二、语言基础题(本题共30分)
(一)判断题(本题共10分,每小题1分)
说明:在以下提供的若干陈述中,逐一判断其正确与否,选A表示正确,选B表示错误。 (16) C语言程序的三种基本结构是顺序、选择和嵌套。 (17) 在C语言程序中,在函数内部定义的变量称为全局变量。 (18) 运算符“=”和“&=”的优先级相同。 (19) ‘%f’是不正确的字符常量。 (20) 运算符“+”不能作为单目运算符。
(21) 如果运算符“*”和“/”都是右结合的,则表达式10*6/5的值是10。 (22) s(s-a)(s-b)(s-c)是合法的C语言表达式。 (23) 表达式!!6的值是6。 (24) 表达式~(~2<<1)的值是5。
(25) 对于变量定:int a[10],*p=a+8;数组a的最后一个元素是p[1]。
(二)单选题(本题共20分,每小题2分)
(26) 执行语句 printf(\ (26) \,\;将得到出错信息。
A、%u
B、%s
C、%e
D、%d
(27) 设c是一个字符变量,求解表达 (27) 后,c的值不是1就是0。
A、 c=getchar()!=’\\n’ B、(c=getchar()!)=’\\n’ C、 c=’1’ D、 c=EOF
(28) 下列定义中, (28) 定义的变量可以存放-123.4。
A、long a; C、int d;
B、unsigned b; D、float c;
(29) 对于变量定义;char *pp[100],pp是一个 (29) 。
A、函数
B、数组元素
C、指针变量
D、数组
(30) 下列程序段的输出结果是 (30) 。
char *st[ ]={ \ printf(\ A、(MOON,M)
B、(OON,C)
C、(OON,Q)
D、(OON,A)
(31) 对于以下的变量定义,表达式 (31) 是不正确的。 struct node {
float x,y;
char s[10] ; } point,*p=&point;
A、p→x=2.0 C、point.x=2.0
B、(*p).y=3.0 D、p→s=\
(32) 下列程序段的输出结果是 (32) 。
int a=10,b=0; if (a>15) b=1;
else if (a<2) b=2; else b=3
printf(\;
A、3
B、2
C、1
D、0
(33) 只有当输入数据满足1<=month<=12时,循环语句 (33) 才能正常退出。
A、do{
scanf(\ ;
} while (month>=1‖month<=12); B、do{
scanf(\ ;
} while (month>=1 && month<=12); C、do{
scanf(\ ;
} while (month<1‖month>12); D、do{
scanf(\ ;
} while (month<=1‖month>=12);
调用函数f(27)的输出结果是 (34) 。 void f(int n) { if (n<5)
printf(\ else
printf(\ f(n/5); } A、102 B、201 C、21
34)
D、20
(35) 下列程序段的输出结果是 (35) 。 int k=3,j=4; int *p=&k,*q=&j; (*p)--; j=k; (*q)--
printf(\
A、(2,1)
B、(1,2)
C、(4,3)
D、(3,3)
试题三、程序填空题(每空2分,共20分)
说明:阅读下列程序说明和相应的程序,在每小题提供的若干可选答案中,挑选一个正确答案。 程序1、
【程序说明】
输入一批以-1结束的整数,求偶数和。 【程序】
#include
scanf(\ (36) {
if( (37) ) sum=sum+x; (38) ; printf(“sum=%d”,sum); }
(36) A、while(x==-1) C、if(x==-1) (37) A、x==2 C、x%2==0 (38) A、scanf(\ C、sum=0
程序2、 【程序说明】
a是一个3×3的矩阵,输入a的元素,如果a是下三角矩阵,输出“YES”,否则,输出“NO”。 (下三角矩阵,即对角线以上的元素都为0,主对角线为从矩阵的左上角至右下角的连线。)
【程序】
#include
for (i=0;i<3;i++)
for (k=0;k<3;k++);
scanf(\”,&a[i][k]); (39) ;
for (i=0;i<3&&flag;i++)
for(k=i+1;k<3&&flag;k++) if( (40) ) (41) ; if (flag) printf(\ else printf(\ }
(39) A、flag=0 B、flag==0 (40) A、a[k][i]!=0 B、a[i][k]==0 (41) A、flag=0 B、flag==0
B、while(x !=-1) D、if(x!=-1) B、x%2==2 D、x/2==0
B、scanf(\ D、x=sum
C、flag==1 C、a[i][k]!=0 C、flag==1 D、flag=1 D、a[k][i]=0 D、flag=1