热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

c语言20%3c=10,C语言  练习题(2)

(36)有如下程序#defineN2#defineMN1#defineNUM2*M1main(){inti;for(i1;i

(36) 有如下程序 #define N 2

#define M N+1

#define NUM 2*M+1

main( )

{ int i;

for(i&#61;1;i<&#61;NUM;i&#43;&#43;)

printf(“%d\n”,i);

}

该程序中的for循环执行的次数是( )

A) 5B) 6 C) 7 D) 8

(37) 有以下函数 char fun(char *p)

{ return p; }

该函数的返回值是( )

A) 无确切的值 B) 形参p中存放的地址值

B) 一个临时存储单元的地址 D) 形参p自身的地址值

(38) 有如下程序段 int a&#61;14,b&#61;15,x;

char c&#61;’A’;

x&#61;(a&&b)&&(c

执行该程序段后&#xff0c;x的值为( )

A) true B) false C) 0D) 1

(39) 有如下说明 int a[10]&#61;{1,2,3,4,5,6,7,8,9,10}, *p&#61;a;

则数值为9的表达式是( )

A) *p&#43;9B) *(p&#43;8) C) *p&#43;&#61;9 D) p&#43;8

(40) 若有以下的定义&#xff1a;int

t[3][2];能正确表示t数组元素地址的表达式是( ) A) &t[3][2] B) t[3]C) t[1] D) t[2]

(41) 有如下程序 main( )

{ char ch[2][5]&#61;{“6937”, ”8254”},

*p[2]; int i,j,s&#61;0;

for(i&#61;0;i<2;i&#43;&#43;)

p[i]&#61;ch[i]; for(i&#61;0;i<2;i&#43;&#43;)

for(j&#61;0;p[i][j]>’\0’;

j&#43;&#61;2) s&#61;10*s&#43;p[i][j]-‘0’;

printf(“%d\n”,s);

} 该程序的输出结果是( )

A) 69825 B) 63825C) 6385 D) 693825

(42)若有以下的定义:

int a[]&#61;{1,2,3,4,5,6,7,88,9,10}, *p&#61;a;

则值为3的表式是()

A)p&#43;&#61;2, *(p&#43;&#43;)B)p&#43;&#61;2,*&#43;&#43;p

C)p&#43;&#61;3, *p&#43;&#43;D)p&#43;&#61;2,&#43;&#43;*p

(43)假定所有变量均已正确说明,下列程序段运行后x的值是()

a&#61;b&#61;c&#61;0; x&#61;35;

if(!a) x--;

else if(b);if(c) x&#61;3;else x&#61;4;

A)34B)4C)35D)3

(44)在以下一组运算符中,优先级最高的运算符是()

A)<&#61;B)&#61;C)%D)&&

(45)若有以下定义和语句:

int w[2][3],(*pw)[3];pw&#61;w;

则对w数组元素非法引用是()

A)*(w[0]&#43;2)&#61;*w[0][2]B)*(pw&#43;1)[2]

C)pw[0][0]&#61;*w[0][0]D)*(pw[1]&#43;2)&#61;*w[1][2]

(46)若有以下程序片段:

char str[]&#61;"ab\n\012\\\"";

printf("%d\n", strlen(str));

上面程序片段的输出结果是()

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

(47)函数调用strcat(strcpy(str1,str2),str3)的功能是()

A)将串str1复制到串str2中后再连接到串str3之后

B)将串str1连接到串str2之后再复制到串str3之后

C)将串str2复制到串str1中后再将串str3连接到串str1之后

D)将串str2连接到串str1之后再将串str1复制到串str3中

(48)以下对C语言函数的有关描述中,正确的是()

A)在C中,调用函数时,只能把实参的值传送给形参,形参的值不能传送给实参

B) C函数既可以嵌套定义又可以递归调用

解释&#xff1a;C函数可以递归调用&#xff0c;但不允许嵌套定义

