C语言练习题_计算机-.NET.pdf

上传人:c****2 文档编号:93964359 上传时间:2023-07-20 格式:PDF 页数:50 大小:1.04MB
返回 下载 相关 举报
C语言练习题_计算机-.NET.pdf_第1页
第1页 / 共50页
C语言练习题_计算机-.NET.pdf_第2页
第2页 / 共50页
点击查看更多>>
资源描述

《C语言练习题_计算机-.NET.pdf》由会员分享,可在线阅读,更多相关《C语言练习题_计算机-.NET.pdf(50页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、一、单项选择题 一、基本概念 1.C 语言程序是由 C 构成的。A)一些可执行语言 B)main函数 C)函数 D)包含文件中的第一个函数 2(A )是构成 C语言程序的基本单位。A、函数 B、过程 C、子程序 D、子例程 3C语言程序从 C 开始执行。A)程序中第一条可执行语句 B)程序中第一个函数 C)程序中的 main 函数 D)包含文件中的第一个函数 4C语言程序从 main()函数开始执行,所以这个函数要写在_D_。A)程序文件的开始 B)程序文件的最后 C)它所调用的函数的前面 D)程序文件的任何位置 5、以下说法中正确的是(C )。A、C语言程序总是从第一个定义的函数开始执行 B

2、、在 C语言程序中,要调用的函数必须在 main()函数中定义 C、C语言程序总是从 main()函数开始执行 D、C语言程序中的 main()函数必须放在程序的开始部分 6.下列方法中错误的是(D)。A.主函数可以分为两个部分:主函数说明部分和主函数体。B.主函数可以调用任何非主函数的其它函数。C.任何非主函数可以调用其它任何非主函数。D.程序可以从任何非主函数开始执行。7.下列关于 C语言的说法错误的是(B )。A)C 程序的工作过程是编辑、编译、连接、运行 B)C 语言不区分大小写。C)C 程序的三种基本结构是顺序、选择、循环 D)C 程序从 main 函数开始执行 8.系统默认的 C

3、语言源程序扩展名为.C,需经过 C 之后,生成.exe文件,才能运行 A)编辑 编译 B)编辑 连接 C)编译 连接 D)编辑 改错 二、数据类型、运算符与表达式 1.不是 C语言提供的合法关键字是(B)。A.switch B.cher C.case D.default 4.下列正确的标识符是(C)。A.-a1 B.ai C.a2_i D.int t 5.下列 C语言用户标识符中合法的是(B )。A、*y B、sum C、int D、%5f 6.下面四个选项中,合法的标识符是:(D)A.auto B.define C.6a D.c 7下列 C语言用户标识符中合法的是(B)。A)3ax B)x

4、C)case D)-e2 E)union 8.以下选项中合法的用户标识符是 B A)long B)_2Test C)3Dmax D)A.dat 9下列四组选项中,正确的 C语言标识符是(C )。A)%x B)a+b C)a123 D)123 10.请选出可用作 C语言用户标识符的一组标识符(B)A)void B)a3_b3 C)For D)2a define _123 -abc DO WORD sum Case sizeof 11、下列四组字符串中都可以用作 C语言程序中的标识符的是(A)。A、print _3d db8 aBc B、Iam one_half start$it 3pai C、s

5、tr_1 Cpp pow while D、Pxq My-book line#His.age 12.下列 C语言标识符中合法的变量名是 B 。A)2e3 B)you C)*y D)float 13.C 语言中的简单数据类型包括(D )。A、整型、实型、逻辑型 B、整型、实型、逻辑型、字符型 C、整型、字符型、逻辑型 D、整型、实型、字符型 14、下列可以正确表示字符型常量的是(A)。A、t B、”a”C、”n”D、297 15.下列表达式中,D 是正确的 C语言字符常量。A)”x”B)e3 C)”COMPUTER”D)#17.以下选项中合法的字符常量是(B)A)“B”B)n C)68 D)E 1

6、8下面字符常量表示错误的是(D)A)a B)?C)n D)”n”19.已定义 c 为字符型变量,则下列语句中正确的是(C)A)c=97 B)c=97 C)c=a D)c=a 20.已知 ch 是字符型变量,不正确的赋值语句是(A )A)ch=a+b;B)ch=0 ;C)ch=7;D)ch=;;21语言中字符型(char)数据在内存中的存储的是(D )A)原码 B)补码 C)反码 D)ASCII码 22在 C语言中,字符型数据所占的内存空间是(C )A)2个字节 B)4字节 C)1字节 D)由用户自定义 26.C 语言中运算对象必须是整型的运算符是(A )A)%=B)/C)=D)=27.在 C语

