注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

幽居阁&*#$

健康、快乐、幸福就好~~

 
 
 

日志

 
 
关于我

2006年,获得全国书画业余考核五级, 2007年,获得第三届艺教之星全国师生书画大赛大学组金奖, 2008年,获得中国当代优秀青少年书画家称号, 2008年,第三届英才全国书画大赛,获得银奖。 2008年,通过普通话考核, 2008年,通过一级B考核, 2008年,获得第四届艺教之星全国师生书画大赛大学组铜奖 在博客上如需要帮助可以留言,在48小时之内我会解答.(如果是圈子中的问题,本人也无能为力哦。)

网易考拉推荐

C语言程序设计形成性作业一   

2009-12-23 10:21:17|  分类: 默认分类 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |

 


 

一、             选择题

1.       在每个C语言程序中都必须包含有这样一个函数,该函数的函数名为(A)。

A.main     B.MAIN     C.name       D.funtion

2.C语言原程序文件的缺省扩展名为(A)。

A.cpp     B.exe     C.obj       D.C

3.由C语言目标文件连接而成的可执行的缺省扩展名为(B)。

A.cpp     B.exe     C.obj       D.C

4.程序运行中需要从键盘输入多于一个数据时,各数据之间应使用(D)符号作为分隔符。

A.空格或逗号     B.逗号或回车     C.回车或分号       D.空格或回车

5.每个C语言程序的编译错误分为(B)类。

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

6.设x 和y 均为逻辑值,则x && y为真的条件是(A)。

A.它们均为真     B.其中一个为真     C.它们均为假       D.其中一个为假

7.设有语句“int a=12;a+=a*a;”,则执行结束后,a 的值为(C)。

A.12     B.144     C.156       D.288

8.x>0 && x<=10的相反表达式为(A)。

A.x<=0 || X>10     B.x<=0 && x>10     C.x<=0 || x<=10       D.x>0 && x>10

9.字符串“a+b=12\n”的长度为(B)。

A.6     B.7     C.8       D.9

10.在下列符号常量定义中。错误的定义语句格式为(C)。

A.const M1=10;    B.const int M2=20;     C.const M3 10       D.const char mark=’3’;

11.带有随机函数的表达式rand()%20的值在(C)区间内,

A.1~19     B.1~20     C.0~19       D.0~20

12.当处理特定问题时的循环次数已知时,通常采用(A)循环来解决。

 A.for     B.while     C.do-while       D.switch

13.在switch语句的每个case块中,假定都是以break语句结束的,则此switch语句容易被改写为(B)语句。

A.for     B.if     C.do       D.while

14.for语句能够被改写为(D)语句。

A.复合     B.if     C.switch       D.while

15.下面循环语句执行结束后输出的i值为(B)。

for(int i=0;i<n;i++)if(i>n/2){cout<<i<<endl;break;}

A.n/2     B.n/2+1     C.n/2-1       D.n-1

16.在下面循环w语句中内层循环体S语句的执行次数为(D)。

for(int i=0;i<n;i++)

       for(int j=i;j<n;j++)S;

A.n2     B.(n+1)/2     C.n(n-1)/2       D.n(n+1)/2

17.在下面的do循环语句中,其循环体被执行的次数为(A )。

int i=0;do i++;while(i*i<10);

A.4     B.3     C.5       D.2

 

 

二、填空题

1.C语言中的每条简单语句以___;_______作为结束符。

2.C语言中的每条复合语句以___}_______作为结束符。

3.在C语言程序的每个程序行后面或单独一行的开始使用注释的标记符为___//___。

4.单行或多行注释的结束标记符为__*/_____。

5.在一个C程序文件中,若要包含另外一个头文件或程序文件,则应使用以__#include___标识符开始的预处理命令。

6.在#include命令中所包含的头文件,可以是系统定义的头文件,也可以是__用户___定义的头文件。

7.一个函数定义由__函数头______和函数体两部分组成。

8.用于输出表达式的标准输出函数是_printf( )_________。

9.当不需要函数返回任何值时,则应使用__void_______标识符定义函数类型。

10.执行“printf(“%d-%d=%d”,43,18,43-18); ”语句后得到的输出结果为__43-18=25_______。

11.每个C程序文件在编译时可能出现有警告性错误,其对应的标识符为__warning______。

12.每个C程序文件在编译时可能出现有致命性错误,其对应的标识符为__error______。

13.十进制数25表示成符合C语言规则的十六进制数为___0x19___。

14.在C语言中,转义字符序列___\n___表示一个换行符。

15.执行“printf(“%c”,’F’-2);”语句后得到的输出结果为__D___。

16.已知’A’~’Z’的ASCII码为65-90,当执行“int x=’C’+5;”语句所x的值为___72___.

17.假定一个枚举类型的定义为“enum RB{ab,ac=3,ad,ae}x=ad;”,则x的值为___4___.

18.char类型的大小为__1__个字节。

19.int类型的大小为__4__个字节。

20.float类型的大小为__4__个字节。