C)函数必须有返回值,否则不能使用函数

D) C程序中有调用关系的所有函数必须放在同一个源程序文件中

(49)以下叙述中不正确的是()

A)在C中,函数中的自动变量可以赋初值,每调用一次,赋一次初值.

B)在C中,调用函数时,实在参数和对应形参在类型上只需赋值兼容.

C)在C中,外部变量的隐含类别是自动存储类别.

D)在C中,函数形参可以说明为register变量.

(50)以下程序的输出结果是()

#define sub1(char a, char b){char c; c&#61;a;a&#61;b;b&#61;c;}

#define sub2(char*a, char b){char c; c&#61;*a;*a&#61;b;b&#61;c;}

#define sub3(char*a, char*b){char c; c&#61;*a;*a&#61;*b;*b&#61;c;}

main()

{char a,b;

a&#61;&#39;A&#39;;b&#61;&#39;B&#39;;sub3(&a,&b);putchar(a);putchar(b);

a&#61;&#39;A&#39;;b&#61;&#39;B&#39;;sub2(&a,b);putchar(a);putchar(b);

a&#61;&#39;A&#39;;b&#61;&#39;B&#39;;sub1(a,b);putchar(a);putchar(b);

}

A)BABBABB)ABBBBA

C)BABABAD)BAABBA

(51) 错误的转义字符是 ( )A) &#39;\091&#39; B) &#39;\\&#39; C) &#39;\0&#39; D) &#39;\&#39;&#39;

(52) 设int a,b,c;执行表达式a&#61;b&#61;1&#xff0c;a&#43;&#43;&#xff0c;b&#43;1&#xff0c;c&#61;a&#43;b--后&#xff0c;a,

b和c的值分别是

( )

A) 2, 1, 2B) 2,

0, 3 C) 2, 2, 3 D) 2, 1, 3

(53) 在C语言中&#xff0c;错误的常数是 ( ) A)

1E&#43;0.0 B) 5 C) 0xaf D) 0L

( 54) 设int k; 则语句for(k&#61;0; k&#61;1; k&#43;&#43;)&#xff1b;和

语句for(k&#61;0; k&#61;&#61;1;k&#43;&#43;)&#xff1b;执行的次数分别是 ( )A) 无限和0 B) 0和无限 C) 都是无限 D) 都是0

(55)某文件中定义的静态全局变量(或称静态外部变量)其作用域是( )

A) 只限某个函数B) 本文件

C) 跨文件 D)不限制作用域

二、程序填空题&#xff1a;

(10) 函数pi的功能是根据以下近似公式求π值&#xff1a;

(π*π)/6&#61;1&#43;1/(2*2)&#43;1/(3*3)&#43;…&#43;1/(n*n)

现在请你在下面的函数中填空&#xff0c;完成求π的功能。 #include “math.h”

