高职C程序设计复习 免费下载.docx

上传人:b****5 文档编号:7303452 上传时间:2023-01-22 格式:DOCX 页数:14 大小:28.88KB
下载 相关 举报
高职C程序设计复习 免费下载.docx_第1页
第1页 / 共14页
高职C程序设计复习 免费下载.docx_第2页
第2页 / 共14页
高职C程序设计复习 免费下载.docx_第3页
第3页 / 共14页
高职C程序设计复习 免费下载.docx_第4页
第4页 / 共14页
高职C程序设计复习 免费下载.docx_第5页
第5页 / 共14页
点击查看更多>>
下载资源
资源描述

高职C程序设计复习 免费下载.docx

《高职C程序设计复习 免费下载.docx》由会员分享,可在线阅读,更多相关《高职C程序设计复习 免费下载.docx(14页珍藏版)》请在冰豆网上搜索。

高职C程序设计复习 免费下载.docx

高职C程序设计复习免费下载

高职C程序设计复习

(2009—2010学年第二学期)

选择题

1、一个C语言的源程序中,。

A)必须有一个main函数

B)可以有多个main函数

C)必须有main函数和其它函数

D)可以没有主函数但需有其它函数

2、C程序规定,在一个源程序中,main()函数的位置。

A)必须在最开始B)必须在最后

C)可以任意D)必须在系统调用的库函数的后面

3、能将高级语言编写的源程序转换为目标程序的软件是______。

A)汇编程序B)编辑程序C)解释程序D)编译程序

4、用C语言编写的源程序经过编译后,若没有产生编译错误,则系统将______。

A)生成可执行文件B)生成目标文件

C)输出运行结果D)自动保存源文件

5、C语言中的基本数据类型包括。

A)整型、实型、逻辑型B)整型、实型、字符型

C)整型、逻辑型、字符型D)整型、实型、逻辑型、字符型

6、C语言提供的合法的数据类型关键字是________。

A)DoubleB)floatC)integerD)Char

7、在C语言中,正确的int类型的常数是。

A)-32768  B)028  C)10110B  D)0xffa

8、下面四组数中,能够正确表示八进制和十六进制的整型常量是。

A)o128B)0128C)ox128D)0x128

-117Ox117-0117X117

9、下面数中不是实数的有。

-.45

4E2.5

E-3

-98.76

4.5E

-32

12E3

32.

A)

B)

C)

D)

10、以下哪组为合法的字符常量。

A)'\2’B)'5’C)’’D)"\456"

'\0xff’'\65’"&"'\027’

'10’'\”’'\128’'\xaa’

11、回车字符是。

A)‘\n’B)‘\r’C)‘\f’D)‘\b’

12、以下说法正确的是。

A)设a是实型变量,C允许赋制值a=10,因此实型变量可以存储整型值.

B)执行x=y后,x的值将是y的值,而y的值会变为0

C)只要在允许的范围内,整型和实型数都能精确无误地表示.

D)既然shortx,y;已经定义了变量,所以x=y+1.2;是正确的语句.

13、在下面关于多种类型数据的混合运算的叙述中,正确的一条是。

A)一个int型与一个double型数据运算,先将double型转成int型再进行运算

B)一个int型与一个long型数据运算,先将int型转成long型再进行运算

C)实型数据在运算时一律先转成单精度型

D)一个int型与一个char型数据运算,先将int型转成char型再进行运算

14、设inti=3,j=4;经过表达式j=i+++j+i运算后,则j的值是。

A)10B)4C)3D)11

15、对C程序在作逻辑运算时判断操作数真、假的表述,下列哪一个是正确的。

A)0为假,非0为真B)只有1为真

C)-1为假,1为真D)0为真,非0为假

16、表示关系x<=y<=z的c语言表达式为。

 A)(x<=y)&&(y<=z)B)(x<=y)AND(y<=z) 

C)(x<=y<=z)D)(x<=y)&(y<=z)

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

 A)'a'<=c<='z'    B)(c>='a')||(c<='z')

 C)('a'<=c)and('z'>=c)D)(c>='a')&&(c<='z')

18、已有定义:

intx=3,y=4,z=5;则表达式!

(x+y)+z-1&&y+z/2的值是_。

