C语言程序设计复习题A

上传人:jiups****uk12 文档编号:40020204 上传时间:2018-05-22 格式:DOC 页数:23 大小:122.50KB
返回 下载 相关 举报
C语言程序设计复习题A_第1页
第1页 / 共23页
C语言程序设计复习题A_第2页
第2页 / 共23页
C语言程序设计复习题A_第3页
第3页 / 共23页
C语言程序设计复习题A_第4页
第4页 / 共23页
C语言程序设计复习题A_第5页
第5页 / 共23页
点击查看更多>>
资源描述

《C语言程序设计复习题A》由会员分享,可在线阅读,更多相关《C语言程序设计复习题A(23页珍藏版)》请在金锄头文库上搜索。

1、C 语言程序设计复习题 A 一、选择题(1)-(20)每个选项 1 分,(21)-(30)每个选项 2 分,共 40 分) (1)下列不正确的转义字符是 A)、 、 B)、 “ C)074 D)、0“ (2)若有以下定义:char a;int b; float c;double d; 则表达式 a*bd-c 值的类型为A)float B)int C)char D)double (3)表示关系 x=y=z 的 c 语言表达式为A)(X=Y)x=x-=x-x; A)10 B)20 C)40 D)30 (6)下列可作为 C 语言赋值语句的是 A)x=3,y=5 B)a=b=6 C)i-; D)y=i

2、nt(x); (7)设 x,y,z,t 均为 int 型变量,则执行以下语句后,t 的值为x=y=z=1; t=x|y A)不定值 B)2 C)1 D)0 (8)设 i 是 int 型变量,f 是 float 型变量,用下面的语句给这两个变量输入值: scanf(“i=%d,f=%f“,y=50;y) if(x=10)break; if (x%2=1) x=5;continue; x-=3; A)2 B)4 C)6 D)8 (10)给出以下定义: char x=“abcdefg“; char y=a,b,c,d,e,f,g; 则正确的叙述为 A)数组 X 和数组 Y 等价 B)数组 x 和数组

3、 Y 的长度相同 C)数组 X 的长度大于数组 Y 的长度 D)数组 X 的长度小于数组 Y 的长度 (11)以下叙述中不正确的是 A)在不同的函数中可以使用相同名字的变量B)函数中的形式参数是局部变量 C)在一个函数内定义的变量只在本函数范围内有效 D)在一个函数内的复合语句中定义的变量在本函数范围内有效 (12)假定 a 和 b 为 int 型变量,则执行以下语句后 b 的值为a=1;b=10; do b-=a;a; while (b-0);A)9 B)-2 C)-1 D)8 (13)设 j 为 int 型变量,则下面 for 循环语句的执行结果是for(j=10;j3;j-) if(j%

4、3)j-;-j;-j; printf(“%d “,j); A)6 3 B)7 4 C)6 2 D)7 3 (14)设有以下宏定义:#define N 3 #define Y(n)(N1)*n) 则执行语句:z=2 *(NY(51);后,z 的值为 A)出错 B)42 C)48 D)54 (15)设 P1 和 P2 是指向同一个 int 型一维数组的指针变量,k 为 int 型变量,则不能正确 执行的语句是 A)k=*P1*P2;B)p2=k;C)P1=P2;D)K=*P1 *(*P2); (16)设有如下定义: int arr=6,7,8,9,10;int *ptr; 则下列程序段的输出结果为

5、ptr=arr; *(ptr2)=2; printf (“%d,%d、n“,*ptr,*(ptr2);A)8,10 B)6,8 C)7,9 D)6,10 (17)以下程序的输出结果是main() int i,k,a10,p3:K=5; for (i=0;i10;i)ai=i; for (i=0;i3;i)pi=ai*(i1);for (i=0;i3;i)k=pi*2; printf(“%d、n“,k); A)20 B)21 C)22 D)23 (18)执行以下程序段后,m 的值为 int a23=1,2,3,4,5,6;int m,*p; p= for(ptr=arr;ptrarr5;ptr)

6、printf(“%s、n“,ptr); 输出结果是A)ABCD B)A C)E D)ABCDE (20)有以下程序main() int x,i; or(i=1;i=50;i) x=i; if(x%2=0) if(x%3=0) if(x%7=0) printf(“%d,i);” 输出结果是A)28 B)27 C)42 D)41 (21)有下列程序#includestdio.h main() union int k; char i2;*s,a; s= s-i0=0x39;s-i1=0x38; printf(“%x、n“,s-k); 输出结果是A)3839 B)3938 C)380039 D)390