double pi(long n) { double s&#61;0.0; long

i; for(i&#61;1;i<&#61;n;i&#43;&#43;)

s&#61;s&#43;1.0/(i*i)

; return(sqrt(6*s));

}

(14)以下函数用来在w数组中插入x, w数组中的数已按由小到大顺序存放, n所指存储单元中存放数组中数据的个数.插入后数组中的数仍有序.请填空.

void fun (int*w,intx, int *n)

{ int i,p;

p&#61;0;

w[*n]&#61;x;

while (x>w[p])p&#43;&#43;;

for(i&#61;*n;i>p;i--)w[i]&#61;w[i-1];

w[p]&#61;x;

&#43;&#43; *n;

}

(15)fun1函数的调用语句为: fun1(&a, &b, &c);它将三个整数按由大到小的顺序调整后依次放入a&#xff0c;b&#xff0c;c三个变量中,a中放最大数。请填空.

void fun2 (int *x,int *y)

{ int t;

t&#61;*x;*x&#61;*y;*y&#61;t;

}

void fun1 (int *pa,int *pb,int *pc)

{ if (*pc>*pb)fun2(pc,pb)&#xff1b;

if (*pa

if (*pa

}

16.任意输入三条边(a,b,c)后&#xff0c;若能构成三角形且为等腰、等边和直角&#xff0c;则分别输出DY、DB和ZJ&#xff0c;若不能构成三角形则输出NO。main(){float a, b, c, a2, b2, c2;scanf("%f%f%f", &a, &b, &c);printf("%5.1f,%5.1f,%5.1f", a, b, c);if(a&#43;b>c && b&#43;c>a && a&#43;c>b){if(a&#61;&#61;b || a&#61;&#61;c || b&#61;&#61;c)printf("DY");if(a&#61;&#61;b && b&#61;&#61;c)printf("DB");a2&#61;a*a;b2&#61;b*b;c2&#61;c*c;if(a2&#43;b2&#61;&#61;c2 || a2&#43;c2&#61;&#61;b2 || b2&#43;c2&#61;&#61;a2)printf("ZJ");printf("\n");}else printf("NO\n");}

17.输出下列图形。1 2 3 4 5 6 7 8 92 3 4 5 6 7 8 9

3 4 5 6 7 8 94 5 6 7 8 95 6 7 8 96 7 8 97 8 98 99

main()

{int i, j;for(i&#61;1;i<&#61;9; i&#43;&#43;)

{for(j&#61;i; j<&#61;9; j&#43;&#43;)printf("-", j);

printf("\n");} }

三、程序分析题阅读下列程序&#xff0c;将输出结果分别写到各题右侧的空白处。16.main(){int a&#61;3, b&#61;9, c&#61;2;if(a)if(b) printf("]]]\n", a, b, c);}

程序运行结果&#xff1a;&#xfe8f;&#xfe8f;&#xfe8f;&#xfe8f;3&#xfe8f;&#xfe8f;&#xfe8f;&#xfe8f;9&#xfe8f;&#xfe8f;&#xfe8f;&#xfe8f;217.void change(int *x, int y){int t;t&#61;*x; *x&#61;y; y&#61;t;}main( ){int a&#61;3, b&#61;5;change(&a,b);printf("a&#61;%d,b&#61;%d\n",a,b);}

程序运行结果&#xff1a;a&#61;5,b&#61;5

18.main( )

{int j;for(j&#61;4; j>&#61;2; j--)switch( j ){case 0: printf("%4s","ABC");case 1: printf("%4s","DEF");case 2: printf("%4s","GHI");break;case 3: printf("%4s","JKL");default: printf("%4s","MNO");}printf("\n");}程序运行结果&#xff1a;&#xfe8f;MNO&#xfe8f;JKL&#xfe8f;MNO&#xfe8f;GHI

19.main( )

{staticint j,a[6]&#61;{1,2};for(j&#61;3; j<6; j&#43;&#43;)a[j]&#61;a[j/2]&#43;a[j%3]-a[j-2];for(j&#61;0; j<6; j&#43;&#43;)printf("]",a[j]);printf("\n");}

程序运行结果&#xff1a;&#xfe8f;&#xfe8f;&#xfe8f;&#xfe8f;1&#xfe8f;&#xfe8f;&#xfe8f;&#xfe8f;2&#xfe8f;&#xfe8f;&#xfe8f;&#xfe8f;0&#xfe8f;&#xfe8f;&#xfe8f;&#xfe8f;1&#xfe8f;&#xfe8f;&#xfe8f;&#xfe8f;2&#xfe8f;&#xfe8f;&#xfe8f;&#xfe8f;-1

20.int a&#61;10;int f(int a){int b&#61;0; static int c&#61;3;a&#43;&#43;; &#43;&#43;c; &#43;&#43;b;return a&#43;b&#43;c;}main(){int i;for(i&#61;0;i<2;i&#43;&#43;)print("]",f(a));printf("\n");}

程序运行结果&#xff1a;&#xfe8f;&#xfe8f;&#xfe8f;16&#xfe8f;&#xfe8f;&#xfe8f;17

21.#define N 2#define M N&#43;1#define NUM 2*M&#43;1int fib(int n){return n<3?2:fib(n-1)&#43;fib(n-2);}main(){printf("]]\n",NUM,fib(5));}

程序运行结果&#xff1a;&#xfe8f;&#xfe8f;&#xfe8f;&#xfe8f;6&#xfe8f;&#xfe8f;&#xfe8f;10

22.假设在DOS提示符下显示源程序如下(PROG.exe程序也在C

盘中)&#xff1a;C:\>type PROC.cmain(int argc,char*argv[]){while(--argc>0)printf("%s",argv[argc]);printf("\n");}写出执行下列命令后的输出结果C:\>PROG 2008 OLYMPIC BEIJING <回车>

程序运行结果:BEIJINGOLYMPIC2008

2004年4月二级C语言笔试试题及参考解答

一、选择题&#xff1a;

1、1MB等于(

) A) 1000字节

B) 1024字节

C)

1000*1000字节

D)

1024*1024字节2、与十六进制数200等值的十进制数为(

) A) 256 B) 512C) 1024 D) 2048

3、所谓"裸机"是指(

) A) 单片机 B) 单板机