A)6  B)0  C)2  D)1

19、执行语句”k=x++&&y++||z++;”(各变量当前值均为1)后,变量k,x,y,z值依次为。

A)1、2、2、1B)1、2、2、2

C)0、2、2、1D)0、2、2、2

20、设t是double类型变量,表达式t=1,t+5,t++的值是。

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

21、设x,y,z,k;则执行表达式x=(y=4,z=16,k=32)后,x的值是。

A)4B)16C)32D)52

22、设inta=1,b=2,c=3;表达式c+=a>b?

++a:

++b的值是。

A)2B)3C)5D)6

23、下列叙述中,错误的是。

A)printf函数可以向终端输出若干个简单类型的数据

B)putchar函数可以向终端输出字符,而且只能是一个字符

C)getchar函数只能用来输入字符数据,但字符的个数不限

D)scanf函数可以用来输入简单类型的多个数据

24、x、y、z被定义为int型变量,若从键盘给x、y、z输入数据,正确的输入语句是__。

A)INPUTx、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);

25、以下程序段中不能根据x的值正确计算出y的值的是______。

A)if(x>0)y=1;elseif(x==0)y=0;elsey=-1;

B)y=0;if(x>0)y=1;elseif(x<0)y=-1;

C)y=0;if(x>=0)if(x>0)y=1;elsey=-1;

D)if(x>=0)if(x>0)y=1;elsey=0;elsey=-1;

26、下列条件语句中,功能与其他语句不同的是。

A)if(a)printf("%d\n",x);elseprintf("%d\n",y);

B)if(a==0)printf("%d\n",y);elseprintf("%d\n",x);

C)if(a!

=0)printf("%d\n",x);elseprintf("%d\n",y);

D)if(a==0)printf("%d\n",x);elseprintf("%d\n",y);

27、设floatx;inta,b;且已赋值.正确的switch语句是。

A)switch(x){case1.0:

printf(“*”);

case2.0:

printf(“**”);}

B)swicth((int)x){case1:

printf(“*”);

case2:

printf(“**”);}

C)switch(a+b){case1:

printf(“*”);

case2+1:

printf(“**”);}

D)switch(a-b);{case1:

printf(“*”);

case2:

printf(“**”);}

28、若a、b、c1、c2、x、y、均是整型变量,正确的switch语句是。

A)swich(a+b);  B)switch(a*a+b*b)

 {case1:

y=a+b;break;  {case3:

case0:

y=a-b;break;case1:

y=a+b;break;

case3:

y=b-a,break;case0:

y=a-b;break;

 }}

C)switchaD)switch(a-b)

 {casec1:

y=a-b;break{default:

y=a*b;break

  casec2:

x=a*d;breakcase3:

case4:

x=a+b;break

  default:

x=a+b;case1:

y=a-b;break;

 }}

29、正确的函数定义是。

A)doublesub(intx,y){doublez;z=x-y;returnz;}

B)doublesub(intx,inty);{doublez;z=x-y;return(z);}

C)doublesub(intx,inty){z=x-y;returnz;}

D)doublesub(intx,inty){doublez=x-y;returnz;}

30、调用函数fun(a+b,(y=x++,x+1),fun(a,b,x));函数的参数个数是。

A)3B)4C)5D)6

31、下面正确的说法是。

A)return语句必须放在函数的最后

B)main()函数必须放在其他函数之前

C)任何两个函数都可以互相调用

D)return后面的表达式类型应该与函数的类型赋值相容

32、以下叙述中不正确的是。

A)在函数中,通过return语句传回函数值

B)在函数中,可以有多条return语句

C)在C中,main后的一对圆括号中也可以带有形参

D)在C中,调用函数,必需在一条独立的语句中完成

33、下列数组声明语句中,正确的是。

A)inta[]={1,2,,4,5};B)chara[5]={A,B,C,D,E};

C)inta[5]={1,2};D)chara[5]="Hello";

34、以下能正确定义数组并正确赋初值的语句是。

A)intN=5,b[N][N];B)inta[1][2]={{1},{3}};

C)intc[2][]={{1,2},{3,4}};D)intd[3][2]={{1,2},{34}};