7、038 (22)有以下程序#include stdio.h main() int a,b,c=246; a=c/100%9; b=(-1) char name10;int age; ;void fun(struct stu *p) printf(“%s、n“,(*p)。name);main() struct stu students3=9801,“Zhang“,20, 9802,“Wang“,19, 9803,“Zhao“,18; fun(students2); 输出结果是A)Zhang B)Zhao C)Wang D)18 (25)设有以下说明和定义:typedef union long i

8、;int k5;char c;DATE;struct date int cat;DATE cow;double dog;too; DATE max; 则下列语句的执行结果是 printf (“%d“,sizeof (struct date )sizeof(max);A)26 B)30 C)18 D)8 (26)有以下程序main() char a=“programming“,b=“language“;char *p1,*p2; int i; p1=a;p2=b; for(i=0;i7;i) if(*(p1i)=*(p2i)printf(“c“,*(p1i); 输出结果是A)gm B)rg C)

9、or D)ga (27)有以下程序viod fun (int a,int b,int c) a=456;b=567;c=678; main() int x=10,y=20,z=30; fun (x,y,z); printf(“%d,/%d、n“,c,d); 输出结果是A)30,20,10 B)10,20,30 C)456,567,678 D)678,567,456 (28)有以下程序int fun(int x,int y,int *cp,int *dp) *cp=xy;*dp=x-y; main() int a,b,c,d; a=30;b=50; fun(a,b, for(j=10;j11;j

10、) for(i=9;ij;i) if (!(j%i)break; if(i=j-1)printf(“%d“,j); 输出结果是A)11 B)10 C)9 D)10 11 (30)有以下程序 include “atdio.h“ int abc(int u,intv);main () int a=24,b=16,c; c=abc(a,b); printf(%d、n“,c);” int abc(int u,int v)int w; while(v) w=u%v;u=v;v=w return u; 输出结果是A)6 B)7 C)8 D)9 二填空题(40 分) (1)设 i,j,k 均为 int 型变

11、量,则执行完下面的 for 循环后,k 的值为_。 for(i=0,j=10;i=j;i,j-)k=ij;(2)设有以下定义的语句: int a32=10,20,30,40,50,60,(*p)2;p=a; 则*(*(p2)1)值为_。(3)以下程序的输出结果是_。#include stdio.h int fun(int x,int y) static int m=0,i=2; i=m1; m=ixy; return m main() int j=4,m=1,k; k=fun(j,m);printf(“%d,“,k); k=fun(j,m);printf(“%d、n“,k); (4)函数 fu

12、n 的功能是:使一个字符串按逆序存放,请填空void fun (char str) char m;int i,j; for(i=0,j=strlen(str);i_;i,j-) m=stri; stri=_(11);strj-1= ; printf(“%s、n“,str); (5)以下程序的功能是:从键盘上输入一行字符,存入一个字符数组中,然后输出该字符串, 请填空。#include“ctype.h“ #include“stdio.h“ main() char str81,*sptr;int i;for(i=0;i80;i) stri=getchar(); if(stri=、n)break;

13、stri=_;sptr=str; while(*sptr)putchar(*sptr_); (6)以下程序用来对从键盘上输入的两个字符串进行比较,然后输出两个字符串中第一个不 相同字 符的 ASCII 码之差。例如:输入的两个字符串分别为 abcdef 和 abceef,则 输出为1.请填空。#include main() char str100,str2100,c;int i,s; printf(“、n input string 1:、n“);gest(str1); printf(“、n input string 2:、n“);gest(str2);i=0; while(strli=str2

14、i char str100;int i=0; if(fp=fopen(“text.txt“,_)=NULL) printf(“cant open this file.、n“);exit(0); printf(“input astring:、n“);gest(str);while ( ) if(stri=along n; printf(“enter a number:、n“);scanf(“%ld“, while(n!=0); printf(“transmite new base:、n“);for(-i;i=0;-i) d=ci; printf(“%c“,b_); _ C 语言程序设计复习题 A 答案 一、选择题(1)C (2)D (3)A (4)D (5)B(6)C (7)C (8)B (9)C (10)C(11)D (12)D (13)B (14)C (15)B (16)D (17)B

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号