C) 不装备任何软件的计算机 D) 只装备操作系统的计算机 4、能将高级语言编写的源程序转换为目标程序的是(

)A) 链接程序 B) 解释程序 C) 编译程序 D) 编辑程序5、在64位计算机中&#xff0c;一个字长所占字节数为(

)A) 64 B) 8 C) 4 D) 1

6、在Windows环境下&#xff0c;当一个应用程序窗口被最小化后&#xff0c;该应用程序(

)A) 继续在后台运行 B) 继续在前台运行C) 终止运行D) 暂停运行 7、在Windows环境下&#xff0c;能实现窗口移动的操作是(

)A)用鼠标拖动窗口中的任何部位

B)用鼠标拖动窗口的边框C)用鼠标拖动窗口的控制按钮

D)用鼠标拖动窗口的标题栏8、在Windows环境下&#xff0c;PrintScreen键的作用是(

)A)打印当前窗口的内容

B)打印屏幕内容C)复制屏幕到剪贴板

D)复制当前窗口到剪贴板9、Internet的通信协议是(

)A)TCP/IP B)BBS C)WWW D)FTP

10、下列叙述中正确的是(

)A)计算机病毒只感染可执行文件

B)计算机病毒只感染文本文件C)计算机病毒只能通过软件复制的方式进行传播D)计算机病毒可以通过网络或读写磁盘方式进行传播11、一个算法应该具有"确定性"等5个特性&#xff0c;下面对另外4个特性的描述中错误的是(

) A)有零个或多个输入

B)有零个或多个输出

C) 有穷性 D)可行性

12、以下叙述中正确的是(

)A)C语言的源程序不必通过编译就可以直接运行B)C语言中的每条可执行语句最终都将被转换成二进制的机器指令C)C源程序经编译形成的二进制代码可以直接运行D)C语言中的函数不可以单独进行编译13、以下符合C语言语法的实型常量是(

) A)1.2E0.5 B)3.14.159E C).5E-3 D)E15

14、以下4组用户定义标识符中&#xff0c;全部合法的一组是()A) _main B) If C) txt D) int

enclude -max REAL k_2

sin turbo 3COM _001

15、若以下选项中的变量已正确定义&#xff0c;则正确的赋值语句是()A)x1&#61;26.8%3 B)1&#43;2&#61;x2 C)x3&#61;0x12 D)x4&#61;1&#43;2&#61;3;

16、设有以下定义int a&#61;0;

double b&#61;1.25;

char c&#61;’A’;

#define d 2 则下面语句中错误的是( ) A)a&#43;&#43;; B)b&#43;&#43; C)c&#43;&#43;; D)d&#43;&#43;;