35、inta[3][3]={{1,2,3},{4,5,6},{7,8,9}},i;

for(i=0;i<3;i++)printf(“%d”,a[i][2-i]);将输出。

A)159B)951C)357D)753

36、inta[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;

for(i=0;i<3;i++)

for(j=0;j<=i;j++)s+=a[i][j];printf(“%d\n”,s);将输出。

A)18B)19C)20D)21

37、变量的指针,其含义是指该变量的_________。

A)值B)地址C)名D)一个标志

38、以下定义语句中正确的是。

A)chara='A'b='B';  B)floata=b=10.0;

C)inta=10,*b=&a;  D)float*a,b=&a;

39、已知intx,*y;y=&x;*y=100;x+=23;printf(“%d,%d\n”,x,*y);将输出_______。

A)123,123B)100,123C)123,100D)三个结果都不对

40、已知intx,y,*p,*q;p=&x;x=100;q=p;printf(“%d”,*p+*q);

p=&y;*p=50;printf(“%d”,y+*q);将输出_______。

A)150150B)200200C)200150D)150200

41、结构体定义不正确的是。

A)structa{inta;floatb;};

B)structa{intx;structay;};

C)structa{intx;structa*y;};

D)structa{intx;inty[10];}

42、设有以下说明语句

structex{intx;floaty;charz;}example;

则下面的叙述中不正确的是。

A)struct结构体类型的关键字B)example是结构体类型名

C)x,y,z都是结构体成员名D)structex是结构体类型

43、以下选项中,能定义s为合法的结构体变量的是________。

A)typedefstructabc{doublea;charb[10];}s;

B)struct{doublea;charb[10];}s;

C)structABC{doublea;charb[10];}ABCs;

D)typedefABC{doublea;charb[10];}

44、C语言中的文件类型只有。

A)索引文件和文本文件两种B)ASCII文件和二进制文件两种

C)文本文件一种D)二进制文件一种

45、以下叙述中不正确的是。

A)C语言中的文本文件以ASCII码形式存储数据

B)C语言中对二进制文件的访问速度比文本文件快

C)C语言中,随机读写方式不适用于文本文件

D)C语言中,顺序读写方式不适用于二进制文件

46、以“只读”方式打开文本文件c:

\xy.txt,下列语句中哪一个是正确的。

A)fp=fopen(“c:

\\xy.txt”,”a”);B)fp=fopen(“c:

\\xy.txt”,”r”);

C)fp=fopen(“c:

\\xy.txt”,”wb”);D)fp=fopen(“c:

\xy.txt”,”r”);

47、以"追加"方式打开文本文件a:

\aa.dat,下列语句中哪一句是正确的。