7、言程序中,表达式 8/5 的结果是(B )A)1.6 B)1 C)3 D)0 28.设 x 为 int 型变量,则执行以下语句后,x 的值为 B x=10;x+=x;A)10 B)20 C)40 D)30 31.在 C语言程序中,表达式 5%2的结果是 C 。A)2.5 B)2 C)1 D)3 32如果 int a=3,b=4;则条件表达式ab?a:b 的值是_A_。A)3 B)4 C)0 D)1 33若 int x=2,y=3,z=4 则表达式 xz?y:z的结果是(B ).A)4 B)3 C)2 D)0 E)1 34C语言中,关系表达式和逻辑表达式的值是(B )。A)0 B)0或 1 C)

8、1 D)T或F 35设 a,b 和 c 都是 int 型变量,且 a=3,b=4,c=5,则下面表达式中,值为 0 的表达式是(D )A、a&b B、a=b C、a|b+c&b-c D、!(ab)&!c|1)37.下面(D )表达式的值为 4.A)11/3 B)11.0/3 C)(float)11/3 D)(int)(11.0/3+0.5)40.已知字母 A 的 ASCII 码为十进制数 65,且 c2 为字符型,则执行语句c2=A+6-3;后,c2 中的值为 (B )A)68 B)D C)错误 D)d 41下列关于C语言的叙述错误的是(A)A)大写字母和小写字母的意义相同 B)不同类型的变量

9、可以在一个表达式中 C)在赋值表达式中等号(=)左边的变量和右边的值可以是不同类型 D)同一个运算符号在不同的场合可以有不同的含义 42.有:int w=11,x=12,y=3,m;执行下面语句后 m的结果是(C)m=(wx)?w:x;m=(mx)?w:x;m=(my)?m:y;A.12 B.0 C.3 D.1 45.设整型变量 a=2,则执行下列语句后,浮点型变量 b 的值不为 0.5 的是(B)A.b=1.0/a B.b=(float)(1/a)C.b=1/(float)a D.b=1/(a*1.0)48.以下运算符中优先级最高的运算符是(B)A)&B)+C)+=D)!=49.若“int

10、n;float f=13.8;”,则执行“n=(int)f%3”后,n 的值是(A)A.1 B.4 C.4.333333 D.4.6 52.设 x 为 int 型变量,则执行以下语句后,x 的值为(C)x=10;x*=x;A)10 B)20 C)100 D)0 53.若有语句 int a=1,b;double y=2.3;b=(int)y;则 b 的值为(B )A)3 B)2 C)1 D)2.3 54.已知 int x;char y;则下面错误的 scanf 函数调用语句为(B )A)scanf(“%d,%d”,&x,&y);B)scanf(“%d,%c”,x,y)C)scanf(“%d%d”

11、,&x,&y)D)scanf(“%d,%c”,&x,&y)57在 C语言的库函数中,可以输出 char 型变量 x 值的语句是 C 。A)getchar(x);B)fputc(x)C)putchar(x)D)puts(x)60.以下说法正确的是(C)A)x+5是一个错误的表达式 B)C 语言不允许类型的混合运算 C)强制类型转换时,类型说明符必须加括号 D)(int)x+y 和(int)(x+y)是完全等价的表达式 三、选择结构 1.在 C语言中,认为(D )为逻辑真 A)true B)大于0的数 C)非0整数 D)非0的数 2.表示关系 x=y=z 的 c 语言表达式为 A A)(x=y)&