17、设有定义&#xff1a;float

a&#61;2,b&#61;4,h&#61;3;,以下C语言表达式与代数式计算结果不相符的是(

)A)(a&#43;b)*h/2 B)(1/2)*(a&#43;b)*h C)(a&#43;b)*h*1/2 D)h/2*(a&#43;b)

18、有以下程序

main( )

{ int x&#61;102&#xff0c;y&#61;012;

printf("-,-\n",x,y);

}执行后输出结果是()

A)10,01 B) 002,12 C)102,10 D)02,10

19、以下4个选项中&#xff0c;不能看作一条语句的是()

A) {;} B)a&#61;0,b&#61;0,c&#61;0; C)if(a>0); D)if(b&#61;&#61;0) m&#61;1;n&#61;2;

20、设有定义&#xff1a;int

a,*pa&#61;&a;以下scanf语句中能正确为变量a读入数据的是(

)

A)scanf("%d",pa);

B)scanf("%d",a);

C)scanf("%d",&pa); D)scanf("%d",*pa);

21、以下程序段中与语句k&#61;a>b?(b>c?1:0):0&#xff1b;功能等价的是()A) if ((a>b)&&(b>c))

k&#61;1; else k&#61;0;

B) if ((a>b)||(b>c))

k&#61;1&#xff1b;else k&#61;0;

C) if (a<&#61;b) k&#61;0;

D) if (a>b) k&#61;1;

else if(b<&#61;c) k&#61;1;

else if(b >c) k&#61;1;

else k&#61;0;

22、有以下程序main( )

{ char k; int i;

for(i&#61;1;i<3;i&#43;&#43;)

{ scanf("%c",&k);

switch(k)

{ case ’0’: printf("another\n");

case ’1’: printf("number\n");

}

} } 程序运行时&#xff0c;从键盘输入&#xff1a;01<回车>&#xff0c;程序执行后的输出结果是(

)A) another B) another C) another D)

number

number number number number

another number

23、有以下程序

main( )

{ int x&#61;0,y&#61;5,z&#61;3;

while(z-->0&&&#43;&#43;x<5) y&#61;y-1;

printf("%d,%d,%d\n",x,y,z);

}程序执行后的输出结果是(

)A)3,2,0 B)3,2,-1 C)4,3,-1 D)5,-2,-5

24、有以下程序

main( )

{ int i,s&#61;0;

for(i&#61;1;i<10;i&#43;&#61;2) s&#43;&#61;i&#43;1;

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

}

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

A)自然数1&#xff5e;9的累加和

B)自然数1&#xff5e;10的累加和

C)自然数1&#xff5e;9中的奇数之和

D)自然数1&#xff5e;10中的偶数之



