A)1,2,0 B)2,1,0 C)1,2,1 D)2,1,1
5 下面程序段的运行结果是:
x=y=0;
while(x<15) y++,x+=++y; printf(\
A) 20,7 B)6,12 c) 20,8 D)8,20 6 下面程序段的运行结果是
int n=0;
while(n++<=2); printf(\ A)2 B)3 C)4 D)有语法错
7 设有程序段
t=0;
while (printf(\ {t++;
if(t<3) break } 下面描述正确的是:
A)其中循环控制表达式与0等价 B)其中循环控制表达式与'0'等价
C)其中循环控制表达式是不合法的 D)以上说法部不对
8 以下程序段
x= -1; do
{x=x*x;} while(!x);
A)是死循环 B)循环执行二次 C)循环执行一次 D)有语法错误
9 以下描述中正确的是:
A)由于do一while循环中循环体语句只能是一条可执行语句,所以循环体内不能使用复合语句
B)do一while循环由do开始,用while结束,在while(表达式) 后面不能写分号
C)在do一while循环体中,一定要有能使while后表达式值 变为零(\假\的操作
D)do一while循环中,根据情况可以省略while
10 若有如下语句
int x=3;
do { printf(\ 则上面程序段
A)输出的是 1 B)输出的是1和-2 C)输出的是3和0 D)是死循环
11 下面程序的功能是计算正整数2345的各位数字平方和,请选择填空。
#include
{int n,sum=0; n=2345
do{ sum=sum+(n)*(n)}; n=【2】; }while(n);
printf(\
【2】 A) n/1000 B)n/100 C) n/10 D) n
12 下面程序的功能是把316表示为两个加数的和,使两个加数分别能被13和11整除。请选择填空。
#include
{int i=0,j,k;
do{ i++;k=316-13*i;} while(【1】);j=k/11;
printf(\
【1】A)k/11 B) k C) k/11==0 D) k/11== 0 13 下面程序的运行结果是: #indude
{int y=10; do{y--;} while(--y);
printf(\
A)-1 B) 1 C)8 D) 0
14 下面有关for循环的正确描述是:
A) for循环只能用于循环次数已经确定的情况 B) for循环是先执行循环体语句,后判断表达式 C) 在for循环中,不能用break语句跳出循环体
D) for循环的循环体语句中, 可以包含多条语句,但必须用花括号括起来
15 对for(表达式1;;表达式3)可理解为:
A) for(表达式1; 0;表达式3) B) for(表达式1;1;表达式3)
C) for(表达式1;表达式1;表达式3) D) for(表达式1;表达式3;表达式3)
16 若i为整型变量,则以下循环执行次数是: for (i=2;i==0;) printf(\
A)无限次 B) 0次 C) 1 次 D) 2次
17 以下for循环的执行次数是:for (x=0,y=0; (y=123)&&(x<4); x++); A)是无限循环 B)循环次数不定 C)执行4次 D)执行3次
18 以下不是无限循环的语句为:
A) for (y=0,x=1;x>++y;x=i++) i=x ; B) for (;;x++=i); C) while (1) {x++;}
D) for(i=10;;i--)sum+=i; 19 下面程序段的运行结果是:
for (y=1;y<10;) y=((x=3*y,x+1),x-1); printf (\
A)x=27,y=27 B)x=12,y=13 C)x=15,y=14 D)x=y=27
20 下列程序段不是死循环的是 A) int i=100; whiLe (1) {i=i0+1;
if (i>100) break; } B) for(;;); C) int k=0;
do{++k;} while (k> =0) ; D) int s=36; while(s);--s
21 执行语句for(i=1;i++<4;);后变量i的值是 A)3 B )4 C)5 D)不定
22 下面程序的功能是计算:至50中是7的倍数的数值之和,请选择填空。 #include
{int i,sum= 0; for(i=1;i<=50;i++) if([1]) sum+=i;
printf(\
A) (int)(i/7)==i/7 B) (int)i/7==i/7 C)i%7= 0 D) i%7==0
23 下面程序的功能是计算 1至10之间的奇数之和及偶数之和。请选择填空; # include
{int a,b,c,i;
a=c=0;
for(i=0;i<=10;i+=2) { a+=i; [1]; c+=b;}
printf(\偶数之和=%d\\n\ printf(\奇数之和=%d\\n\
[1] A )b=i-- B) b=i+1 C) b=i++ D)b=i-1
24 下面程序的运行结果是:
#include
{ int x,i; for(i=1;i<=100;i++) {x=i;
if(++x%2==0) if(++x%3==0) if(++x%7==0)
printf(\
A)39 81 B)42 84 C)26 68 D) 28 70
25 以下正确的描述是。
A)continue语句的作用是结束整个循环的执行
B)只能在循环体内和switch语句体内使用break语句 C)在循环体内使用break语句或continue语句的作用相同 D)从多层循环嵌套中退出时, 只能使用goto语句
作业七 数组
一、选择题
1、在c语言中,引用数组元素时,其数组下标的数据类型允许是
A)整型常量 B)整型表达式
C)整型常量或整型表达式 D)任何类型的表达式
2、以下对一维整型数组a的正确说明是
A)int a(10); B)int n=10,a[n]; C)int n; D)#define SIZE 10;
scanf(\
int a[n];
3、若有说明:int a[10];则对a数组元素的正确引用是
A)a[10] B) a[3.5] C) a(5) D) a[10-10]
4、在C语言中,一维数组的定义方式为:类型说明符 数组名
A) [常量表达式] B) [整形表达式] C)[ 整型常量]或[整型表达式] D)[整型常量]