12、(y=z)B)(x=y)AND(y=z)C)(x=y=z)D)(x=y)&(y=10 or a=0|a=10&a=10a=0 4、判断 char 型变量 c1 是否为大写字母的表达式为(D)。A、A=c1=A)&(c1=Z)C、(A=c1)D、c1=A&c1=Z 5.为表示逻辑表达式 79X79)&(X79)!=(X90)C)79X79)|(X0&b&c0”的 值是(A)A.1 B.0 C.-1 D.出错 7.设 a 为整型变量,则不能正确表达数学关系 10a15 的 C 语言表达式是(A )。A.10a10&a15 D.!(a=15)8.设 x,t 均为 int 型变量,则执行语句“x=10

13、;t=x&x10;”后,t 的值为(D)A.不定值 B.10 C.1 D.0 9.若 int i=10;执行下列程序后,变量 i 的正确结果是(A )。switch(i)case 9:i+=1;case 10:i+=1;case 11:i+=1;default:i+=1;A、13 B、12 C、11 D、10 10.在下面的条件语句中(其中 s1 和 s2 表示是 C语言的语句),只有一个在功能上与其它三个语句不等价,它是(D )。A、if(a)s1;else s2;B、if(a=0)s2;else s1;C、if(a!=0)s1;else s2;D、if(a=0)s1;else s2;11.

14、假定所有变量均已正确定义,则下列程序段运行后 y 的值是(A)int a=0,y=10;if(a=0)y-;else if(a0)y+;else y+=y;A.20 B.11 C.9 D.0 12.假定所有变量均已正确定义,则下列程序段运行后 x 的值是(B)。a=b=c=0;x=35;if(!a)x-;else if(b);if(c)x=3;else x=4;A.34 B.4 C.35 D.3 13.C 语言对嵌套 if 语句的规定是:else 语句总是与(D )配对。A)其之前最近的 if B)第一个 if C)缩进位置相同的 if D)其之前最近的且尚未配对的 if 14.在 C语言语句

15、中,用来决定分支流程的表达式是(A)。A可用任意表达式 B.只能用逻辑表达式或关系表达式 C只能用逻辑表达式 D.只能用关系表达式 15.C 语言中用(B )表示逻辑“真”。A.true B.整数值 1 C.非零整数值 D.false 16、若 k 是 int 型变量,且有下面的程序段:int k;k=-3;if (k=0)printf(“#”);else printf(“&”);上面程序段的输出结果是(A )A、#B、&C、#&D、有语法错误,无输出结果 17.main()int x=0,a=0,b=0;switch(x)case 0:b+;case 1:a+;case 2:a+;b+;pr

16、intf(“a=%d,b=%d n”,a,b);该程序的输出结果是 D A)a=2,b=1 B)a=1,b=1 C)a=1,b=0 D)a=2,b=2 18.以下程序的输出结果是:(C )main()int x=-10,y=1,z=1;if(xy)if(yb)a=b;b=c;c=a;printf(a=%2d b=%2d c=%2dn,a,b,c);A)a=10 b=50 c=10 B)a=10 b=30 c=10 C)a=50 b=30 c=10 D)a=50 b=30 c=50 四、循环结构 2.break语句不能出现在(D)语句中 A.switch B.for C.while D.ifel

17、se 4.语句 while(!y);中的表达式!y 等价于 A A)y0 B)y!1 C)y!0 D)y=1 5.若有“int a=1,x=1;”,则循环语句“while(a0);A.是死循环 B.循环执行一次 C.循环执行二次 D.有语法错误 10.下面程序段执行后的结果为:(B)int sum=0,n=10;do sum=sum+n;n+;while(n10)printf(“%d,%d”,sum,n)A.0,10 B.10,11 C.0,11 D.以上结果都不对 11.对以下程序段的叙述正确的是_A_.int x=1;do x=-1*x;while(!x);A)是死循环 B)循环执行一次

18、C)循环执行二次 D)有语法错误 13.执行语句for(j=0;j=3;j+)a=1;后变量 j 的值是 C .A)0 B)3 C)4 D)1 14 有如下程序 main()int i,sum=2;for(i=1;i=3;i+=2)sum+=i;printf(“%d n”,sum);该程序的执行结果是 A A)6 B)3 C)死循环 D)4 16.设 x 和 y 均为 int 型变量,则执行以下的循环后,y 的值为(D)。for(y=1,x=1;y=0)break;if(x%2=1)x+=5;continue;x-=3;A.2 B.4 C.6 D.1 五 数组 1.以下对一维数组 a 的正确说

19、明是:D A)char a(10);B)int a;C)int k5,ak;D)char a3=a,b,c;2.以下能对一维数组 a 进行初始化的语句是:(C )A.int a5=(0,1,2,3,4,)B.int a(5)=C.int a3=0,1,2 D.int a5=10*1 4、已知:int a10;则对 a 数组元素的正确引用是(D )。A、a10 B、a3.5 C、a(5)D、a0 5.执行下面的程序段后,变量 k 中的值为 C A)不定值 B)33 C)30 D)10 int k=3,s2;s0=k;k=s0*10;7.若有以下数组说明,则数值最大的和最小的元素下标分别是(B)。

