第一章 单元测试
1、问题:以下叙述中正确的是( )。
选项:
A:用C程序实现的算法必须要有输入和输出操作
B:用C程序实现的算法可以没有输出但必须要有输入
C:用C程序实现的算法可以没有输入但必须要有输出
D:用C程序实现的算法可以既没有输入也没有输出
答案: 【解锁可见】
2、问题:
以下不能定义为用户标识符的是( )。
选项:
A:Main
B:_10
C:_scanf
D:printf
答案: 【解锁可见】
3、问题:
按照C语言规定的用户标识符命名规则,不能出现在标识符中的是( )。
选项:
A:小写字母
B:连接符
C:数字字符
D:下划线
答案: 【解锁可见】
4、问题:
以下C语言用户标识符中,不合法的是( )。
选项:
A:_1
B:AaBc
C:a_b
D:a–b
答案: 【解锁可见】
5、问题:
结构化程序由三种基本结构组成,三种基本结构组成的算法( )。
选项:
A:可以完成任何复杂的任务
B:只能完成部分复杂的任务
C:只能完成符合结构化的任务
D: 只能完成一些简单的任务
答案: 【解锁可见】
6、问题:
以下叙述中正确的是( )。
选项:
A:C语言程序将从源程序中第一个函数开始执行
B:可以在程序中由用户指定任意一个函数作为主函数,程序将从此开始执行
C:C语言规定必须用main作为主函数名,程序将从此开始执行,在此结束
D:main可作为用户标识符,用以命名任意一个函数作为主函数
答案: 【解锁可见】
7、问题:
C语言源程序名的后缀是( )。
选项:
A:.exe
B:.c
C:.obj
D:.cpp
答案: 【解锁可见】
8、问题:
以下叙述中错误的是( )。
选项:
A:一个C程序中可以包含多个不同名的函数
B:一个C程序只能有一个主函数
C:C程序在书写时,有严格的缩进要求,否则不能编译通过
D:C程序的主函数必须用main作为函数名
答案: 【解锁可见】
9、问题:下列关于C语言用户标识符的叙述中正确的是( )。
选项:
A:用户标识符中可以出现下划线和中划线(减号)
B:用户标识符中不可以出现中划线,但可以出现下划线
C:用户标识符中可以出现下划线,但不能放在用户标识符的开头
D:用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头
答案: 【解锁可见】
10、问题:下列4个选项中,( )是合法的用户自定义标识符。
选项:
A:b-b
B:float
C:2a
D:_isw
答案: 【解锁可见】
第二章 单元测试
1、问题:下列选项中,( )可以将x、y定义成double类型变量,并赋同一初值3.14。
选项:
A:double x, y=3.14;
B:double x, y=2*3.14;
C:double x=3.14, y=3.14;
D:double x=y=3.14;
答案: 【解锁可见】
2、问题:若变量已正确定义并赋值,表达式( )不符合C语言语法。
选项:
A:a*b/c
B:3.14%2
C:2, b
D:a/b/c
答案: 【解锁可见】
3、问题:下列表达式中值为0的是( )。
选项:
A:3%5
B:3/5.0
C:3/5
D:3.0/5
答案: 【解锁可见】
4、问题:以下选项中,( )是不正确的字符常量。
选项:
A:”a”
B:’1′
C:’ ‘
D:’A’
答案: 【解锁可见】
5、问题:
以下选项中不正确的整型常量是( )。
选项:
A:82L
B:-100
C:1,900
D:253U
答案: 【解锁可见】
6、问题:
以下选项中,( )是不正确的字符常量。
选项:
A:”5″
B:’1′
C:”
D:’A’
答案: 【解锁可见】
7、问题:假设在程序中a,b,c均被定义成整型,并且已赋大于1的值,则下列能正确表示代数式