21.十进制数28类型为___int___。

22.十进制数3.26类型为___double___。

23.若需要定义一个符号常量,并且使C语言能够进行类型检查,则应在定义语句的开始使用保留字____const___。

24.使用const语句定义一个符号常量时,则必须对它同时进行__定义类型和赋初值__。

25.执行“int x=45,y=13;printf(“%d”,x%y);”语句序列后得到的输出结果为___6__。

26.假定x=5,则表达式2+x++的值为__7__。

27.表达式(float)25/4的值为___6.25___。

28.表达式(int)14.6%5的值为___4___。

29.表达式x=x+1表示成增量表达式为__x++___。

30.增量表达式++y表示成赋值表达式为___y+=1__。

31.关系表达式(x!=0)的等价表达式为____x___。

32.假定不允许使用逻辑非操作符,则关系表达式x+y>5的相反表达式为___x+y<=5__。

33.假定不允许使用逻辑非操作符,则逻辑表达式a>b || b==5的相反表达式为___a<=b && (b>5 || b<5)____。

34.若x=5,y=10,则x>y逻辑值为___false___。

35.若x=5,y=10,则x<=y逻辑值为___true___。

36.假定x=5,则执行“a=(x?10:20);”语句后a的值为__10__。

37.执行“typedef int DataType;”语句后,在使用int定义整型变量的地方都可以使用___DataType___来定义整型变量。

38.在switch语句中,每个语句标号所含保留字case后面的表达式必须是__整型__。

39.作为语句标号使用的C保留字case和default只能用于__switch__语句的定义体中。

40.在switch语句时,在进行作为条件的表达式求值后,将从某个匹配的标号位置起向下执行,当碰到下一个标号位置时(停止/不停止)___不停止__执行。

41.若do循环的“尾”为“while(++i<10)”,并且i的初值为0,同时在循环体不会修改i的值,由循环体将被重复执行__10___次后正常结束。

42.当在程序执行到___break___语句时,将结束本层循环语句或switch语句的执行。

43.在程序中执行到__return__语句时,将结束所在函数的执行过程,返回到调用该函数的位置。

44.在程序执行完__主(main)__函数调用后,将结束整个程序的执行过程,返回到操作系统或C语句集成开发环境界面窗口。

 

 

三、写出下列每个程序运行后的输出结果

1. #include<stdio.h>

void main()

{

       int x=5;switch(2*x-3){

              case 4:printf("%d ",x);

              case 7:printf("%d ",2*x+1);

              case 10:printf("%d ",3*x-1);break;

              default:printf("%s ","default\n");

       }

       printf("%s\n","switch end.");

      

}

输出结果为:

11 14 switch end.

Press any key to continue

 

2. #include<stdio.h>

void main()

{

       int i,s=0;

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

              s+=i*i;

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

}

输出结果为:

s=91.

Press any key to continue

 

3. #include<stdio.h>

void main()

{

       int i,s1=0,s2=0;

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

              if(i%2)s1+=i;

              else s2+=i;

              printf("%d %d\n",s1,s2);

}

输出结果为:

25 20.

Press any key to continue

 

4. #include<stdio.h>

void main()

{

       int n=10,y=1;

       while(n--){y++;y++;}

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

}

输出结果为:

y=21.

Press any key to continue

 

5. #include<stdio.h>

void main()

{

       int f,f1,f2,i;

       f1=f2=1;

       printf("%d %d ",f1,f2);

       for(i=3;i<=10;i++){

              f=f1+f2;

              printf("%d ",f);

              if(i%5==0)printf("\n");

              f1=f2;

              f2=f;

       }

       printf("\n");

}

输出结果为:

1 1 2 3 5

8 13 21 34 55

 

Press any key to continue

 

6. #include<stdio.h>

#include<math.h>

void main()

{

       int i,n;

       for(n=2;n<=20;n++){

              int temp=(int)sqrt(n);//sqrt(n)求出n的平方根并取整

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

                     if(n%i==0)break;

                     if(i>temp)printf("%d ",n);

       }

       printf("\n");

}

输出结果为:

2 3 5 7 11 13 17 19

Press any key to continue

 

7. #include<stdio.h>

#include<math.h>

const int M=20;

void main()

{

      

       int i,c2,c3,c5;

       c2=c3=c5=0;

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

              if(i%2==0)c2++;

              if(i%3==0)c3++;

              if(i%5==0)c5++;

       }

       printf("%d %d %d\n",c2,c3,c5);

}

输出结果为:

10 6 4

Press any key to continue

 

 

8. #include<stdio.h>

#include<math.h>

const int M=20;

void main()

{

      

       int i,s;

       for(i=1,s=0;i<15;i++){

              if(i%2==0 || i%3==0)continue;

              printf("%d ",i);

              s+=i;

       }

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

}

输出结果为:

1 5 7 11 13 37

Press any key to continue

  评论这张
 
阅读(1207)| 评论(0)
推荐 转载

历史上的今天

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017