20、int a12=1,2,3,4,5,6,7,8,9,10,11,12;A.1,12 B.0,11 C.1,11 D.0,12 8.若有以下数组说明,则 i=10;aai元素数值是(C)。int a12=1,4,7,10,2,5,8,11,3,6,9,12;A.10 B.9 C.6 D.5 11.若有说明:int a3=1,2,3,4,5,6,7;则数组 a 的第一维的大小为:(B )A.2 B.3 C.4 D.无确定值 13.下面程序段的输出结果是:(C )int i;int x33=1,2,3,4,5,6,7,8,9;for(i=0;iage D)(*p).age 6.存放 100 个学生的

21、数据、包括学号、姓名、成绩。在如下的定义中,不正确的是(B)。Astruct student int sno;char name20;float score;stu100;B.struct student stu100 int sno;char name20;float score;C.struct int sno;char name20;float score;stu100;D.struct student int sno;char name20;float score;;struct student stu100;9.设有如下定义:struck sk int a;float b;data;

22、int*p;若要使 P 指向 data 中的 a 域,正确的赋值语句是 C A)p=&a;B)p=data.a;C)p=&data.a;D)*p=data.a;10.设有以下说明语句:typedef struct stu int a;float b;stutype;则下面叙述中错误的是(D )。A、struct是结构类型的关键字 B、struct stu是用户定义的结构类型 C、a 和 b 都是结构成员名 D、stutype是用户定义的结构体变量名 八指针 1 语句 int*p;说明了 C 。A)p 是指向一维数组的指针 B)p 是指向函数的指针,该函数返回一 int 型数据 C)p 是指向

23、int 型数据的指针 D)p 是函数名,该函数返回一指向 int 型数据的指针 2.变量的指针,其含义是指该变量的:(B )A.值 B.地址 C.名 D.一个标志 3.若 x 是整型变量,pb 是基类型为整型的指针变量,则正确的赋值表达式是(A )A)pb=&x B)pb=x C)*pb=&x D)*pb=*x 4、已知:int a,*p=&a;则下列函数调用中错误的是(D )。A、scanf(“%d”,&a);B、scanf(“%d”,p);C、printf(“%d”,a);D、printf(“%d”,p);5.对于同类型的指针变量,不可能进行的运算是(C)。A.-B.=C.+D.=6.对于

24、基类型相同的两个指针变量之间,不能进行的运算是 C A)B)=C)+D)-7下列不正确的定义是(A )。A.int*p=&i,i;B.int*p,i;Cint i,*p=&i;D.int i,*p;8.若有说明:int n=2,*p=&n,*q=p,则以下非法的赋值语句是:(D )A)p=q B)*p=*q C)n=*q D)p=n 9.int *p,a=10,b=1;p=&a;a=*p+b;执行该程序段后,a 的值为 C A)编译出错 B)10 C)11 D)12 10有语句:int a10,;则 B 是对指针变量 p 的正确定义和初始化。A)int p=*a;B)int*p=a;C)int

25、 p=&a;D)int*p=&a;11.若有说明语句“int a5,*p=a;”,则对数组元素的正确引用是(C)。A.ap B.pa C.*(p+2)D.p+2 12.若指针变量 p 指向整型数组 a10 的首地址,即 p=a;则下列数组元素ai(0i10)的表示方法中正确的是:(C)A.p+i B.&(a+i)C.*(a+i)D.*(p+i*2)13.有如下程序 int a10=1,2,3,4,5,6,7,8,9,10,*P=a;则数值为 9 的表达式是 B A)*P+9 B)*(P+8)C)*P+=9 D)P+8 14.若有以下定义,则不能表示 a 数组元素的表达式是(B )。int a1

26、0=1,2,3,4,5,6,7,8,9,10,*p=a;A.*p B.a10 C.*a D.ap-a 16.若有以下说明:int a10=1,2,3,4,5,6,7,8,9,10,*p=a;则数值为 4 的表达式是(C )A)*p+4 B)*(p+4)C)*(p+3)D)p+3 17.下面程序的输出结果是 C A)0 B)1 C)2 D)输出错误 main()int a=1,2,3,4,5,6,7,8,9,0,*p;p=a;printf(“%d n”,*p+1);18.执行语句 char c10=”abcd”,*pc=c;后,*(pc+4)的值是(B)A)“abcd”B)0 C)d D)不确定