选项:
A:1/a*b*c
B:1/(a*b*c)
C:1/a/b/(float)c
D:1.0/a/b/c
答案: 【解锁可见】
8、问题:
以下能正确定义且赋初值的语句是( )
选项:
A:int n1=n2=10;
B:char ch=’A’;
C:float f=f+1.1;
D:double x=12.3E2.5;
答案: 【解锁可见】
9、问题:
设x、y、z和k都是int型变量,则执行表达式:x=(y=4,z=16,32+z)后,x的值为 ( )
选项:
A:4
B:16
C:48
D:32
答案: 【解锁可见】
10、问题:
C语言中,运算对象必须是整型数的运算符是( )。
选项:
A:%
B:/
C:% 和/
D:*
答案: 【解锁可见】
11、问题:
有以下程序
main()
{
char a1=’M’,a2=’m’;
printf(“%c”,(a1,a2));
}
以下叙述中正确的是( )
选项:
A:程序输出大写字母M
B:程序输出小写字母m
C:格式说明符不足,编译出错
D:程序运行时产生出错信息
答案: 【解锁可见】
12、问题:
在C语言中,下列属于构造类型的是( )。
选项:
A:整型
B:字符型
C:实型
D:数组类型
答案: 【解锁可见】
13、问题:
设d为字符型变量,下列表达式不正确的是( )。
选项:
A:d=97
B:d=’a’
C:d=”a”
D:d=’g’
答案: 【解锁可见】
14、问题:
若x和y都为float型变量,且x=3.6, y=5.8 执行下列语句后输出结果为( )。
printf(“%f”,(x,y));
选项:
A:3.600000
B:5.800000
C:3.600000,5.800000
D:输出符号不够,输出不正确值
答案: 【解锁可见】
15、问题:
表达式(double)(20/3)的值为( )。
选项:
A:6
B:6.0
C:2
D:3
答案: 【解锁可见】
16、问题:
表达式3.6-5/2+1.2+5%2的值是( )。
选项:
A:4.3
B:4.8
C:3.3
D:3.8
答案: 【解锁可见】
17、问题:表达式sizeof(“hello”)的值为( )。
选项:
A:4
B:5
C:6
D:7
答案: 【解锁可见】
18、问题:设整型变量a值为9,则下列表达式中使b的值不为4的表达式( )。
选项:
A:b=a/2
B:b=a%2
C:b=8-(3,a-5)
D:b=a-5
答案: 【解锁可见】
19、问题:
已知ch是字符型变量,下面不正确的赋值语句是( ) 。
选项:
A:ch=‘’ ;
B:ch=‘a+b’;
C:ch=‘7’+‘9’;
D:ch=7+9;
答案: 【解锁可见】
20、问题:
有以下定义语句,编译时会出现编译错误的是( )。
选项:
A:char a=’a’;
B:char a=”;
C:char a=’aa’;
D:char a=’-‘;
答案: 【解锁可见】
第三章 单元测试
1、问题:若变量已正确定义并赋值,下面符合C语言语法的表达式是( )。
选项:
A:a:=b+1
B:a=b=c+2
C:int 18.5%3
D:a=a+7=c+b
答案: 【解锁可见】
2、问题:设变量已正确定义并赋值,表达式( )不符合C语言语法。
选项:
A:int(3.14)
B:++a
C:a=b=5
D:a=4,3
答案: 【解锁可见】
3、问题:下列关于自增运算符++和自减运算符–的叙述中正确的是( )。
选项:
A:它们的运算对象可以是任何类型的变量和常量
B:它们的运算对象可以是char型变量和int型变量,但不能是float型变量
C:它们的运算对象可以是int型变量,但不能是double型变量和float型变量
D:它们的运算对象可以是char型变量、int型变量和float型变量
答案: 【解锁可见】
4、问题:
若变量a、i已正确定义,且i已正确赋值,则合法的语句是( )。
选项:
A:a+2=1
B:++i;
C:a=a++=5;
D:a=int(i);
答案: 【解锁可见】
5、问题:
设x为int型变量,则执行以下语句后,x的值为( )。
x=10;
x+=x-=x-x;
选项:
A:10
B:20
C:30
D:40
答案: 【解锁可见】
6、问题:
以下叙述中正确的是( )。
选项:
A:调用printf函数时,必须要有输出项
B:使用putchar函数时,必须在之前包含头文件stdio.h
C:在C语言中,整数可以以十二进制、八进制或十六进制的形式输出
D:调用getchar函数读入字符时,可以从键盘上输入字符所对应的ASCII码
答案: 【解锁可见】
7、问题:
以下程序的输出结果是( )。
#include “stdio.h”main( ){ int y=3,x=2,z=1; printf(“%d %d”,(x,y),z+2);}
选项:
A:3 4
B:4 2
C:4 3
D:3 3
答案: 【解锁可见】
8、问题:
有以下定义和语句: int u=010,v=0x10,w=10; printf(“%d,%d,%d”,u,v,w) ;
则输出结果是( )。
选项:
A:8,16,10
B:10,10,10
C:8,10,10
D:8,8,10
答案: 【解锁可见】
9、问题:若有以下定义和语句:
char c1=’b’,c2=’e’;
printf(“%d,%c”,c2-c1,c2-‘a’+’A’);
则输出结果是( )。
选项:
A:2,M
B:3,E
C:2,E
D:输出项与对应的格式控制不一致,输出结果不确定
答案: 【解锁可见】
10、问题:
以下程序段的输出结果是( )。 int a=1234; printf(“%2d”,a);
选项:
A:12
B:34
C:1234
D:提示出错、无结果
答案: 【解锁可见】
11、问题:
以下程序的输出结果是( )。 #include “stdio.h” main( ) { char c=’z’; printf(“%c”,c-25); }
选项:
A:a
B:Z
C:z-25
D:y
答案: 【解锁可见】
12、问题:
以下程序的输出结果是( )。 #include “stdio.h” main( ) { int k=17; printf(“%d,%o,%x”,k,k,k); }
选项:
A:17,021,0×11
B:17,17,17
C:17,0×11,021
D:17,21,11
答案: 【解锁可见】
13、问题:
以下程序的输出结果是( )。 #include “stdio.h” main( ) { double d=3.2; int x,y; x=1.2; y=(x+3.8)/5.0; printf(“%d “, d*y); }
选项:
A:3
B:3.2
C:0
D:3.07
答案: 【解锁可见】
14、问题:
下列程序执行后的输出结果是(小数点后只写1位)( )。 #include “stdio.h” main( ) { double d; float f; long k; int i; i=f=k=d=20/3; printf(“%d %ld %.1f %.1f n”, i,k,f,d); }
选项:
A:6 6 6.0 6.0
B:6 6 6.7 6.7
C:6 6 6.0 6.7
D:6 6 6.7 6.0
答案: 【解锁可见】
15、问题:
x、y、z被定义为int型变量,若从键盘上给x、y、z输入数据,则正确的输入语句是( )。
选项:
A:INPUT x、y、z;
B:scanf(“%d%d%d”,&x,&y,&z);
C:scanf(“%d%d%d”,x,y,z);
D:read(“%d%d%d”,&x,&y,&z);
答案: 【解锁可见】
16、问题:
设i是int型变量,f是float型变量,若要通过语句“scanf(“i=%d,f=%f”,&i,&f);”给i赋值100,f赋值765.12,则正确的输入为( )。
选项:
A:100,765.12
B:i=100,f=765.12
C:100 765.12
D:i=100f=765.12
答案: 【解锁可见】
17、问题:
设有以下定义
int a=0;
double b=1.25;
char c=’A’;
#define d 2
则下面语句中错误的是( )。
选项:
A:a++;
B:b++;
C:c++;
D:d++;
答案: 【解锁可见】
18、问题:
有以下程序 #include “stdio.h” main() { int a,b,d=25; a=d/10%9; b=a-1; printf(“%d,%dn”,a,b); } 程序运行后的输出结果是( )。
选项:
A:6,1
B:2,1
C:6,0
D:2,0
答案: 【解锁可见】
19、问题:
有以下程序 #include “stdio.h” main() { char c1=’1′,c2=’2′; c1=getchar(); c2=getchar(); putchar(c1); putchar(c2); } 当运行时输入:a<回车> 后,以下叙述正确的是( )。
选项:
A:变量c1被赋予字符a,c2被赋予回车符
B:程序将等待用户输入第2个字符
C:变量c1被赋予字符a,c2中仍是原有字符2
D:变量c1被赋予字符a,c2中将无确定值
答案: 【解锁可见】
20、问题:
下列程序的输出结果是16.00,请在程序中填空。 #include “stdio.h” main( ) { int a=9, b=2; float x=________ , y=1.1,z; z=a/2+b*x/y+1/2; printf(“%5.2fn”, z ); }
选项:
A:7.7
B:6.6
C:5.5
D:6.05
答案: 【解锁可见】
第四章 单元测试
1、问题:
若x=3,y=z=4,则下列表达式的值分别为( )。
(1)z>=y>=x?1:0
(2)z>=y&& y>=x
选项:
A: 0 1
B: 1 1
C: 0 0
D: 1 0
答案: 【解锁可见】
2、问题:
在嵌套使用if语句时,C语言规定else总是( )。
选项:
A:和之前与其具有相同缩进位置的if配对
B:和之前与其最近的if配对
C:和之前与其最近的且不带else的if配对
D:和之前的第一个if配对
答案: 【解锁可见】
3、问题:判断字符型变量ch为大写字母的表达式是( )。
选项:
A: ’A’<=ch<=’Z’
B:(ch>=’A’)||(ch<=’Z’)
C:(ch>=’A’)&&(ch<=’Z’)
D:(ch>=’A’)AND(ch<=’Z’)
答案: 【解锁可见】
4、问题:逻辑运算符的运算对象的数据类型( )。
选项:
A:只能是0或1
B:只能是.T.或.F.
C:只能是整型或字符型
D:任何类型的数据
答案: 【解锁可见】
5、问题:
以下是if语句的基本形式: if(表达式) 语句
其中“表达式”( )。
选项:
A:必须是逻辑表达式
B:必须是关系表达式
C:必须是逻辑表达式或关系表达式
D:可以是任意合法的表达式
答案: 【解锁可见】
6、问题:下列条件语句中,功能与其他语句不同的是( )。
选项:
A:if(a) printf(“%d”,x); else printf(“%d”,y);
B:if(a==0) printf(“%d”,y); else printf(“%d”,x);
C:if (a!=0) printf(“%d”,x); else printf(“%d”,y);
D:if(a==0) printf(“%d”,x); else printf(“%d”,y);
答案: 【解锁可见】
7、问题:以下程序段中与语句“k=a>b?(b>c?1:0):0;”功能等价的是( )。
选项:
A:if((a>b)&&(b>c))
k=1;
else
k=0;
B:f((a>b)||(b>c))
k=1;
else
k=0;
C:if(a<=b)
k=0;
else
if(b<=c) k=1;
D:if(a>b) k=1;
else if(b>c) k=1;
else k=0;
答案: 【解锁可见】
8、问题:
下面程序的输出结果是( )。
#include “stdio.h”
main( )
{
int x=40,y=4,z=4;
x=y==z;
printf(“%d “,x);
x=x==(y-z);
printf(“%d “,x);
}
选项:
A:4 0
B:4 1
C:1 1
D:1 0
答案: 【解锁可见】
9、问题:下列各语句序列中,能够将变量u和s中的较大值赋值到变量t中的是( )。
选项:
A:if(u>s)t=u ; t=s;
B:t=s ; if(u>s)t=u;
C:if(u>s)t=s ; else t=u;
D:t=u ; if(u>s)t=s;
答案: 【解锁可见】
10、问题:
以下程序执行后的输出结果是( )。#include “stdio.h”main( ){int a=5,b=4,c=3,d=2; if(a>b>c) printf(“%d”,d); else if ((c-1>=d)==1) printf(“%d”,d+1); else printf(“%d”,d+2); }
选项:
A:2
B:3
C:4
D:编译时有错误,无结果
答案: 【解锁可见】
11、问题:
以下程序执行后的输出结果是( )。#include “stdio.h”main( ){ char x=’a’; x=(x>=’a’&&x<=’z’)?(x-32):x; printf(“%cn”, x);}
选项:
A:A
B:a
C:Z
D:z
答案: 【解锁可见】
12、问题:
若有定义:float x=1.5; int a=1, b=3, c=2;,则正确的switch语句是( )。
选项:
A:switch(x)
{
case 1.0: printf(“*”);
case 2.0: printf(“**”);
}
B:switch((int)x);
{
case 1: printf(“*”);
case 2: printf(“**”);
}
C:switch(a+b)
{
case 1: printf(“*”);
case 1+2: printf(“**”);
}
D:switch(a+b)
{
case 1: printf(“*”);
case c: printf(“**”);
}
答案: 【解锁可见】
13、问题:
以下程序的输出结果是( )。#include “stdio.h”main(){ int a=2,b=2,c; c=a==b; printf(“c=%dn”,c);}
选项:
A:c=2
B:c=1
C:c=0
D:不确定
答案: 【解锁可见】
14、问题:
下列程序执行后的输出结果是( )。#include “stdio.h”main( ){ int n=0,m=1,x=2; if(!n) x-=1; if(m) x-=2; if(x) x-=3; printf(“%dn”,x);}
选项:
A:1
B:-1
C:-3
D:-4
答案: 【解锁可见】
15、问题:
以下程序执行后的输出结果是( )。#include “stdio.h”main( ){ int p,a=5; if(p=a!=0) printf(“%dn”,p); else printf(“%dn”,p+2);}
选项:
A:1
B:0
C:3
D:5
答案: 【解锁可见】
16、问题:
以下程序的运行结果是( )。
#include “stdio.h”
main( )
{
int a=2,b=3,c ;
c=a;
if(a>b) c=1;
else if(a==b)
c=0;
else
c=-1;
printf(“%d”,c);
}
选项:
A:1
B:2
C:-1
D:0
答案: 【解锁可见】
17、问题:
有以下程序
#include “stdio.h”
main( )
{
int x;
scanf(“%d”,&x);
if(x>15) printf(“%d “,x-5);
if(x>10) printf(“%d “,x);
if(x>5) printf(“%dn”,x+5);
}
若程序运行时从键盘输入12<回车>,则输出结果为( )。
选项:
A:12
B:12 17
C:17
D:7
答案: 【解锁可见】
18、问题:若有表达式(w)?(–x):(++y),则其中与w等价的表达式是( )。
选项:
A:w==1
B:w==0
C:w!=1
D:w!=0
答案: 【解锁可见】
19、问题:
有以下程序
#include “stdio.h”
main( )
{
int a, b, c;
a=10; b=50; c=30;
if (a>b) a=b, b=c; c=a;
printf(“a=%d b=%d c=%d”, a,b,c);
}
程序的输出结果是( )。
选项:
A:a=10 b=50 c=10
B:a=10 b=50 c=30
C:a=10 b=30 c=10
D:a=50 b=30 c=50
答案: 【解锁可见】
20、问题:
有以下程序
#include “stdio.h”
main( )
{
int x=1, y=2, z=3;
if(x>y)
if(y<z)
printf(“%2d”, z+1);
else
printf(“%2d”, y+1);
printf(“%2d”, x+1);
}
程序的运行结果是( )。
选项:
A:3 2
B:4 2
C:2
D:1
答案: 【解锁可见】
第五章 单元测试
1、问题:
以下叙述中正确的是( )。
选项:
A:do-while语句构成的循环不能用其他语句构成的循环来代替。
B:do-while语句构成的循环只能用break语句退出。
C:用do-while语句构成的循环,在while后的表达式为非零时结束循环。
D:用do-while语句构成的循环,在while后的表达式为零时结束循环。
答案: 【解锁可见】
2、问题:
以下程序执行后的输出结果是( )。
#include “stdio.h”
main( )
{
int x=0,y=5,z=3;
while(z>0&&x<5)
{y=y-1;z–; x++;}
printf(“%d,%d,%d”,x,y,z);
}
选项:
A:3,2,-1
B:3,2,0
C:4,3,-1
D:5,2,5
答案: 【解锁可见】
3、问题:
以下程序执行后的输出结果是( )。
#include “stdio.h”
main( )
{
int i;
for (i=0;i<3;i++)
switch(i)
{ case 1:printf(“%d “,i);
case 2: printf(“%d “,i);break;
default: printf(“%d “,i);
}
}
选项:
A:0 1 1 2
B:0 1 2
C:1 2 0
D:0 1 1
答案: 【解锁可见】
4、问题:
以下程序执行后的输出结果是( )。
#include “stdio.h”
main( )
{int i=0,s=0;
do {
if(i%2) {i++;continue;}
i++;
s+=i;
}while(i<7);
printf(“%dn”,s);
}
选项:
A:16
B:12
C:28
D:21
答案: 【解锁可见】
5、问题:下面的程序运行后,输出的结果是( )。#include “stdio.h”main( ){ int x=3; do { printf (“%dn”, x-=2); } while (!(–x));}
选项:
A:1
B:1和-2
C:3和0
D:死循环
答案: 【解锁可见】
6、问题:
下面的程序运行后,输出的结果是( )。#include “stdio.h”main( ){ int n=5,s=0; while(n) { s+=n; n–; } printf(“%dn”,s); }
选项:
A:15
B:0
C:10
D:5
答案: 【解锁可见】
7、问题:
以下程序执行后的输出结果是( )。
#include “stdio.h”
main( )
{ int i,s=0;
for(i=1;i<10;i+=2) s+=i+1;
printf(“%dn”,s);
}
选项:
A:自然数1~9的累加和
B:自然数1~10的累加和
C:自然数1~9中的奇数之和
D:自然数1~10中的偶数之和
答案: 【解锁可见】
8、问题:
以下程序执行后的输出结果是( )。
#include “stdio.h”
main( )
{ int i,n=0;
for(i=2;i<5;i++)
{ do
{ if(i%3) continue;
n++;
} while(!i);
n++;
}
printf(“n=%d”,n);
}
选项:
A:n=5
B:n=2
C:n=3
D:n=4
答案: 【解锁可见】
9、问题:下面程序的功能是输出以下形式的图案,应在下划线处填入的是( )。****
************
#include “stdio.h”
main( )
{ int i,j;
for(i=1;i<=4;i++)
{
for(j=1;j<= ;j++) printf(“*”);
printf(“”);
}
}
选项:
A:i
B:2*i+1
C:2*i-1
D:i+2
答案: 【解锁可见】
10、问题:以下程序运行后的输出结果是( )。
#include “stdio.h
main( )
{ int i=0,s=0;
for ( ; ; )
{ if(i==3||i==5) continue; if (i==6) break; i++; s+=i; } printf(“%dn”,s); }
选项:
A:10
B:13
C:21
D:程序进入死循环
答案: 【解锁可见】
11、问题:
以下程序的输出结果是( )。
#include “stdio.h”
main( )
{
int i;
for(i=’A’;i<‘I’;i++,i++)
printf(“%c”,i+32);
printf(” “);
}
选项:
A:编译不通过,无输出
B:abcdefgh
C:acegi
D:aceg
答案: 【解锁可见】
12、问题:
运行以下程序后,如果从键盘上输入“65 ,14<Enter>”,则输出结果为( )。
#include “stdio.h”
main( )
{ int m, n;
printf(“Enter m,n;”);
scanf(“%d,%d”,&m,&n);
while (m!=n)
{ while (m>n)m-=n;
while (n>m)n-=m;
}
printf(“m=%dn”,m);
}
选项:
A:m=3
B:m=2
C:m=1
D:m=0
答案: 【解锁可见】
13、问题:
若变量已正确定义,要求程序段完成求6!的计算,不能完成此操作的程序段是( )。
选项:
A:for(i=1,p=1;i<=6;i++) p*=i;
B:for(i=1;i<=6;i++){ p=1; p*=i;}
C:i=1;p=1;while(i<=6){p*=i; i++;}
D:i=1;p=1;do{p*=i; i++; }while(i<=6);
答案: 【解锁可见】
14、问题:
设x和y均为int型变量,则执行以下的循环后,y值为( )。
for(y=1,x=1;y<=50;y++)
{ if(x==10) break;
if(x%2==1)
{ x+=5; continue;}
x-=3;
}
选项:
A:4
B:5
C:6
D:7
答案: 【解锁可见】
15、问题:
设j为int型变量,则下面for循环语句的执行结果是( )。
for( j=10;j>3;j–)
{ if(j%3) j–;
–j;–j;
printf(“%d “,j);
}
选项:
A: 6 3
B: 7 4
C: 6 2
D: 7 3
答案: 【解锁可见】
16、问题:
有以下程序
#include “stdio.h”
main()
{
int a=1,b;
for(b=1;b<=3; b++)
{
if(a%2==1){a+=3;continue; }
a-=2;
}
printf(“%dn”,a);
}
程序运行后的输出结果是( )。
选项:
A:0
B:2
C:3
D:4
答案: 【解锁可见】
17、问题:
有以下程序段
int n,t=1,s=0;
scanf(“%d”,&n);
do
{s=s+t;t=t-2;}
while(t!=n);
为使此程序段不陷入死循环,从键盘输入的数据应该是( )。
选项:
A:任意正奇数
B:任意负偶数
C:任意正偶数
D:任意负奇数
答案: 【解锁可见】
18、问题:要求通过while循环不断读入字符,当读入字母N时结束循环。若变量已正确定义,以下正确的程序段是( )。
选项:
A:while((ch=getchar())!=′N′) printf(“%c”,ch);
B:while(ch=getchar()!=′N′) printf(“%c”,ch);
C:while(ch=getchar()==′N′) printf(“%c”,ch);
D:while((ch=getchar())==′N′) printf(“%c”,ch);
答案: 【解锁可见】
19、问题:19.有以下程序
#include <stdio.h>
main()
{ int i, j, n=0;
for(i=3; i>=1; i–)
for(j=1; j<=2; j++) n++;
printf(“%d”, n);
} 程序的运行结果是( )。
选项:
A:0
B:6
C:2
D:3
答案: 【解锁可见】
20、问题:有以下程序
#include <stdio.h>
main()
{
int i=5;
do
{
if (i%3==1)
if (i%5==2)
{ printf(“*%d”, i); break;}
i++;
}
while(i!=0);
printf(“n”);
} 程序的运行结果是( )。
选项:
A:*7
B:*3*5
C:*5
D:*2*6
答案: 【解锁可见】
第六章 单元测试
1、问题:
若有以下说明:
int a[12]={1,2,3,4,5, 6, 7, 8, 9, 10, 11, 12};
char c=’a’, d, g;
则数值为4的表达式是( )。
选项:
A:a[g-c]
B:a[4]
C:a[‘d’-‘c’]
D:a[‘d’-c]
答案: 【解锁可见】
2、问题:
在C语言中,引用数组元素时,其数组下标的数据类型允许是()。
选项:
A:整型常量
B:整型常量或整型表达式
C:整型表达式
D:任何类型的表达式
答案: 【解锁可见】
3、问题:
以下对一维整型数组a的正确说明是( )。
选项:
A:int a[ ];
B:int n=10,a[n];
C:int n; scanf(“%d”, &n); int a[n];
D:#define SIZE 10
int a[SIZE];
答案: 【解锁可见】
4、问题:
若要定义一个具有5个元素的整型数组,以下错误的定义语句是( )。
选项:
A:int a[5]={0};
B:int b[]={0,0,0,0,0};
C:int c[2+3];
D:int i=5, d[i];
答案: 【解锁可见】
5、问题:
给出以下定义:
char x[]=”abcdefg”;
char y[]={‘a’, ‘b’, ‘c’, ‘d’, ‘e’, ‘f’, ‘g’};
则正确的叙述为()。
选项:
A:数组X和数组Y等价
B:数组x和数组Y的长度相同
C:数组X的长度大于数组Y的长度
D:数组X的长度小于数组Y的长度
答案: 【解锁可见】
6、问题:
下列字符串赋值语句中,不能正确把字符串C program赋给数组的语句是( )。
选项:
A:char a[]={‘C’, ‘ ‘, ‘p’, ‘r’, ‘o’, ‘g’, ‘r’, ‘a’, ‘m’ , ”};
B:char a[10]; strcpy(a, “C program”);
C:char a[10]; a= “C program”;
D:char a[10]={“C program”};
答案: 【解锁可见】
7、问题:
下面程序段的运行结果是()。
char c[5]={ ‘a’, ‘b’, ‘
#版权声明# 本站所有资源来自网络收集和网友投稿,不代表大学题库立场。本站所提供资源均只能用于参考学习用,请勿直接商用。如若本站内容侵犯了您的合法权益,可联系我们进行删除处理。点我联系站长