C语言复习提纲

更新时间:2023-11-05 08:38:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

C语言复习提纲

知识点:

1、C语言概要:函数、语句、名字与声明

变量与赋值、算术运算及其优先级与结合性 2、基本数据类型:定点与浮点的表示、数据类型的长度与取值范围、数据类型的转换、printf

的格式、scanf的格式 3、程序流程控制

4、函数:定义、声明、变量的作用域与生存期、参数的传递、宏定义及其展开 5、数组:数组的定义、引用、赋值 字符串的输入与输出 6、指针的基本概念 (一)填空

1、已定义x和y为int类型,则表达式: x=1,y=x+3/2的值是 。 2、有int a=3,b=4,c=5;则表达a||b+c&&b的值为 。 3、double在内存中占 字节。

4、设有数组定义:char array[]=”China”; 则数组所占的空间是 。 5、字符串是以 为结束标志的一维字符数组。 6、以下程序运行后的输出结果是:

#include void main(){

int fun(int x,int y); int x=2,y=3; fun(x,y); }

int fun(int x,int y){ x=x+y;y=x-y;x=x-y;

printf(\}

7、以下程序运行后的输出结果是:

#include main( )

{ int x=1, y=1, z=1; y = y+z; x = x+y;

printf (“%d \\n”,x< y? y : x); printf (“%d \\ n”, x

8、以下程序运行后的输出结果是:

#include int a =3, b=5; void main( )

{ void fun (void);

printf (“%d ,%d\\n”,a,b); ,

fun( );

printf (“%d ,%d\\n”,a,b); , }

void fun (void) { int c ,a=4; c=a; a=b ;b=c;

printf (“%d ,%d\\n”,a,b); }

9、以下程序运行后的输出结果是:

#include swap(int p1,int p2) {int p;

p=p1; p1=p2; p2=p; }

main() {int a,b; a=20;b=30;

if(a

printf(“a=%d,b=%d\\n”,a,b); , }

10、以下程序运行后的输出结果是:

#include void main( )

{int a[3][3]={{1,2,9},{3,4,8},{5,6,7}}, i, s=0; for (i=0;i<3;i++) s+=a[i][i];

printf (\}

11、程序打印如下形式的图形:

* * * * * * * * * *

#include main()

{ for(int i=1;i<=4;i++)

{ for(int j=1; ;j++) printf( ); printf( ); } }

12、从键盘上输入10个数,求其平均值。

#include main() {int i;

float f,sum;

for(i=1,sum=0.0;i<11;i ) { ; ; }

printf(“average=%f\\n”,sum/10); }

13、编写程序,计算s=1+(1+2)+(1+2+3)+?+(1+2+3+?+n)的值。

#include main(){

int n,s,sum=0; scanf(“%d” ,&n);

for(int i=1; __ __;i++) {

;

for(int j=1;j<=i;j++) ___ ___; sum+=s; }

printf(“sum=%d”,sum);

14、以下函数返回数组s中最大元素的下标,数组中元素的个数由t传入。

findmax(int s[],int t){ int m,n;

for(n=0,m=n;n

if(s[n]>s[m]) ; return ; }

15、以下程序求n 的阶乘,请填空: int fac(int n){ int f;

if (n==1) f = 1; else ; return f; }

void main( ) {

int n,f;

scanf(“%d” ,&n); ;

printf( “%d 的阶乘是%d:”,n,f); }

16、结构化程序设计的三种基本程序结构,分别是 、 、 。

17、若有定义double a[10];则a数组元素下标的上限是 ,下限是 。

18、printf(―%d\\n‖,(int)(2.5+3.0)/3);的输出结果是 。 19、在C语言中,一个二维数组可以看成若干个 数组。

20、若s是int型变量,且s=6,则表达式s%2+(s+1)%2的值为 。

21、若所有变量都已正确定义,则执行以下程序段后的输出结果是 。 s=7; while(--s); s-=2; printf(―s=%d\\n‖,s);

22、以下程序的输出结果是 。 #include func(int a ,int b) { return a+b;

}

void main( )

{int x=6,y=7,z=8,r; r=func(func(x,y),z--); printf(―%d\\n‖,r); }

23、运行下列程序段,其输出结果是 。 char a[3][4]={―abc‖, ―efg‖, ―hij‖}; for(i=1;i<2;i++) printf(―%c‖,a[i][1]);

24、表达式“0≤a≤10”在C语言中应表示为 。 25、以下程序的输出结果为 。 void main( ) { int i,j,a[]={1,2,3,4,5,6,7,8,9,10};

int sum=0;

for(i=0;i<10;i++) sum=sum+a[i]; printf(―M‖,sum); }

26、以下程序实现的功能是 ; void main( ) {int x;

scanf(―%d‖,&x); if(x%2==0)

printf(―x=%d Is Even.\\n‖,x); else

printf(―x=%d Is Odd.\\n‖,x); }

27、执行以下程序后的输出结果是 。 void main( ) {char a;

a=‘H‘-?A‘+‘0‘; printf(―%c\\n‖,a); }

28、以下程序运行后的输出结果是 。

void main( )

{int a=3,b=4,c=5,t=99; if (b

{t=a;a=c;c=t;} it(a

{t=b;b=a;a=t;}

printf(―%d,%d,%d\\n‖,a,b,c); }

29、已知字符A的ASCII代码值为65,以下程序运行时若从键盘输入:B33<回车>,则输出结果是 。 #include void main( ) {char a,b;

a=getchar(); scanf(―%d‖,&b); a=a-?A‘+‘0‘;b=b*2; printf(―%c %c\\n‖,a,b); }

30、执行以下程序后,输出结果是 。 void main( ) {int k=5,n=0;

while(k>0) {switch(k)

{default:break; case 1:n+=k; case 2:

case 3:n+=k; } k--; }

printf(―%d\\n‖,n); }

31、下面程序的功能是不借助任何变量把a,b中的值进行交换,请填空完善该程序。 void main( ) { int a,b; scanf(―%d,%d‖, ); a+= ; b= ; a-= ; printf(―a=%d,b=%d\\n‖,a,b); } 32、以下程序的功能是:从读入的整数数据中,统计大于0的整数个数和小于0的整数个数。用输入0来结束输入,程序中用变量i统计大于0的整数个数,用变量j统计小于0的整数个数。请填空。

} void main( ){ int s, i; for(i=1;i<=5;i++) s=fun(i); printf(‖%d\\n‖,s);

}

写出程序的运行结果_____________。 62、#include #define N 5

int fun(int *s, int a, int n){ int j; *s=a; j=n; while(a!=s[j])j--; return j; } main(){ int s[N+1]; int k; for(k=1;k<=N;k++) s[k]=k+1; printf(―%d\\n‖,fun(s,4,N)); }

写出程序的运行结果是______________。 63、#include main() { printf(―%d\\n‖,strlen(―IBM\\n012\\1\\\\‖)); } 写出程序的运行结果是_________________。 64、int k=0;

void fun(int m) {

m+=k; k+=m;

printf(‖m=%dk=%d‖,m,k++); }

main() {

int i=4; fun(i++);

printf((‖i=%dk=%d\\n‖,i,k); }

写出程序的运行结果:

第一行:_________________。 第二行:_________________。 65、#include

main( ) {

char a[ ]={?\\1‘,‘\\2‘,‘\\3‘,‘\\4‘,‘\\0‘};

printf(―%d\\n%d\\n‖,sizeof(a),strlen(a)); }

写出程序的运行结果:

第一行:_________________, 第二行:_________________。 66、int f(int a[],int n) { if(n >= 1) return f(a,n-1)+a[n-1]; else return 0; } main( ) { int aa[5]={1,2,3,4,5},s; s=f(aa,5); printf(―%d\\n‖,s); } 写出程序的运行结果是:_________________。 67、void main( )

{ int x=-9,y=5,z=8; if(x

if(y<0) z=0; else z+=1;

printf(\} 写出程序的运行结果是________。 68、main( ) {

int a=2,b=7,c=5; switch(a>0){

case 1: switch(b<0){ case 1:printf(―@\\n‖);break; case 2: printf(―! \\n‖);break; }

case 0: switch( c== 5){ case 0: printf(―*\\n‖);break; case1: printf(―#\\n‖);break; case 2: printf(―$\\n‖);break; }

default: printf(―&\\n‖); }

printf(―\\n‖); }

写出程序的运行结果:

第一行:_________________, 第二行:_________________。 69、void main( )

{ int a=15,b=21,m=0; switch(a%3)

{ case 0: m++;break; case 1: m++; switch(b%2) { default:m++;

case 0:m++;break; } }

printf(\ } 写出程序的运行结果是_________________。 ● 完善程序题(共12分)

70、以下程序按下面指定的数据给x数组的下三角置数,并按如下形式输出,请填空。 4 3 7 2 6 9 1 5 8 10 #include main() { int x[4][4],n=0,i,j; for(j=0;j<4;j++) for(i=3;i>=j; ________){ n++; x[i][j]= ________; } for(i=0;i<4;i++){ for(j=0;j<=i;j++) printf(―=‖,x[i][j]); printf(‖\\n‖); } }

71、下列程序中的函数f的功能是在数组x的n个数(假定n个数互不相同)中找出最大最小

数,将其中最小的数与第一个数对换,把最大的数与最后一个数对换。请填空。 #include void f(int x[],int n) { int p0,p1,i,j,t,m; i=j=x[0];p0=p1=0; for(m=0;mi){ i=x[m];

p0=________;} else { if(x[m]

}

t=x[p0]; x[p0]=x[n-1]; x[n-1]=t; t=x[p1];x[p1]= ________ ; ________=t; }

72、下列程序的功能是:输出100以内(不含100)能被3整除且个位数为6的所有整数,请填空。 main( ) { int i,j; for(i=0; __________;i++){ j=i*10+6; if(__________)continue; printf(“%d”,j); } } 73、下列isprime函数的功能是判断形参a是否为素数,是素数,函数返回1,否则返回0。请填空

int isprime(int a) { int i;

for(i=2;i<=a/2;i++) if(a%i == 0) ________ ________ }

74、下列程序中,fun( )函数的功能是计算x*x-2*x+6,主函数中将调用fun( )函数计算:

y1=(x+8)*(x+8)-2*(x+8)+6 y2=sin(x)*sin(x)-2*sin(x)+6 请填空 #include

double fun(double x){ return (x*x-2*x+6); } main( )

{ double x,y1,y2;

printf(“Enter x:”);scanf(“%lf”,&x); y1=fun(________); y2=fun(________);

printf(“y1=%lf,y2=%lf\\n”,y1,y2); } (二)选择

1、若y为int 型变量,则执行以下语句后,y的值是( )

y=8;y+=y-=y*y;

A. 64 B. -56 C. -112 D. -48 2.各种基本数据类型的存贮空间正确的长度排列为( )。

A. Char

A. 0 B. 4 C. - 4 D. 2

4.指出下面正确的输入语句( )。

A. scanf(“a=b=%d”,&a,&b) ; B. scanf(“%d,%d”,&a,&b) ; C. scanf(“%c”,c) ; D. scanf(“% f%d\\n”,&f) ; 5. 下列数据中,为字符串常量的是( )

A. ‘M’ B. ‘$you’ C. ”hello” D. basic

6、在C程序中,若未在函数定义时说明函数类型,则函数默认的类型为( )

A. void B. double C. int D. char

7、若变量c为char类型,能正确判断出c为小写字母的表达式是( )

A. ‘a’<=c<=’z’ B. (c>=’a’) || (c<=’z’) C. (‘a’<=c) and (‘z’>=c) D. (c>=’a’) && (c<=’z’) 8.能正确表示a和b同时为正或同时为负的逻辑表达式是( )。

A. a>=0||b>=0)&&(a<0 ||b<0) B. (a>=0 && b>=0)&&(a<0 && b<0) C. (a b>0) &&(a b<=0) D. a*b>0

9.设有定义:long x=-123456L; 则以下能够正确输出变量x值的语句是( A. printf(“x=%d\\n”,x) B. printf(“x=%ld\\n”,x) C. printf(“x=?l\\n”,x) C. printf(“x=%D\\n”,x); 10. 调用函数时,实参是一个数组名,则向函数传递的是( )

A. 数组的长度 B. 数组的首地址

C. 数组每一个元素的地址 D. 数组每个元素中的值 11. .若t为double类型,表达式t=1,t+5,t++的值是( )

A. 1 B. 6.0 C. 2.0 D. 1.0

12. 表示关系x≤y≤z的c语言表达式为( )

A. (X<=Y)&&(Y<=Z) B. (X<=Y)AND(Y<=Z) C. (X<=Y<=Z) D. (X<=Y)&(Y<=Z) 13. 下列程序段的输出结果是( )

void main() { int k;

for (k=1; k<5; k++) { if(k%2!=0) printf(\else

printf(“*”) ; } }

A. #*#* B. *#*# C. ## D. 以上都不对 14. 下面程序

main( ){

int x,y,z; x=2; y=x++; z=++x;

printf(“%d\\t%d\\t%d\\n”,x,y,z); }

运行后输出的数据是( )

A. 4 2 4 B. 4 2 2 C. 2 4 4 C. 4 4 4

)。

15. 若有以下定义和语句:

int u=010, v=0x10, w=10;

printf(〃%d,%d,%d\\n〃,u,v,w); 则输出结果是( )

A. 8,16,10 B. 10,10,10 C. 8,8,10 D. 8,10,10

16. .若i、j已定义为int型,则以下程序段中内循环体的总的执行次数是( )

for(i=5;i>0;i--) for(j=0;j<4;j++){?}

A. 20 B. 24 C. 25 D. 30 17. 下列程序

main( ){

int a=3,b=5,c; c=a && b;

printf(“C=%d\\n”,c); }

运行后输出的数据是( )

A. C=8 B. C=2 C. C=1 D. C=10 18. 设有如下定义: int x=10,y=3,z;

则语句printf(\的输出结果是( )。A. 1 B. 0 C. 4 D. 3 19. 下列程序执行后输出的结果是( )。

#include main( ){

int a=2,b=3,c; c=a; if (a>b) c=1;

else if (a= =b) c=0; else c=-1; printf (\}

A. -1 B. 0 C. 1 D. 2 20. 以下程序的输出结果是( )

main( ) {

int a=12,b=12;

printf(“%d %d\\n”,- -a,++b); }

A. 10 10 B. 12 12 C. 11 10 D. 11 13 21、下列标识符中,合法的标识符是( )

A、123abc B、-123abc C、_123abc 22、C语言源程序文件的扩展名是( )

A、.cpp B、.obj C、.exe 23、以下叙述中正确的是( )

A、C程序由主函数组成

D、do D、.c B、C程序由函数组成

C、C程序由函数和过程组成

D、C程序中的注释行由/*开头,有*/结束

24、若有定义:int a,b;使用语句scanf("%d,%d",&a,&b);给变量a,b分别赋值10和20,则正确的输入格式为( )

A、10,20 B、10 20 C、10<回车>20 D、a=10,b=10 25、已知字母a的ASCII十进制代码为97,则执行下列语句后的输出为( ) char a=‘a‘; a++; printf(―%d,%c\\n‖,a,a);

A、b,c B、a—运算不合法,故有语法错误

C、98,b D、格式描述和输出项不匹配,输出不定值 26、若有代数式

ae,则错误的C语言表达式是( ) bcA、a/b/c*e B、a*e/b*c C、a*e/b/c D、a*e/c/b 27、一个C程序的执行是从( )

A、 本程序的main函数开始,到main函数结束

B、本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C、本程序文件的第一个函数开始,到本程序main函数结束

D、本程序的main函数开始,到本程序文件的最后一个函数结束

28、设C语言中,一个int型数据在内存中占2个字节,则unsigned int 型数据的取值范围为( )

A、 0~255 B、 0~32767 C、 0~65535 D、 0~2147483647

29、阅读以下程序,当输入数据的形式为:25,13,10(注:表示回车),则正确的输出结果为( ) void main( ) { int x,y,z;

scanf(―%d,%d,%d‖,&x,&y,&z); printf(―x+y+z=%d\\n‖,x+y+z); }

A、x+y+z=48 B、 x+y+z=35 C、 x+z=35 D、 不确定值 30、以下选项中,不是C语句的是( )

A、{int i;i++;printf(―%d\\n‖,i);} B、; C、a=5,c=10 D、{;} 31、以下程序的输出结果是( )

A、10 10 B、9 9 C、9 10 D、10 9 main( ) { int x=10,y=10;

printf(―%d %d\\n‖,x--,y--); }

32、表达式:10!=9的值是( )

A、true B、非零值 C、0 D、1 33、以下程序的输出结果是( )

#include void main()

{ int num=0;

while(num<=2) { num++;

printf(―%d\\n‖,num); }

A、1 B、1 C、1 D、1 2 2 2 3 3 4 34、以下合法的数组的定义是( )

A、int a()={?A‘, ?B‘, ?C‘}; B、int a[5]={0,1,2,3,4,5}; C、char a={?A‘, ?B‘, ?C‘}; D、int a[ ]={0,1,2,3,4,5}; 35、设有定义语句int a[2][4]; ,则以下叙述不正确的是( )

A、a数组可以看成是由a[0],a[1],两个元素组成的一维数组 B、a[0]代表一个地址常量

C、元素a[0]是由4个整型元素组成的一维数组 D、可以用a[0]=5;的形式给数组元素赋值

36、下列不正确的字符串赋值或赋初值的方式是( ) A、char str[10]= ―string‖; B、char str[10]={?s‘, ?t‘, ?r‘, ?i‘, ?n‘, ?g‘}; C、char str[10]; str=―string‖; D、char str1[]=―string‖,str2[]=―1234567‖;strcpy(str2,str1);

37、设有定义语句int c[4][3];,则以下对数组元素的引用形式中正确的是( ) A、c[2+1][1-1] B、c[2,3] C、c[4][3] D、c[2+1,2]

38、设有如下的数组定义char array=―China‖;,数组array所占的空间为( A、4个字节 B、5个字节 C、6个字节 D、7个字节 39、以下叙述中正确的是( )

A、C语言程序的函数中必须有return语句

B、在C语言程序中,函数的类型必须进行显示说明 C、函数中,return语句必须放在函数体的最后

D、C语言程序中,return语句中表达式的类型应该与函数的类型赋值兼容 40、若有以下函数调用语句,在此函数调用语句中实参的个数是( ) A、3 B、4 C、5 D、6 fun(a+b,(y=10,y),fun(n,k,d));

41、一个C程序的执行是从( )。

A.本程序的main函数开始,到main函数结束

B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束 C.本程序的main函数开始,到本程序文件的最后一个函数结束 D.本程序文件的第一个函数开始,到本程序main函数结束

42、若用数组名作为函数调用的实参,传递给形参的是( )。.

A.全部元素的值 B.第一个元素的值 C.数组的首地址 D.数组元素的个数

43、C语言中while 与do --- while语句的主要区别是 ( )。

A.do ---while的循环体至少无条件执行一次

B.do ---while允许从外部转到循环体内 C.do ---while的循环体不能是复合语句

D.while的循环控制条件比do---while的循环控制条件严格

44、C语言允许函数值缺省定义,此时该函数值隐含的类型是( )。

A.float B.int C.long D.double 45、下列哪种说法,是对―int *p;‖正确解释 ( )。

A.定义p是整形变量 B.定义p指向整形变量的指针变量 C.定义p为数组名 D.定义p的内容为整形地址 46、C语言对嵌套if语句的规定是:else总是与( )配对。

A.其之前最近的if B.第一个if

C.缩进位置相同的if D.其之前最近的且尚未配对的if 47、已知int j,i=1;执行语句“j=i++;”后,变量i的值是( )。

A.1 B.2 C.–1 D.-2 48、以下程序的输出结果是( )。

void main( )

{ int a=7,b=5;

printf(“%d\\n”,b=b/a); }

A.不确定值 B.5 C. 1 D.0

49、若有下面的变量定义,以下语句中合法的是( )。

int i,a[10],*p;

A.p=a+2; B.p=a[5]; C.p=a[2]+2; D.p=&(i+2);

A.数组x和数组Y等价 B.数组x和数组y的长度相同 C.数组x的长度大于数组y的长度 D.数组x的长度小于数组y的长度 50、以下程序的输出结果是( )。

# include “stdio.h” void main() { int x;

x=try(5);

printf (”%d\n”,x); }

int try(int n) { if (n>0)

return (n*try(n-2)); else

return (1); }

A.15 B.120 C.1 D.前面三个答案均是错误的 51、在C语言提供的合法的关键字是( )。

A. swicth B. cher C. Case D. default 52、合法的数组定义是( )。.

A. int a[ ]=\ B. char a[ ]={0,1,2,3,4,5}; C. vhst s=\ D. int a[5]={0,1,2,3,4,5};

53、C语言程序的三种基本结构是( )。

A. 循环结构、转移结构、顺序结构 B. 递归结构、循环结构、转移结构

C. 嵌套结构、递归结构、循环结构 D. 顺序结构、选择结构、循环结构 54、下列选项中,不能定义的用户标识符是( )。

A. Main B. _0 C. sizeof D. _int 55、下述对C语言字符数组的描述中错误的是( )。

A. 字符数组可以存放字符串 B. 字符数组的字符串可以整体输入或输出

C. 可以在赋值语句中通过赋值运算符“=”对字符数组整体赋值 D. 不可以用关系运算符对字符数组中的字符串进行比较

56、以下正确的函数定义形式(即定义函数时函数首部的形式)是( )。

A. double fun(int x, int y); B. double fun(int x; int y) ; C. double fun(int x, y); D. double fun(int x, int y);

57、有输入语句:scanf(\%d,b= %d,c=%d\为使变量a的值为1,b为3,c为2,从键盘输入数据的正确形式应当是( )

A. 132 (回车) B. 1,3,2 (回车) C. a=1 b=3 c=2 (回车) D. a=1,b =3,c =2 (回车)

58、若有以下定义和语句

char c1='b',c2='e';

printf(\

则输出结果是:

A. 2,M B. 3,E C. 2,E D.输出项与对应的格式控制不一致,输出结果不确定

59、若整型变量a、b、c、d中的值依次为1、4、3、2。则条件表达式a

A. 1; B. 2; C. 3; D. 4; 60、main()

{

char *s=\

int k=0, a=0, b=0; do{

k++;

if(k%2==0){

a=a+s[k]-'0';

continue;

}

b=b+s[k]-'0'; a=a+s[k]-'0'; }while (s[k+1]);

printf(\ }

程序运行后的输出结果是( )。

A. k=3 a=2 b=3 B. k=3 a=3 b=2 C. k=2 a=3 b=2 D. k=2 a=2 b=3 61、有以下程序

main() {

}

程序运行后输出结果是( )。

A. 3 B. 2 C. 1 D. 0

62、若i,j已定义为int类型,则以下程序段中内循环体的总的执行次数是( ) for (i=5; i ; i - -)

for(j=0;j<4;j++){...}

A. 20 B. 25 C. 24 D. 30

63、已有定义:char a[ ]=―xyz‖, char b[ ]={?x‘,‘y‘,‘z‘};,下列叙述中正确的是( )。

A. 数组a和b的长度相同 B. a数组长度小于b数组长度 C. a数组长度大于b数组长度 D. 上述说法都不对

64、若有语句:char* line[5]; 下列叙述中正确的是( )。

A. 定义line是一个数组,每个数组元素是基类型为char的指针变量。

B. 定义line是一个指针变量,该变量可以指向一个长度为5的字符串数组。 C. 定义line是一个指针数组,语句中*为间址运算符。 D. 定义line为一个指向字符型函数的指针。 65、设fun()函数的定义形式为( )。 void fun(char ch, float x){……}

A. fun(―abc‖,3.0); B. t=fun(?D‘,16.5); C. fun(?65‘,2.8) ; D. fun(32,32);

66、若有定义:float x=1.5;int a=1,b=3,c=2;( )。

A. switch(x){ case 1.0: printf(―*\\n‖); case 2.0: printf(―**\\n‖);

} B. switch((int)x){ case 1: printf(―*\\n‖); case 2: printf(―**\\n‖); } C. switch(a+b){ case 1: printf(―*\\n‖); case 2+1: printf(―**\\n‖); } D. switch(a+b){ case 1: printf(―*\\n‖); case c: printf(―**\\n‖); }

67、在下列给出的表达式中,与while(E)中的(E)不等价的表达式是( )。

A.(!E = = 0 ) B. (E>0 || E<0) C. (E = = 0) D.(E!=0)

int x=2, y=-1, z=2; if (x

if(y<0) z= 0; else z+ =1; printf(\

68、有以下程序段 int n,t=1,s=0; scanf(―%d‖,&n); do{ s=s+t ;

t=t+2; }while ( t!=n ) ; 为使此程序不陷入死循环,从键盘输入的数据应该是( )。

A. 任意正奇数 B. 任意负偶数 C. 任意正偶数 D. 任意负奇数 69、有下列程序: main() { int a[10]={1,2,3,4,5,6,7,8,9,10},*p=&a[3],*q=p+2; printf(―%d\\n‖,*p+*q); }

程序运行后的输出结果是( )。 A. 16 B. 10 C. 8 70、有下列程序 main() { int k=5, n=0; while(k>0){ switch(k){ default:break; case 1: n+=k; case 2: case 3: n+=k; } k--; } printf(―%d\\n‖,n); } 程序运行后的输出结果是

A. 0 B. 4 C. 6 D. 7 71、#include \

void main() { int x,y,z; x=y=1;

z=x++,y++,++y;

printf(\

程序运行后的输出结果是( )。

A.2,3,3 B.2,3,2 C.2,3,1 D.2,2,1 72、有以下程序 void main( )

D. 6 { int a=0,b=0;

a=10; //给a赋值 b=20; //给b赋值

printf(\输出计算结果 */ }

程序运行后输出结果是( )。 A.a+b=0 B.a+b=30 C.30 D.出错

73、表示图中坐标轴上阴影部分的正确表达式是( )

-1 0 1 3 x A.-1<=x && 1<=x||x<=3 B. (x<=-1)&&(1<=x||x<=3) C.x<=-1||x>=1&&x<=3 D.!(-13) 74、判断char型变量c1是否为小写字母的正确表达式是( )。

A.‘a’<=c1<=‘z’ B.(c1>=a)&&(c1<=z) C.98<=c1&&123>=c1 D.c1>=‘a’&&c1<=‘z’ 75、执行以下语句后b的值为( )。 int a = 5 , b = 6 , w = 1 , x =2 , y = 3 , z = 4 ; ( a = w > x ) && ( b = y > z ) ;

A.6 B.0 C.1 D.4

76、以下对一维整型数组a的正确说明是( )。

A.int a (10) ; B.int n = 10 ,a[n] ; C.int n ; D.#define SIZE 10 scanf( ―%d‖ ,&n); int a [SIZE] ; int a [n] ;

77、以下不正确的语句是( )。

A.if (x > y ); B.if ( x = y) && ( x ! = 0) x + = y ; C.if (x ! = y) scanf (― %d‖,&x); else scanf(―%d‖,&y ); D.if ( x< y) { x + +; y + +;}

78、假定p所指对象的值为25,p+1所指对象的值为46,则*(++p)的值为 ( )。

A、 26 B、 25 C、 46 D、 47 79、以下程序段( )。

x = -1; do

{ x = x * x ; } while ( !x ) ;

A.是死循环 B.循环执行两次 C.循环执行一次 D.有语法错误 80、给出以下定义:

char x[]=―abcdefg‖;

char y[]={'a','b','c','d','e','f','g'};则正确的叙述为( )。

本文来源:https://www.bwwdw.com/article/m082.html

Top