27、 19下列函数的功能是 A 。void fun(int*p1,int*p2)int p;p=*p1;*p1=*p2;*p2=p;A)交换*p1 和*p2 的值 B)语法正确,但无法交换*p1 和*p2 的值 C)交换*p1 和*p2 的地址 D)有语法错误 九、字符串 1.在 C语言中,以 D 作为字符串结束标志 A)n B)C)0 D)0 2.下列数据中属于“字符串常量”的是(A)。A.“a”B.ABC C.abc0 D.a 3.字符串“ABCD”在内存占用的字节数是(D)。/0 A4 B6 C1 D5 4.下面不正确的字符串常量是:(A )A.PROGRAM B“1212”C“0”D“”7

28、.已知 char x=hello,/0 y=h,e,a,b,e;,则关于两个数组长度的正确描述是 B .A)相同 B)x大于 y C)x小于 y D)以上答案都不对 8.给出以下定义:char x=abcdefg;char y=a,b,c,d,e,f,g;则正确的叙述为 C A)数组 x 和数组 y 等价 B)数组 x 和数组 y 的长度相同 C)数组 x 的长度大于数组 y 的长度 D)数组 x 的长度小于数组 y 的长度 10、已知:char s20=”programming”,*ps=s;则不能引用字母 o 的表达式是(C )。A、ps2 B、s2 C、ps+2 D、ps+=2,*ps

29、16.对字符数组 s 赋值,不合法的是:(C)A)char s=china;B)char s20=china;C)char s20;s=china;D)char s20=c,h,i,n,a;18.下面各语句中,能正确进行赋字符串操作的语句是(C)。A.char s5=“ABCDE”;B.char s5=A,B,C,D,E,0;C.char*s;s=“ABCDE”;D.char*s;scanf(“%s”,&s);十、文件 2.下面各函数中能实现打开文件功能的是 A A)fopen B)fgetc C)fputc D)fclose 4.下列语句中,把变量 fp 说明为一个文件型指针的是(A)。A)

30、FILE *fp;B)FILE fp;C)file *fp;D)file fp;5、在进行文件操作时,写文件的一般含义是(B )。A、将磁盘中的信息存入计算机内存 B、将计算机内存中的信息存入磁盘 C、将计算机 CPU中的信息存入磁盘 D、将磁盘中的信息存入计算机 CPU 6以读写方式打开一个已有的文本文件 file1,并且 FILE*fp,下面 fopen 函数正确的调用方式是(B)。A.fp=fopen(“file1”,“r”)B.fp=fopen(“file1”,“r+”)C.fp=fopen(“file1”,“rb”)D.fp=fopen(“file1”,“w”)二、读程序 基本输入输

31、出及流程控制 1.#include main()int a=1,b=3,c=5;if(c=a+b)printf(yesn);else printf(non);运行结果为:no 2.#include main()int a=12,b=-34,c=56,min=0;min=a;if(minb)min=b;if(minc)min=c;printf(min=%d,min);运行结果为:min=-34 3.#include main()int x=2,y=-1,z=5;if(xy)if(y0)z=0;else z=z+1;printf(“%dn”,z);运行结果为:5 4.#include main()

32、float a,b,c,t;a=3;b=7;c=1;if(ab)t=a;a=b;b=t;if(ac)t=a;a=c;c=t;if(bc)t=b;b=c;c=t;printf(%5.2f,%5.2f,%5.2f,a,b,c);运行结果为:1.00,3.00,7.00 5#include main()float c=3.0,d=4.0;if(cd)c=5.0;else if(c=d)c=6.0;else c=7.0;printf(“%.1fn”,c);运行结果为:7.0 6.#include main()int m;scanf(%d,&m);if(m=0)if(m%2=0)printf(%d is

33、 a positive evenn,m);else printf(%d is a positive oddn,m);else if(m%2=0)printf(%d is a negative evenn,m);else printf(%d is a negative oddn,m);若键入9,则运行结果为:-9 is a negative odd 7.#include main()int num=0;while(num=2)num+;printf(%dn,num);运行结果为:1 2 3 8#include main()int sum=10,n=1;while(n3)sum=sum-n;n+;