推荐阅读
  • 本文介绍了iOS数据库Sqlite的SQL语句分类和常见约束关键字。SQL语句分为DDL、DML和DQL三种类型,其中DDL语句用于定义、删除和修改数据表,关键字包括create、drop和alter。常见约束关键字包括if not exists、if exists、primary key、autoincrement、not null和default。此外,还介绍了常见的数据库数据类型,包括integer、text和real。 ... [详细]
  • C语言注释工具及快捷键,删除C语言注释工具的实现思路
    本文介绍了C语言中注释的两种方式以及注释的作用,提供了删除C语言注释的工具实现思路,并分享了C语言中注释的快捷键操作方法。 ... [详细]
  • switch语句的一些用法及注意事项
    本文介绍了使用switch语句时的一些用法和注意事项,包括如何实现"fall through"、default语句的作用、在case语句中定义变量时可能出现的问题以及解决方法。同时也提到了C#严格控制switch分支不允许贯穿的规定。通过本文的介绍,读者可以更好地理解和使用switch语句。 ... [详细]
  • Android源码深入理解JNI技术的概述和应用
    本文介绍了Android源码中的JNI技术,包括概述和应用。JNI是Java Native Interface的缩写,是一种技术,可以实现Java程序调用Native语言写的函数,以及Native程序调用Java层的函数。在Android平台上,JNI充当了连接Java世界和Native世界的桥梁。本文通过分析Android源码中的相关文件和位置,深入探讨了JNI技术在Android开发中的重要性和应用场景。 ... [详细]
  • Go Cobra命令行工具入门教程
    本文介绍了Go语言实现的命令行工具Cobra的基本概念、安装方法和入门实践。Cobra被广泛应用于各种项目中,如Kubernetes、Hugo和Github CLI等。通过使用Cobra,我们可以快速创建命令行工具,适用于写测试脚本和各种服务的Admin CLI。文章还通过一个简单的demo演示了Cobra的使用方法。 ... [详细]
  • 开发笔记:实验7的文件读写操作
    本文介绍了使用C++的ofstream和ifstream类进行文件读写操作的方法,包括创建文件、写入文件和读取文件的过程。同时还介绍了如何判断文件是否成功打开和关闭文件的方法。通过本文的学习,读者可以了解如何在C++中进行文件读写操作。 ... [详细]
  • 如何搭建Java开发环境并开发WinCE项目
    本文介绍了如何搭建Java开发环境并开发WinCE项目,包括搭建开发环境的步骤和获取SDK的几种方式。同时还解答了一些关于WinCE开发的常见问题。通过阅读本文,您将了解如何使用Java进行嵌入式开发,并能够顺利开发WinCE应用程序。 ... [详细]
  • 本文介绍了深入浅出Linux设备驱动编程的重要性,以及两种加载和删除Linux内核模块的方法。通过一个内核模块的例子,展示了模块的编译和加载过程,并讨论了模块对内核大小的控制。深入理解Linux设备驱动编程对于开发者来说非常重要。 ... [详细]
  • 本文讨论了编写可保护的代码的重要性,包括提高代码的可读性、可调试性和直观性。同时介绍了优化代码的方法,如代码格式化、解释函数和提炼函数等。还提到了一些常见的坏代码味道,如不规范的命名、重复代码、过长的函数和参数列表等。最后,介绍了如何处理数据泥团和进行函数重构,以提高代码质量和可维护性。 ... [详细]
  • Java SE从入门到放弃(三)的逻辑运算符详解
    本文详细介绍了Java SE中的逻辑运算符,包括逻辑运算符的操作和运算结果,以及与运算符的不同之处。通过代码演示,展示了逻辑运算符的使用方法和注意事项。文章以Java SE从入门到放弃(三)为背景,对逻辑运算符进行了深入的解析。 ... [详细]
  • 本文介绍了PHP常量的定义和使用方法,包括常量的命名规则、大小写敏感性、全局范围和标量数据的限制。同时还提到了应尽量避免定义resource常量,并给出了使用define()函数定义常量的示例。 ... [详细]
  • 本文记录了作者对x265开源代码的实现与框架进行学习与探索的过程,包括x265的下载地址与参考资料,以及在Win7 32 bit PC、VS2010平台上的安装与配置步骤。 ... [详细]
  • 集成电路企业在进行跨隔离网数据交换时面临着安全性问题,传统的数据交换方式存在安全性堪忧、效率低下等问题。本文以《Ftrans跨网文件安全交换系统》为例,介绍了如何通过丰富的审批流程来满足企业的合规要求,保障数据交换的安全性。 ... [详细]
  • 本文介绍了关系型数据库和NoSQL数据库的概念和特点,列举了主流的关系型数据库和NoSQL数据库,同时描述了它们在新闻、电商抢购信息和微博热点信息等场景中的应用。此外,还提供了MySQL配置文件的相关内容。 ... [详细]
  • Ihaveaworkfolderdirectory.我有一个工作文件夹目录。holderDir.glob(*)>holder[ProjectOne, ... [详细]
author-avatar
美妹慈心b
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有