首页 C程序设计基础复习资料

C程序设计基础复习资料

举报
开通vip

C程序设计基础复习资料 复习资料: 一、单选题(每题2分,共40分) 二、读程序题(每题4分,共20分) 三、程序填空题(每空格2分,共10分,两个程序) 四、编程题(每题10分,共30分,一题跟字符串数字字符个数统计或一维数组求最大值、最小值有关;一题跟P51,问题3.7类似,数学分段函数分三段用if-else语句实现;一题跟字符串操作有关,下方是二选一的题目) P18:1.1A;1.2(2) P33:问题2.8,理解++,--,一题读程序题 P40:2.1(3)A(4)C(5)B (7)A P42 2.3 (1)理解...

C程序设计基础复习资料
复习资料: 一、单选题(每题2分,共40分) 二、读程序题(每题4分,共20分) 三、程序填空题(每空格2分,共10分,两个程序) 四、编程题(每题10分,共30分,一题跟字符串数字字符个数统计或一维数组求最大值、最小值有关;一题跟P51,问题3.7类似,数学分段函数分三段用if-else语句实现;一题跟字符串操作有关,下方是二选一的题目) P18:1.1A;1.2(2) P33:问题2.8,理解++,--,一题读程序题 P40:2.1(3)A(4)C(5)B (7)A P42 2.3 (1)理解该表达运算过程及结果 P59:3.1(2)C (6) (7) (9)B P82:4.1 (4)B(5)B P 114: 5.1(2)A(4)(5)A P146:6.1 (2)C(3)A(4)B(6)D 一、单选题 1.下列叙述正确的是( C ) A. C语言程序总是从第一个定义的函数开始执行。   B. 在C语言程序中,要调用的函数必须有main( ) 函数中定义。   C. C语言程序总是从main( ) 函数开始执行。   D. C语言程序中的main( ) 函数必须放在程序的开始部分。 2.下列四组选项中,均是合法的用户标识符的选项是( A ) A. abc P_xyz D0 B. b-a go Int C. float La0 _A D.123 abc TEMP 3.下列不属于字符常量的是( C ) A.’\n’ B.’\101’ C.”\” D.’@’ 4.下列选项中,优先级最高的运算符是( C ) A.|| B.*= C.++ D. >= 5.以下是表示判断闰年的表达式的是(设变量y表示年份,闰年的条件是:y能被4整除且不能被100整除,或者y能被400整除)( B ) A. (y%4==0)&&(y%100==0)&&(y%400==0) B. (y%4==0)&&(y%100==0)||(y%400==0) C. (y%4==0)||(y%100==0)&&(y%400==0) D. (y%4==0)||(y%100==0)||(y%400==0) 6.C语言程序中,条件“1010&&x<=20 B.x>10||x<=20 C.10=(‘A’<‘a‘)的值是( C ) A. 1 B. ture C. 0 D. 非0值 8.若a为整型变量,下面哪个表达式是错误的( D ) A. a+=0.5    B、a*=0.5     C、a/=0.5    D、a%=0.5 9.为了避免嵌套的条件分支语句if-else的二义性,C语言规定:C程序中的else总是与( C )组成配对关系。 A. 缩排位置相同的if         B. 在其之前未配对的if C. 在其之前未配对的最近的if     D.同一行上的if 10.表达式 等价于( D ) A. B. C. D. 11.以下正确的描述是( A ) A.只能在循环体内和switch语句体内使用break语句 B.continue 语句的作用是结束整个循环的执行 C.在循环体内使用break语句或continue语句的作用相同 D.从多层嵌套中退出时,可以用break一次性退出所有循环 12.以下对数组的定义正确的是( D ) A.char  p[]; B. int a[2][ ]={1,2,3,4,5}; C.char p[]=abc; D. int a[ ][3]={1,2,3,4,5}; 13.简单变量做实参时,它和对应的形参之间的数据传递方式为( B ) A.地址传递 B.单向值传递 C.由实参传给形参,再由形参传回实参 D.由用户指定传递方式 14.以下程序段( C ) int iNum= - 2; do { iNum=iNum*iNum; }while(iNum<0); A.是死循环 B.循环执行两次 C.循环执行一次 D.循环执行三次 15.不能把字符串:Hello!赋给数组b[]的语句是( B )。   A. char b[10]={‘H’,‘e’,‘l’,‘l’,‘o’,‘!’};   B. char b[10];  b=“Hello!”; C. char b[10];  strcpy(b,“Hello!”); D.char b[10]=“Hello!”; 二、读程序题 1.以下程序输出的结果是 X=2,Y=3,SUM=5 #include main( ) { int x=2,y=3; printf(“x=%d, y=%d, sum=%d\n”,x,y,x+y); } 3.以下程序的输出结果是 X>3 X UNKNOW #include "stdio.h" void main() { int x=4; switch(x) { case 1: case 2: printf("x<3\n"); case 3: printf("x=3\n"); case 4: case 5: printf("x>3\n"); default: printf("x unknow\n"); } } 4.执行以下程序段后,iArr[7]的值是 3 #include "stdio.h" void main() { int iArr[10]={1,2,3,4,5,6,7,8,9,10}; int i,j,t; i=0;j=9; while(ia[max] ) i=max; printf("%d\n",max+1); } 2.打印出100-999内所有的“水仙花数”。所谓“水仙花数”是指一个三位数,其各位数字立方和等于该数本身。例如:153是一个“水仙花数”,因为 。 #include "stdio.h" int main() { int i,j,k,n,m=0; printf("water flower's number is:");   for(n=100;n<1000;n++)   {    i= n/100 ; /*求出百位数数字*/    j= n/10%10 ; /*求出十位数数字*/    k=n%10; /*求出个位数数字*/    if( n==i*i*i+j*j*j+k*k*k )     printf("%-5d",n); /*输出“水仙花数”*/   } } 四、编程题 1.编写一个程序,定义一个由10个数据构成的整型数组,从键盘输入这个数组的数据,输出数组数据之和。 2.已知分段函数 , 试编写一个程序,从键盘输入整型数据x的值,从屏幕上输出y的值。 3.编写一个程序,输入一行字符串,以回车键作结束,统计并输出数字字符的个数。 (参考 答案 八年级地理上册填图题岩土工程勘察试题省略号的作用及举例应急救援安全知识车间5s试题及答案 ) 一.单选题 1 2 3 4 5 6 7 8 9 10 C A C C B A C D C D 11 12 13 14 15 A D B C B 二.读程序题 (1). x=2,y=3,sum=5 (3). x>3 x unkown (4). 3 (5). #*#* 三.程序填空题 (1). max=num[0] (2). a[i]>a[max] (3). n/100 (4). n/10%10 (5). n==i*i*i+j*j*j+k*k*k 四. 编程题 1. #include "stdio.h" int main() { int a[10]; int i,sum; for(i=0;i<10;i++) scanf("%d",&a[i]); sum=0; for(i=0;i<10;i++) sum+=a[i]; printf("%d",sum); return 0; } 2. #include "stdio.h" int main() { int x,y; scanf("%d",&x); if(x>0) y=3*x+1; else y=x*x; printf("%d",y); return 0; 3. #include "stdio.h" #define N 100 int main() { char str[N]; int i,x=0; for(i=0;str[i]!=’\0’;i++) { if(str[i]>='0'&&str[i]<='9') x++; } printf("数字字符有:%d \n",x); return 0; } 一、单选题 1.下列叙述正确的是( A ) A.一个C源程序必须有且只能有一个主函数 B.一个C源程序可以含零个或多个子函数 C.在C源程序中注释说明必须位于语句之后 D.C源程序的基本结构是函数 2.十进制数397的十六进制值为( A ) A.18D B.18E C.277 D.361 3.设整型变量a为5,使b不为2的表达式是( C )   A. b=a/2    B. b=6-(——a)    C. b=a%2    D. b=a>3?2:1 4.下列选项中,优先级最高的运算符是( C ) A.|| B.*= C.++ D. >= 5.以下是表示判断闰年的表达式的是(设变量y表示年份,闰年的条件是:y能被4整除且不能被100整除,或者y能被400整除)( B ) A. (y%4==0)&&(y%100==0)&&(y%400==0) B. (y%4==0)&&(y%100==0)||(y%400==0) C. (y%4==0)||(y%100==0)&&(y%400==0) D. (y%4==0)||(y%100==0)||(y%400==0) 6.设有如下定义: int x=10,y=3,z;则语句 printf(“%d\n”,z=(x%y,x/y)); 的输出结果是确( D ) A. 1      B. 0       C. 4       D. 3 7.表达式(0==1)>=(‘A’<‘a‘)的值是( C ) A. 1 B. ture C. 0 D. 非0值 8.若a为整型变量,下面哪个表达式是错误的( D ) A. a+=0.5    B、a*=0.5     C、a/=0.5    D、a%=0.5 9.为了避免嵌套的条件分支语句if-else的二义性,C语言规定:C程序中的else总是与( C )组成配对关系。 A. 缩排位置相同的if         B. 在其之前未配对的if C. 在其之前未配对的最近的if     D.同一行上的if 10.C语言用( C )表示逻辑“真”值。 A.True   B.  t 或  y   C.  非零值   D.  整型值0 11.以下正确的描述是( A ) A.只能在循环体内和switch语句体内使用break语句 B.continue 语句的作用是结束整个循环的执行 C.在循环体内使用break语句或continue语句的作用相同 D.从多层嵌套中退出时,可以用break一次性退出所有循环 12.以下对数组的定义不正确的是( B ) A.char  p[5]={‘a’,’b’,’c’}; B. char p[5]=abc; C.char p[]=”abc”; D. char p[5]=”abc”; 13.简单变量做实参时,它和对应的形参之间的数据传递方式为( B ) A.地址传递 B.单向值传递 C.由实参传给形参,再由形参传回实参 D.由用户指定传递方式 14.以下程序段( A ) float iNum= 0.5; do { iNum=iNum*iNum; }while(iNum<1); A.是死循环 B.循环执行两次 C.循环执行一次 D.循环执行三次 15.建立函数的目的之一是( B )。 A.提高程序的执行效率 B.提高程序的可读性 C.减少程序的篇幅 D.减少程序文件所占内存 二、读程序题 1.以下程序输出的结果是 x=7,y=5 #include main( ) { int x=5,y=7,t ; t=x ; x=y ; y=t ; printf(“x=%d,y=%d\n”,x,y); } 2.以下程序输出的结果是 3 5 7 int i; int x[3][3]={1,2,3,4,5,6,7,8,9}; for(i=0;i<3;i++)   printf(“%d  ”,x[i][2-i]); 3.以下程序的输出结果是 x=3 #include "stdio.h" int main() { int x=3; switch(x) { case 1: case 2: printf("x<3\n"); case 3: printf("x=3\n"); case 4: case 5: printf("x>3\n");break; default: printf("x unknow\n"); } } 5.以下程序的输出结果是 **** ***     int k;   for (k=1;k<8;k++)    {  printf(“*”); if(k%5!=0)     else printf(“*”) ;  } 三、程序填空题 1.求数组元素的的和。 #include "stdio.h" #define N 100 int main( ) { int num[N]; int i,sum; for(i=0;i3 (5). **** *** 三.程序填空题 (1). sum=0 (2). sum+=num[i] 四. 编程题 1. #include "stdio.h" int main() { int a[10]; int i,min; for(i=0;i<10;i++) scanf("%d",&a[i]); min=a[0]; for(i=1;i<10;i++) if(a[i]strB[i]) return 1; } if(strA[i]strB[i]) return 1; else return 0; } 编写函数:函数原型定义为:void fn(char strA[ ],char strB[ ],char strC[ ]);功能为将两个字符串strA,strB进行交叉插入构造出新的字符串strC。插入过程为:将字符串strB的每个字符逐个插入到原strA相应字符之后,直到遇到'\0'为止,接着,将strA或strB中余下的字符接到最后,拼接成一个新的字符,存放到strC[ ]中。如,字符串"xyz"、"abcde"处理后为"xaybczde"。 void fn(char strA[],char strB[],char strC[]) { int i,j; for(i=0;strA[i]!='\0'&&strB[i]!='\0';i++) strC[2*i]=strA[i],strC[2*i+1]=strB[i]; if(strA[i]=='\0') { for(j=0;strB[i+j]!='\0';j++) strC[2*i+j]=strB[i+j]; strC[2*i+j]='\0'; } else { for(j=0;strA[i+j]!='\0';j++) strC[2*i+j]=strA[i+j]; strC[2*i+j]='\0'; } } PAGE 11 _1386102843.unknown _1386102878.unknown _1386102886.unknown _1386104242.unknown _1386102859.unknown _1386102821.unknown
本文档为【C程序设计基础复习资料】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_780517
暂无简介~
格式:doc
大小:122KB
软件:Word
页数:15
分类:计算机考试
上传时间:2012-11-10
浏览量:16