34、printf(“%d,%d”,n,sum);运行结果为:3,7 9.#include main()int num,c;scanf(%d,&num);do c=num%10;printf(%d,c);while(num/=10)0);printf(n);从键盘输入 23,则运行结果为:3 2 10#include main()int s=0,a=5,n;scanf(%d,&n);do s+=1;a=a-2;while(a!=n);printf(%d,%dn,s,a);若输入的值 1,运行结果为:2,1 11#include stdio.h main()char c;c=getchar();whi

35、le(c!=?)putchar(c);c=getchar();如果从键盘输入 abcde?fgh(回车)运行结果为:abcde 12#include main()char c;while(c=getchar()!=$)if(A=c&c=Z)putchar(c);else if(a=c&c=z)putchar(c-32);当输入为 ab*AB%cd#CD$时,运行结果为:ABABCDCD 13.#include main()int x,y=0;for(x=1;x=10)break;y=y+x;printf(“%d%d”,y,x);运行结果为:10 5 14.#include main()char

36、 ch;ch=getchar();switch(ch)case A:printf(“%c”,A);case B:printf(“%c”,B);break;default:printf(“%sn”,”other”);当从键盘输入字母 A 时,运行结果为:AB 15.#include main()int a=1,b=0;scanf(“%d”,&a);switch(a)case 1:b=1;break;case 2:b=2;break;default:b=10;printf(%d,b);若键盘输入 5,运行结果为:10 16.#include main()_ char grade=C;switch(

37、grade)case A:printf(“90-100n”);case B:printf(“80-90n”);case C:printf(“70-80n”);case D:printf(“60-70n”);break;case E:printf(“60 n”);default:printf(“error!n”);运行结果为:70-80 60-70 17.#include main()int y=9;for(;y0;y-)if(y%3=0)printf(%d”,-y);continue;运行结果为:852 18.#include main()int i,sum=0;i=1;do sum=sum+

38、i;i+;while(i=10);printf(“%d”,sum);运行结果为:55 19.#include#define N 4 main()int i;int x1=1,x2=2;printf(n);for(i=1;i=N;i+)printf(%4d%4d,x1,x2);if(i%2=0)printf(n);x1=x1+x2;x2=x2+x1;运行结果为:1 2 3 5 8 13 21 34 20#include main()int x,y;for(x=30,y=0;x=10,y10;x-,y+)x/=2,y+=2;printf(“x=%d,y=%d n”,x,y);运行结果为:x=0,y

39、=12 21.#include#define N 4 main()int i,j;for(i=1;i=N;i+)for(j=1;ji;j+)printf();printf(*);printf(n);运行结果为:*数组 1.#include main()int i,a10;for(i=9;i=0;i-)ai=10-i;printf(“%d%d%d”,a2,a5,a8);运行结果为:852 2.#include main()int i,a6;for(i=0;i=0;i-)printf(%3d,ai);运行结果为:5 4 3 2 1 0 3.#include main()int i,k,a10,p3

40、;k=5;for(i=0;i10;i+)ai=i;for(i=0;i3;i+)pi=ai*(i+1);for(i=0;i3;i+)k+=pi*2;printf(%dn,k);运行结果为:21 4.#include int m33=1,2,3;int n33=1,2,3;main()printf(“%d,”,m10+n00);printf(“%dn”,m01+n10);运行结果为:3,0 5.#include main()int i;int x33=1,2,3,4,5,6,7,8,9;for(i=1;i3;i+)printf(%d ,xi3-i);运行结果为:6 8 6.#include mai

41、n()int n33,i,j;for(i=0;i3;i+)for(j=0;j3;j+)nij=i+j;printf(“%d ”,nij);printf(“n”);运行结果为:0 1 2 1 2 3 2 3 4 7#include main()char diamond5=_,_,*,_,*,_,*,*,_,_,_,*,_,*,_,*,_,_,*;int i,j;for(i=0;i5;i+)for(j=0;j5;j+)printf(“%c”,diamondij);printf(“n”);注:“_”代表一个空格。运行结果为:*8.#include main()int i,f10;f0=f1=1;fo

42、r(i=2;i10;i+)fi=fi-2+fi-1;for(i=0;i10;i+)if(i%4=0)printf(“n”);printf(“%d ”,fi);运行结果为:1 1 2 3 5 8 13 21 34 55 9#include“stdio.h”func(int b)int j;for(j=0;j4;j+)bj=j;main()int a4,i;func(a);for(i=0;i4;i+)printf(“%2d”,ai);运行结果为:0 1 2 3 10.#include main()float fun(float x);float ave,a3=4.5,2,4;ave=fun(a);

