C语言考试题3_第1页
C语言考试题3_第2页
C语言考试题3_第3页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第一题:选择题 (1T8题每题1分:19-22题每题3分;总分数:30)1:对于C语言源程序,以下叙述错误的是: A)可以有空语句 B)函数之间是平等的,在一个函数内部不能定义其它 函数Ec )程序调试时如果没有提示错误,就能得到正确结果 D)注释可以岀现在语句的前面2:选岀下列标识符中不是合法的标识符的是 A)hot_do B)catl C)_priE D)2ab3:下面叙述正确的是。A) 2/3 与 2.0/3. 0 等价E B) (int) 2. 0/3与 2/3 等价 C) +5与6等价巳D A与A等价4:下列运算符中优先级最低的是:P60E A)?: B)&c C) + D) !=5

2、:已知double a=5. 2;则正确的赋值表达式是:不会E A) a+=a-=(a 二 4)*(a 二 3)C B)a=a*3=2 C)a%3 D)a=double( -3)6:若有定义:int a;则语句a= (3 * 4 ) + 2 % 3;运行后,a的值为: A) 12E B)14 Oil D)177:已知 x =43, ch =A, y 二 0 则表达式(x = y & ch B&!y)的值是! y =!0 取非二 1 Y=0 时,A A)0D B)语法错E oiC D) 假”8:若定义a,b为整型变量,下列不合法的输入语句是 A) scanf (”% d%d, a, b); B)

3、 scanf ( %d%d , &a, &b); C) scanf ( % d, %d , &a, &b); D) scanf ( a=%d,b=%d , &a, &b);9:程序段:int x=12; double y=3. 141593; printf (%d%8. 6f ” , x, y);的输岀结果是:E A) 123. 141593C B)12 3.141593 C)12, 3. 141593口 D)123.141593010:以下的if语句中,X的值一定被重新赋值的是:。A)if(x=y) x+=y;E B) if(xy & x!=y ) ;x+=y;分号,也就是说这一句已经结束了

4、,判断条件不起做用。不管条件是真是假,都会执 行下面 C)if(x!=y) scanf ( d” , &x); else scanf (%d” ,&y);口 D)if(x (0 1 2;无逗号 C)int a5=0; D) int a;14 :判断字符串a和b是否相等,应当使用:P145 A) if(a=b) B)if(a=b) C) if (strcpy (a, b)E D) if (strcmp (a, b)15:若有说明:int a3 4:则对a数组元素的正确引用是 A) a24C B)al, 3E Oal+I0 D)a(2) (1)16:已有定义int k=2; int *ptrl,

5、*ptr2;且ptrl和ptr2均已指向变量 k,下面不能正确执行的赋值语句是: A)k=*ptrl+*ptr2。B)ptrl=ptr2 C)k=*ptrl*(*ptr2)E D)ptr2=k17:程序段 char str = ABC, *p=str ; printf (%dn , *(p+2);的运行结果是: A)0 B)字符C 的ASCH码p+2指向C C)字符C的地址 D)字符C18 :系统的标准输入文件操作的数据流向为:P290 A)从键盘到内存CB )从显示器到磁盘文件CC)从硬盘到内存口 D)从内存到U盘19: mainO (int x 二 2, v= T, z=2;if (xma

6、in()(long int num;scanf ( ld , &num);do if ( 1 ) printf ( ld ,num);scanf ( ld , &num);while (!num=O ;程序是从键盘输入学号,然后输岀学号中百位数字是3的学号,输入0时结束循环。【1】处应填A)(num/100)%3=0 B) (num%100)/3 =0 C) (num/100)%10=3C D) (num%100)/10=321: #include#include main ()(char a = a b c d ef h 0 ;int i, j;i=sizeof(a);j=strlen(a)

7、;printf ( d, %db ,i, j);程序运行后的输出结果是 A)9, 9 B)8, 9 01,8D)9, 822: #includevoid main() ( int i;char *s= abc ;for (i=0;i3;i+) printf( sn , s+i);上面程序的输岀结果是:r91J A)abc be c B)c be abc C)abc c be D)a ab abc第二题:C语言编程题(总题数:4总分数:70)(以下试题如要求有运行结果,则必须将结果复制,如无具体运行结 果,则不需要复制)1 :编程输出300至500之间能同时被5和7整除的所有数据的和 (15分)

8、ttin clude main ()6 位小数。(20 分)int i;double sum=0;for (i=300;i=500;i+)if (i%5=0 & i%7=0)sum+=i;printfC300 至 500 之间能同时被 5 和 7 整除数之和: . 01fn , sum);2: 编写程序,求下面数列的前若干项的积,直到第一次出现积小于0.0001 为止,并输出此时的积为多少。结果保留1*1X2), 1/(3X4), 1/(5X6),,l/(2n-l) X (2n),(15 分)ttinclude main ()int i;double result=l.0;i=l ;for(i

9、=l;i+)result = result * 1. 0/ ( (2*iT)*(2*i); if(result0.0001)break;printf ( 乘积: %. 61fn , result);3:设计一个函数,求任意两个正整数的最大公约数。在主函数中调用此函数,并计算3696 和 2352 的最大公约数。ttinclude main ()int gcd(int m, int n);int x, y, result;x=3696;y=2352;result = gcd(x, y);printf ( d 和 d 的最大公约数为: dn ,x, y, result);int gcd(int m, int n)int r;r=m%n;while (r!=0)m=n;n=r;r=m%n;return n;4: 利用随机函数为一个 15个元素的一维数组 (10-99) 赋值并输出原始数据,将该数组按从大到小的顺序进行排序,输出排序后的数 组。 (20 分 )ttinclude ttinclude ttinclude ttinclude main()int arr15, i, j, temp;srand(time(0);for (i=0;i15;i+)arr i=rand () %90+10

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论