A)fp=fopen("a:

\\aa.dat","ab");B)fp=fopen("a:

\\aa.dat","a");

C)fp=fopen("a:

\\aa.dat","r+");D)fp=fopen("a:

\\aa.dat","w");

二、填空题

复习范围:

第一章至第四章的课件(*.ppt)

三、给程序运行结果题

1、#include

voidmain()

{inta,b;

printf("a,b=");scanf("%d%d",&a,&b);

if(a>b)

printf("%d\n",a);

else

printf("%d\n",b);

}

2

#include

main()

{intn1,n2,n3,max;

printf("Pleaseinputthreenumbers:

");

scanf("%d%d%d",&n1,&n2,&n3);

if(n1>n2)max=n1;

elsemax=n2;

if(n3>max)max=n3;

printf("3numbersare:

%d,%d,%d\n",n1,n2,n3);

printf("max=%d\n",max);

}

3、

#include

main()

{charch;

for(ch='a';ch<='f';++ch)printf("%c",ch);

printf("\t\t");

for(ch='f';ch>='a';--ch)printf("%c",ch);

printf("\n");

}

4、

#include

main()

{intn;

printf("n=");scanf("%d",&n);

while(n)

{printf("%d",n%10);

n/=10;

}

printf("\n");

}

5、

#include

voidmain()

{inta[2][3]={{1,2,3},{4,5,6}};

inti,j,b[3][2];

printf("Printarraya:

\n");

for(i=0;i<2;i++)

{for(j=0;j<3;j++)

printf("%3d",a[i][j]);

printf("\n");

}

6、

#include

voidmain()

{inti,j;

chart[20],name[5][20]={"成都","北京","上海","广州","深圳"};

for(i=0;i<5;i++)printf("\n%s\t",name[i]);

for(i=0;i<4;i++)

for(j=0;j<4-i;j++)

if(strcmp(name[j],name[j+1])>0)

{strcpy(t,name[j]);

strcpy(name[j],name[j+1]);

strcpy(name[j+1],t);

}

printf("Aftersort:

\n");

for(i=0;i<5;i++)printf("\n%s\t",name[i]);

}

7、

#include

voidmain()

{voids(intn);

intn=100;

s(n);printf("n_s=%d\n",n);

}

voids(intn)

{inti;

printf("n_x=%d\n",n);

for(i=n-1;i>=1;i--)n=n+i;

printf("n_x=%d\n",n);

}

8、

#include

intpower(intn)

{intf;

if(n>1)f=power(n-1)*n;

elsef=1;

return(f);

}

voidmain()

{intn,y;

printf("n=");scanf("%d",&n);

y=power(n);

printf("%d!

=%d\n",n,y);

}

9、

#include

voidmain()

{inti=12,*p1;

floatf=3.14,*p2;

charch='p',*p3;

p1=&i;

p2=&f;

p3=&ch;

printf("i=%d,*p1=%d\n",i,*p1);

printf("f=%4.2f,*p2=%4.2f\n",f,*p2);

printf("ch=%c,*p3=%c\n",ch,*p3);

}

10、

#include

voidmain()

{inta[3][4]={{1,2,3,4},{5,6,7,8},{9,10,11,12}};

int*p,row,col;

p=a[0];

printf("row,col=");

scanf("%d,%d",&row,&col);

printf("a[%d][%d]=%d\n",row,col,*(p+(row*4+col)));

}

四、程序填空题(此处给全部程序,但考试时程序中的空缺需要填写完整)

1、打印九九乘法表。

#include

main()

{inti,j;

for(i=1;i<=9;i++)

{for(j=1;j<=i;j++)

printf("%d*%d=%2d",i,j,i*j);

printf("\n");

}

}

2、求n阶乘n!

+1*2*3*……*(n-1)*n

#include

main()

{intfac=1,n,i;

printf("n=");scanf("%d",&n);

for(i=1;i<=n;i++)

fac*=i;

printf("%d!

=%d\n",n,fac);

}

3、计算s=1k+2k+3k+……+Nk

#include

#defineK4

#defineN5

longf1(intn,intk)/*计算Nk次方*/

{longpower=n;

inti;

for(i=1;i

returnpower;

}

longf2(intn,intk)/*计算1到n的k次方之累加和*/

{longsum=0;

inti;

for(i=1;i<=n;i++)sum+=f1(i,k);

returnsum;

}

voidmain(void)

{

printf("Sum=%d\n",f2(N,K));

}

4、有若干计算机图书,请按字母顺序,从小到大输出书名。

#include

voidsort(char*name[],intcount)

{char*p;

inti,j,min;

for(i=0;i

{min=i;

for(j=i+1;j

if(strcmp(name[min],name[j])>0)min=j;

if(min!

=i)

p=name[i],name[i]=name[min],name[min]=p;

}

}

voidmain()

{char*name[5]={"BASIC","FORTRAN","PASCAL","C","FoxBASE"};

inti;

sort(name,5);

for(i=0;i<5;i++)printf("%s\n",name[i]);

}

 

5、使用指向结构变量的指针来访问结构变量的各个成员

#include

structdate/*日期结构类型*/

{intyear;

intmonth;

intday;

};

structstd_info/*学生信息结构类型*/

{charno[7];

charname[9];

charsex[3];

structdatebirthday;/*日期结构类型使用*/

}student={"000102","张三","男",{1980,9,20}};

voidmain()

{structstd_info*p_std=&student;

printf("No:

%s\n",p_std->no);

printf("Name:

%s\n",p_std->name);

printf("Sex:

%s\n",p_std->sex);

printf("Birthday:

%d-%d-%d\n",

p_std->birthday.year,

p_std->birthday.month,

p_std->birthday.day);

}

6、制作ASC

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 理学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1