43、printf(“ave=%7.2f”,ave);float fun(float x)int j;float aver=1;for(j=0;j3;j+)aver=xj*aver;return(aver);运行结果为:ave=36.00 11.#include main()int a23=1,2,3,4,5,6;int b32,i,j;for(i=0;i=1;i+)for(j=0;j=2;j+)bji=aij;for(i=0;i=2;i+)for(j=0;j=1;j+)printf(%5d,bij);运行结果为:1 4 2 5 3 6 12#include f(int b,int n)int i,

44、r;r=1;for(i=0;i=n;i+)r=r*bi;return(r);main()int x,a=1,2,3,4,5,6,7,8,9;x=f(a,3);printf(“%dn”,x);运行结果为:24 13.#includestdio.h main()int j,k;static int x44,y44;for(j=0;j4;j+)for(k=j;k4;k+)xjk=j+k;for(j=0;j4;j+)for(k=j;k4;k+)ykj=xjk;for(j=0;j4;j+)for(k=0;k4;k+)printf(%d,yjk);运行结果为:0,0,0,0,1,2,0,0,2,3,4,0

45、,3,4,5,6 函数 1.#include int Sub(int a,int b)return(a-b);main()int x,y,result=0;scanf(%d,%d,&x,&y);result=Sub(x,y);printf(result=%dn,result);当从键盘输入:6,3 运行结果为:result=3 2.#include int min(int x,int y)int m;if (x y)m=x;else m=y;return(m);main()int a=3,b=5,abmin;abmin=min(a,b);printf(“min is%d”,abmin);运行结

46、果为:min is 5 3.#include func(int x)x=10;printf(“%d,”,x);main()int x=20;func(x);printf(“%d”,x);运行结果为:10,20 4.#include int m=4;int func(int x,int y)int m=1;return(x*y-m);main()int a=2,b=3;printf(%dn,m);printf(%dn,func(a,b)/m);运行结果为:4 1 5.#include int fun(int a,int b)if(ab)return(a);else return(b);main(

47、)int x=15,y=8,r;r=fun(x,y);printf(r=%dn,r);运行结果为:r=15 6.#include int fac(int n)int f=1,i;for(i=1;i=n;i+)f=f*i;return(f);main()int j,s;scanf(“%d”,&j);s=fac(j);printf(%d!=%dn,j,s);如果从键盘输入 3,运行结果为:3!=6 7.#include unsigned fun6(unsigned num)unsigned k=1;do k*=num%10;num/=10;while(num);return k;main()uns

48、igned n=26;printf(“%dn”,fun6(n);运行结果为:12 8.#include int max(int x,int y);main()int a,b,c a=7;b=8;c=max(a,b);printf(Max is%d,c);max(int x,int y)int z;z=xy?x:y;return(z);运行结果为:Max is 8 指针 1.#include main()int x =10,20,30,40,50;int *p;p=x;printf(“%d”,*(p+2);运行结果为:30 2.#include main()char s=”abcdefg”;ch

49、ar*p;p=s;printf(“ch=%c n”,*(p+5);运行结果为:ch=f 3.#include main()int a=1,2,3,4,5;int x,y,*p;p=a;x=*(p+2);printf(%d:%d n,*p,x);运行结果为:1:3 4.#include main()int arr=30,25,20,15,10,5,*p=arr;p+;printf(“%dn”,*(p+3);运行结果为:10 5.#include main()int a=1,2,3,4,5,6;int x,y,*p;p=&a0;x=*(p+2);y=*(p+4);printf(“*p=%d,x=%

50、d,y=%dn”,*p,x,y);运行结果为:*p=1,x=3,y=5 6.#include main()static char a=”Program”,*ptr;for(ptr=a;ptra+7;ptr+=2)putchar(*ptr);运行结果为:Porm 7.#include char s=”ABCD”;main()char*p;for(p=s;ps+4;p+)printf(“%c%sn”,*p,p);运行结果为:A ABCD B BCD C CD D D 结构体 1.#include struct st int x;int y;a2=5,7,2,9;main()printf(%dn,a

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

当前位置:首页 > 教育专区 > 高考资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