资源预览内容
第1页 / 共108页
第2页 / 共108页
第3页 / 共108页
第4页 / 共108页
第5页 / 共108页
第6页 / 共108页
第7页 / 共108页
第8页 / 共108页
第9页 / 共108页
第10页 / 共108页
亲,该文档总共108页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述
C 语言程序设计,史树敏 bitjsj_2010163.com,2,复 习,3,选择题,【1】一个语言程序是由 组成的。A) 主程序 B) 子程序 C) 函数 D) 过程答案:C 【2】语言中char型数据在内存中是以 形式存储。A) 原码 B) 补码 C) 反码 D) ASCII码答案:D 【3】C的运算符按运算对象的数目可以分为 。A) 单目算符一种 B) 单目和双目算符C) 单目、双目和三目算符D) 单目、双目、三目和四目算符答案:C,4,选择题,【4】以下选项中属于C语言的数据类型是 。A)复数型 B) 逻辑型 C) 双精度型 D) 集合型答案:C 【5】设int类型的数据长度为2个字节,则unsigned int类型数据的取值范围是 。A) 0至255 B) 0至65535C) -32768至32767 D) -256至255答案:B 【6】int i; float f; 正确的语句是:A. (int f)%i B. int (f)%i C. int(f%i) D. (int)f%i答案:D,5,选择题,【7】已知:char w;int x;float y;double z;则表达式w*x+z-y的结果为 类型。A) float B) char C) int D) double答案:D 【8】下列可以正确表示字符型常数的是 。A) “a“ B) t C) “n“ D) 297答案:B 【9】已知:int a,b;使用语句:scanf(“%d%d”,&a,&b);输入a、b的值时,不能用 作为输入分隔符的是 。A) , B) 空格 C) 回车 D) Tab答案:A,6,选择题,【10】下列运算符的操作数必须是int型的运算是 A) % B) / C) - D) +答案:A 【11】已知:char *s=“t“NameAddressn“;则s所指的字符串的长度为A) 19 B) 15 C) 18 D) 说明不合法答案:B 【12】与条件表达式“(n)?(c+):(c-)”中的表达式(n)等价的表达式是:A. (n=0) B. (n=1) C. (n!=0) D. (n!=1)答案:C,7,选择题,【12】为判断char型变量m是否是数字,可用表达式A)0=m & m=9 B)0=m & m=9C)“0”=m & mb)则n的值是: A. 1 B. 2 C. 3 D. 4答案:B,9,选择题,【16】可作为函数 fopen 中第一个参数的正确格式是A) c:usertext.txt B) c:usertext.txtC) “c:usertext.txt“ D) “c:usertext.txt“答案:D 【17】C对嵌套if的规定是:else总是与 配对。A) 其之前最近的if B) 第一个ifC) 缩进位置相同的ifD) 其之前最近的且尚未配对的if答案:D,10,选择题,【18】若int i=10,则后,变量的结果是 。switch (i) case 9: i+=1;case 10: i+=1;case 11: i+=1;default: i+=1;A) 10 B) 11 C) 12 D) 13答案:D 【19】若:int a34;则数组元素的非法引用是。A)a02*1 B)a13 C)a4-20 D)a04答案:D,11,选择题,【20】对字符数组s赋值,不合法的一个:A. char s =“Beijing”;B. char s20=“Beijing”;C. char s20; s=“Beijing”;D. char s20=B,e,i,j,i,n,j;答案:C【21】以下4个关于C语言的结论中,错误的是 。A) 用while语句实现的循环一定可用for语句实现B) 用for语句实现的循环一定可用while语句实现C) 用do-while语句实现的循环一定可用while语句实现D) do-while语句与while语句的区别仅是关键字“while“出现的位置不同答案:D,char *s; s=“Beijing”;,12,选择题,【22】若有说明:int b410, i, j,(且0=i4, 0=j10),则对数组元素bij引用错误的是:A. *( (且0=i3, 0=j0 ) return( n * try (n-2) );else return(1);答案:15,17,写答案题,【2】写出程序的运行结果。#include “stdio.h“struct cmplx int x;int y; cnum2 = 1, 3, 2, 7 ;main( )printf(“%dn“,cnum0.y * cnum1.x);答案:6,18,程序选择填空题,【1】下面的程序是求数组中的最小元素,请选择填空。findmin ( int *s, int t, int *k ) int p;for ( p=0, *k=p; pt; p+ )if ( sp s*k ) ;main ( ) int a10, i, *k=A) k=p B) *k=p-s C) k=p-s D) *k=p 【1】答案: D,19,程序填空题,【1】下面的函数是求1到n之和。int add ( int x ) if ( n = 1 ) ;else return ( ); 【1】答案: return (1) n + add(n-1),20,程序填空题,【2】程序读入20个整数,统计非负数个数,计算非负数之和。main ( ) int i, a20, s, count;s=count=0;for ( i=0; i20; i+ )scanf(“%d“, );for ( i=0; i20; i+ ) if ( ai0 ) ;s += ai;count+;printf (“s=%dt count=%dn“, s, count); 【2】答案: &ai continue,21,程序填空题,【3】下面的函数fun的功能是将形参x的值转换成二进制数,所得二进制数的每一位放在一维数组中返回,二进制的最低位放在下标为0的元素中,其它依次类推。fun( int x, int b ) int k=0, r;do r = x%【 1 】;b k+ = r;x /= 【 2 】; while (x); 【3】答案: 2 2,22,程序填空题,【4】已知:任意一个正整数的立方都可以写成一串连续奇数的和。例如: 13*13*13=2197=157+159+ +177+179+181main ( ) long int n, i, k, j, sum;printf (“Enter n=“); scanf(“%ld“, 答案: sumk sum=k j-2,main( ) FILE *fp; int flag; char name30, data30;if(fp=fopen(“try.dat“,【 】)=NULL) exit(0);do printf (“Enter name:“); gets(name);if (strlen(name)=0) break;strcat (name, “n“);【 】;flag=1;while (flag ,A.“r+“ B. “w+“ C.“a+“ D. “w“,“a+“,rewind(fp),!=NULL,
网站客服QQ:2055934822
金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号