c语言试题及答案_第1页
c语言试题及答案_第2页
c语言试题及答案_第3页
c语言试题及答案_第4页
c语言试题及答案_第5页
已阅读5页,还剩47页未读 继续免费阅读

下载本文档

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

文档简介

1、第1章C语言概述习题1.单项选择题(1)C语言是在B语言的基础上产生的。A.回车符 B.冒号C.逗号D.分号)在C语言中,每个语句必须以D结束。A.回车符 B.冒号C.逗号D.分号标识符和关键字间,要用C隔开。A.回车符 B.冒号C.空格D.分号用C语言编与的源文件经过编译,若没有产生编译错误,则系统将(B )。A. 生成可执行目标文件B. 生成目标文件 C. 输出运行结果 D.自动保存源文件(5)下列说法中正确的是(B )。A. 由于C源程序是高级语言程序,因此一定要在 TC软件中 输入B. 由C源程序是字符流组成,因此可以作为文本文件在任何文本编辑的软件中输入C. 由于C程序是高级语言程序

2、,因此输入后即可执行D. 由于C程序是高级语言程序,因此它由命令组成(6)下列说法中正确的是(A )。A. C语言程序由主函数和0个或多个函数组成 B. C语言程 序由主程序和子程序组成C. C语言程序由子程序组成D. C语言程序由过程组成下列说法中错误的是(D)。A. 主函数可以分为两个部分:主函数说明部分和主函数体B. 主函数可以调用任何非主函数的其他函数C. 任何非主函数可以调用其他任何非主函数D. 程序可以从任何非主函数开始执行2.填空题(1) C语言只有37 个关键字和9种控制语句。 C语言是一种“中级语言”,既具有高级语言的特点又 具有低级语言的特点;既适合于开发系统软件又适合于编

3、写应用程序。(3) 每个源程序有且只有一个丄函数,系统总是从该函数开始执行C语言程序。(4) 在C语言程序中允许出现的字符集是ASCII码字符集C 语言的程序中有特殊含义的英语单词称为保留字。(6) C语言标识符的长度是前_8位有效。(7) C语言中,标识符的定义规则是以字母或下划线为开头_。(8) C语言程序的注释可以出现在程序中的任何地方,它总是以符号作为开始标记,以*/符号作为结束标记。第2章数据类型运算符和表达式习题1. 单项选择题(1) 以下选项中,正确的 C语言整型常量是 _DA.32LB. 510000C. -1.00D. 567以下选项中,D是不正确的C语言字符型常量。A.aB

4、. x41C. 101D. a在C语言中,字符型数据在计算机内存中,以字符的C形式存储。A.原码B.反码C. ASCII码D. BCD 码(4) 字符串的结束标志是C 。A. 0 B. 0 C. 0 D. 0(5) 算术运算符、赋值运算符和关系运算符的运算优先级按从 高到低依次为_B_。A.算术运算、赋值运算、关系运算B.算术运算、关系运算、赋值运算C.关系运算、赋值运算、算术运算D.关系运算、算术运算、赋值运算(6) 逻辑运算符中,运算优先级按从高到低依次为D 。A. &,!,| B. |,& ! C. &,|,! D. !& II 表达式!x|a=b 等效于D 。A. !(x|a)=b)1

5、B. !(x|y)=bC. !(x|(a=b)D. (!x)|(a=b)(8)设整型变量m,n,a,b,c,d均为 1,执行(m=ab)&(n=cd)后,m,n 的值是A。A. 0,0 B. 0,1 C. 1,0 D. 1,1(9)int b=0 ,x=1 ;执行语句if(x+) b=x+1;后,x, b的值依次为A。A. 2,3 B. 2,0 C. 3,0 D. 3,2(10)设有语句int a=3 ;,则执行了语句 a+=a-=a*=a;后,变量a的值是 B。A. 3B. 0 C.9 D. -12(11)在以下一组运算符中,优先级最低的运算符是D。A. *B. != C.+ D.=(12)

6、设整型变量i值为2,表达式(+i)+(+i)+(+i)的结果是B。A. 6B. 12 C.15 D.表达式出错(13) 若已定义x 和y为double 类型,则表达式x=1 ,y=x+3/2的值是_C。(都为整型)A. 1 B. 2 C. 2.0 D. 2.5(14) size of (double) 的结果值是 A 。(表是长度)字节A. 8 B. 4 C. 2 D.出错(15) 设 a=1 , b=2, c=3, d=4,则表达式:ab? a : cd? a : d的结果为_D。A. 4 B. 3 C. 2 D. 1(16) 设a为整型变量,不能正确表达数学关系:10a15的C语言表达式是

7、_A。A. 10a10 & a15D. !(a=15)(17) 设f是实型变量,下列表达式中不是逗号表达式的是D。A. f= 3.2, 1.0 B. f0, f0 D.f=(3.2, 1.0)(18) 设ch是char型变量,其值为A,则下面表达式的值是B。ch=(ch=A& chv=Z)? (ch+32):chA. A B. a C. Z D. Z(19) 以下运算符中,结合性与其他运算符不同的是A 。A. + B. % C. / D. +(20) 以下用户 标识符中,合法的是_B。A. int B. nit C. 123 D. a+b(21) C 语言中,要求运算对象只能为整数的运算符是%

8、。A. % B. / C. D. *(22) PC 机中,n在内存占用的字节数是AOA. 1B. 2C. 3D. 4(23) 字符串ABC在内存占用的字节数是 _B。A. 3B. 4C. 6D. 8(24) 要为字符型变量a赋初值,下列语句中哪一个是正确的B。A. char a=3; B. char a= 3 ; C. char a=%; D.char a=*;(25) 下列不正确的转义字符是_C。A. B. C. 074 D. 02. 填空题(1) C语言中的逻辑值“真” 是用! 0表示的,逻辑值“假”是用_0表示的。(2) 符号常量的定义方法是#define N 10。(3) 无符号基本整

9、型的数据类型符为unsigned int ,双精度实型数据类型符为double,字符型数据类型符为char 。(4) 设 c=w,a=1,b=2,d=-5,则表达式x+1c,y!=c+2,-a-5*b=d+1, b=a=2的值分别为 _d、0 、_1、表达式错误。 设 float x=2.5,y=4.7; int a=7;,表达式 x+a%3*(int)(x+y)%2/4 的值为 2.5。 判断变量a、b的值均不为0的逻辑表达式为(a!=0)&(b!=0)。(7) 求解赋值表达式 a=(b=10)%(c=6),表达式值、a、b、c的值依次为4,4,10,6。(8) 求解逗号表达式x=a=3,6

10、*a后,表达式值、x、a的值依次为 18,3,3。(9) 数学式a/(b*c)的C语言表达式 a/(b*c)。第3章顺序结构程序设计习题1. 选择题(1) printf(f=%3.2f %3.478);的输出结果是A 。A. f=3.48% B. f=3.5% C. f=3.48% % D. f=347.8%(2) printf(%c,%d,a, a);的输出结果是 A 。A. a,97 B. a 97 C. 97,a D. 97 a(3) scanf(%c,&a);若要给变量输入大写字母A,则以下正确的输入是_B_。A. A B. A C.AD.以上都不对 若一个int类型的数据占2字节,则

11、程序段:intx=-1;printf(%u,%d,x,x);的输出结果是 A 。A. 65535, -1 B. -1,65535C. 32767,32768D.32768,32767(5) 在 TC 中,getchar、putchar、printf 、scanf 四个函数,均包含在头文件_B中。A. math.hB. stdio.hC. stbio.h D.stdlib.h(6) 复合语句是用_C括起来的语句组。A. ( ) B. C. D. 下列格式符中,哪一个可以用于以八进制形式输出整数C_。A. %d B. %8d C. %o D. %ld(8) 下列格式符中,哪一个可以用于以十六进制形

12、式输出整数B_。A. %16d B. %8x C. %d16 D. %d(9) a是int类型变量,c是字符变量,下列输入语句中哪一个是错误的_B。A. scanf(%d,%c, &a,& c);B. scanf(%d%c,a,c);C. scanf(%d%c, &a,& c);D.scanf(d=%d,c=%c, &a, &c);(10) 要使double x; long a;的数据能正确的输出,输出语句B.应是_D。A. printf(%d, %f,a, x);printf(%d, %1f,a, x);C. scanf(%1d, %1f,&a, &x);D.printf(%1d, %lf,

13、a, x);2. 程序改错题 ( 以下各个程序段均有 5 个错误,请先找出错误 的位置,然后再改正 )(1) 以下程序的功能是,从键盘输入一个字符并鸣笛输出。 #include stdio.hmian() /main() char c / char c; getchar(c);/c = getchar();putchar(007) ; /*鸣笛 */c=putchar(); /putchar(c);/(2) 以下程序的功能是, 输入长方形的两边长 ( 边长可以取整数 和实数 ) ,输出它的面积和周长。main /main()int a,b, s,l; /double a,b,s,l;scanf

14、(%d,%d,&a,&b); /scanf(%lf,%lf,&a,&b); s=a*b;l= a+b; /l=(a+b)*2; printf(l=%f,s=%fn,l );/printf( l=%lf,s=%lfn ,l,s);3. 写出程序运行结果(1)main()int a,b;scanf(%2d %*2s%2d,&a,&b); printf(%dn,a+b);运行时输入:输出 :68(2)main()int a=3,b=5,x,y;x=a+1 , b+6; y=(a+1, b+6);printf(x=%dny=%dn,x,y);输出: x=4y=11第 4 章 选择结构程序设计习题1.

15、单项选择题(1) 选择结构程序设计的特点是B。A.自上向下逐个执行 B.根据判断条件,选择其中一个分支执行C.反复执行某些程序代码D.以上都是(2) 假定所有变量均已正确定义,下列程序段运行后x的值是B Oa=b=c=O, x=35;if(!a) x-; else if(b); if(c) x=3; else x=4;A. 34 B. 4 C. 35 D. 3(3) 下面的程序片段所表示的数学函数关系是A oif(x0) y=1;else y=0;(4) 下列各语句序列中,能够且仅输出整型变量a、b中最大值的是(C ) OA. if(ab) printf(%dn,a); printf(%dn,

16、b);B. printf(%dn,b); if(ab) printf(%dn,a);C. if(ab) printf(%dn,a); else printf(%dn,b);D. if(a0) y=1;else if(x=O) y=0;else y= 1;printf(%d,y);A. 1 B. 5 C. 0 D. 2(6) 程 序 段 int x=5,y=8,max; max=(xy)?x:y;printf(%d,max);的输出结果是B 。A. 5 B. 8 C. 3 D. 13(7) 程序段 int x=3,a=1;switch(x) case 4: a+;case 3:a+;case 2

17、: a+;case 1: a+; printf (%d,a);的输出结果是 D。A. 1 B. 2 C. 3 D. 4(8) 下列语句应将小写字母转换为大写字母,其中正确的是(B )。A.if(ch=a&chv=z) ch=ch-32;B. if(ch=a&ch=a&cha&chvz)?ch-32:ch;2. 阅读程序,写出运行结果(1)if(ab) a=b ;void main()if(ac) a=c ;int a=10, b=4, c=3;printf(%d, %d,%dn, a,b, c);输出: 10,4, 3(2) void main ( ) int x=100, a=10, b=2

18、0, ok1=5, ok2=0;(3)int k,a=1,b=2; k=(a+=b) ? 2:3; printf(%d,k);输出: 3(4) void main() int s=1,k=0;switch (s)case 1: k+=1; case 2: k+=2; default: k+=3;if(ab) if(b!=15) if(!ok1) x=1;else if(ok2) x=10;else x=-1;printf(%dn, x);输出: -1 ;printf( “%d” ,k); 输出: 6(5) void main() int s=1,k=0;switch (s)case 1: k+

19、=1;break; case 2: k+=2;break; default: k+=3;printf( “%d” ,k); 输出: 1第5章循环结构程序设计习题1.单项选择题for(i=1;i9;i+=1);该循环共执行了 _B次A. 7 B. 8 C. 9 D. 10int a=2;while(a=0) a-;该循环共执行了A 次。A. 0 B. 1 C. 2 D. 3 执行完循环for(i=1;i100;i+); 后,i的值为_B_A. 99 B. 100 C. 101 D. 102以下for语句中,书写错误的是D 。A. for(i=1;i5;i+); B. i=1;for(;i5;i+

20、);C. for(i=1;i5;) i+;D. for(i=1,i5,i+);(5) _C语句,在循环条件初次判断为假,还会执行一次循环体A. for B. while C. do-while D.循环结构的特点是C 。A.从上至下,逐个执行B.一个分支C.满足条件时反复执行循环体以上都不是根据判断条件,执行其中D. 以上都对(7) i 、j已定义为int类型,则以下程序段中内循环体的执行次数是 A.for(i=5;i;i-)for(j=0;j4;j+)A. 20 B. 24 C. 25 D. 30(8) C 语言 while语句中,用于条件的表达式是D。A.关系表达式B.逻辑表达式C.算术表

21、达式D. 任意表达式(9) int a=1, x=1;循环语句 while(a10) x+; a+;的循环执行D 。A.无限次 B.不确定次 C. 10次D. 9次(10)卜列程序段执行后s的值为A。int i=1, s=0; while(i+)if(!(i%3) break ; else s+=i ;A. 2 B. 3 C. 6D.以上均不是2.填空题(1)三种循环语句是等价价的。当循环体中的switch语句内有break语句,则只跳出swicth 语句。同样,当switch语句中有循环语句,内有 break 语句,则只跳 出 循环 语句。(3) 循环体执行遇到continue 语句时跳过本

22、次循环进入下次循环。(4) 下列程序的功能是输入一个正整数,判断是否是素数,若为素数 输出1,否则输出0,请为程序填空。void main()int i, x, y=1;scanf(%d, &x);for(i=2; iv=x/2; i+)if ( x%i=0 ) y=0; break; printf(%dn,y);(5) 输入N个实数,输出其中的最大值、最小值#include void main()int n,i;float no1,nmax,nmin;scanf(%d,&n); scanf(%f,&no1);nmax=no1;nmin=no1 ;for(i=2;inmax) nmax=no1

23、;if(no1nmin) nmin=no1;printf(MAX=%f MIN=%fn,nmax,nmin);(6) 输入若干个字符,分别统计数字字符的个数、英文字母的个数,当输入换行符时输出统计结果,运行结束#include void main()char ch;int s1=0,s2=0 ;while( ch=getchar() )!=n)if(ch=0&chv=9) s1+;)s2+;if(ch=a&ch= A |ch0; y-)if(y%3=0) printf(%d,continue;int k,n,m;n=10;m=1;k=1;输出: 1024(3) void main ( ) in

24、t i=5;doswitch (i%2)case4: i-;break;case6: i-;continue;i- ; i- ;printf(i=%d ,i); while(i0);输出: i=3 i=1 i=-1(4) #include void main( )doswitch(c+)case A: k+; break;case B: k-;caseC:k+=2;break;caseD: k=k%2;break;case E: k=k*10;break;default: k=k/3;k+;while(cG);printf(k=%dn, k);输出: 8(5) 输入数据: 2,4int k=0

25、; char c=A;#include void main()int s=1,t=1,a,n;t=t*1O+1; s=s+t;s*=a;printf(n);int iprintf(SUM=%dn,s);scanf(%d , %d,&a,&n);for(i=1;in;i+) 输出:24684.程序改错(1)以下程序是显示200 , 300所有能被7整除的数,每行显示 5个数,此程序有5处错main()int i,n=0; /*n用来记录每行已打印数的个数*/while(i300) while(i = 200) i+;if(i%7=0) if(i%7!=0)break; /continue;pri

26、ntf(%5d,i);n=n+1;if(n=5)/* 满 5 个换行 */ if(n = 5)n=0;(2) 以下程序是求1!+2!+3!+4!+5!+6!+7!的值,其中有 3处错误。main()int i,s,t=O; /long s = 0,t = 1;int i;for(i=1;i=7;i+)s=0; / 去掉该语句t=t*i;s=s+t;printf(sum=dn,s); printf(“sum=%lc” ,s);第6章函数习题1. 单项选择题(1) C语言总是从_A函数开始执行。A. main B.处于最前的C.处于最后的 D. 随机选一个(2) 函数在定义时,省略函数类型说明符,

27、则该函数值的类型为A。A. int B. float C. long D. double(2)以下B函数,真正地没有返回值。A. int a()int a=2;return (a);B.voidb()printf(c);D.以上都是C. int a()int a=2;return a;在C语言中,有关函数的说法,以下正确的是_CB.函数可嵌套定义,D.函数不可嵌套定义,A.函数可嵌套定义,也可嵌套调用 但不可嵌套调用C.函数不可嵌套定义,但可嵌套调用也不可嵌套调用以下函数调用语句中,含有实参的个数为_B。 7fun(2,3),(4,5+6,7);A. 1 B. 2 C. 5 D. 6函数调用可

28、以在_D。A.函数表达式中B.函数语句中C. 函数参数中D.以上都是(6) 被调函数返回给主调函数的值称为C 。A.形参 B. 实参 C. 返回值 D. 参数(7) _D,可以不进行函数类型说明。A.被调函数的返回值是整型或字符型时B.被调函数的定义在主调函数定义之前时C.在所有函数定义前,已在函数外预先说明了被调函数类型D.以上都是(8) 被调函数通过_D语句,将值返回给主调函数。A. if B. for C. while D. return(9) 被调函数调用结束后,返回到_B。A. 主调函数中该被调函数调用语句处B. 主函数中该被调函数调用语句处C. 主调函数中该被调函数调用语句的前一语

29、句D. 主调函数中该被调函数调用语句的后一语句(10) 以下对C语言函数的有关描述中,正确的是A 。A. 在C中,调用函数时,只能把实参的值传送给形参,形参的值不 能传送给实参B. C函数既可以 嵌套定义 又可递归调用C. 函数必须有返回值,否则不能使用函数D. C程序中有调用关系的所有函数必须放在同一个源程序文件中(11) C语言中函数的隐含存储类型是A 。A. auto B. static C. extern D.无存储类型(12) 能把函数处理结果的两个数据返回给主调函数,在下面的方法中不正确的是_A。A. return 这两个数B.形参用两个元素的数组C.形参用两个这种数据类型的指针D

30、.用两个全局变量2. 填空题(1) 变量的作用域主要取决于变量定义的位子,变量的生存期既取决于变量存储类型,又取决于变量存储方式(2) 说明变量时,若省略存储类型符,系统默认其为整形 存储类别,该存储类别的类型符为:int 。(3) 静态型局部变量的作用域是_静态局部变量定义的复合语句或函数体内 生存期是整个程序运行期内_。(4) 函数中的形参和调用时的实参都是数组名时,传递方式为 _地址传递 ,都是变量时,传递方式为值传递。函数的形式参数的作用域为整个函数体内,全局的外部变量和函数体内定义的局部变量重名时,_函数体内定义的局部变量优先。(6) 若自定义函数要求返回一个值,则应在该函数体中有一

31、条return语句,若自定义函数要求不返回一个值,则应在该函数说明时加一个类型说明符void。(7) 若函数的形式参数是指针类型,则实参可以是数组名 、地址 或 扌旨针变量 。(8) 函数的参数为char *类型时,形参与实参结合的传递方式为地址传递。(9) 函数的实参为常量时,形参与实参结合的传递方式为值传递。(10) 对数组按值从大到小的顺序排序后输出,请填空。#include void main()float a7=2,6,3,8,3,12,9;int ivoid sort(float*,int);sort (a,7 );for(i=0;i7;i+) printf(%f ,ai);pri

32、ntf(n);void sort( float *p, int n )int i,j,k; float t;for(i=0;in-1;i+)k=i;for(j=i+1;jvn;j+)if( pkpj ) k=j;if(k != i) t=*(p+i); *(p+i)=*(p+k); *(p+k)=t; (11) 下列函数在n个元素的一维数组中,找出最大值、最小值并 传送到调用函数,请填空。#include void find(float *p, float *max, float *min, int n)int k;float t;*max=*p; *min 二 *p;for(k=1;k*ma

33、x ) *max=t; if(t*min) *min=t;3. 写出下列程序运行结果:(1)main()int i=1,p;p=fun(i,i+1);printf(%dn,p);int fun(int a,int b)int f;(2) 键盘输入 abcdef#include if(ab)f=1;else if(a=b)f=0;elsef=-1;return f;输出:-1char c ;void fun()if(c=getchar( )!=n)printf(%dn, fun6(n);输出:12fun( ) ;putchar(c);void main( ) fun( ); 输出: fedcba

34、(3)#include #define C 5int x=1,y=C; void main( )int x;x=y+; printf(%d %dn, x,y);if(x4) int x ; x=+y; printf(%d %dn,x,y) ; x+=y-;printf(%d %dn,x,y);(4)int c , a=4 ;func(int a , int b) c=a*b ; a=b-1 ; b+ ; return (a+b+1) ; void main( )int b=2 , p=0 ; c=1 ;p=func(b , a) ; printf(%d,%d,%d,%dn,a,b,c,p) ;

35、输出: 4,2,8,9(5)unsigned fun6(unsigned num)unsigned k=1;do k*=num%10; num/=10; while(num);return k;void main( )unsigned n=26;#include 输出:5 67 712 6第7章数组习题1. 单项选择题(1) int a4=5,3,8,9; 其中 a3的值为(D )。A. 5 B. 3 C. 8 D. 9(2) 以下4个字符串函数中,(A )所在的头文件与其他3个不同。A. getsB. strcpyC. strlenD. strcmp(3)以下4个数组定义中,(D ) 是错误

36、的。A. int a7;B.#defineN 5 long bN; C.char c5;D. int n,dn;(4)对字符数组进行初始化,(B ) 形式是错误。A. char c1 =1,2,3;B.charc2 =123;C. char c3 =1,2,3,0;D. charc4 =123;在数组中,数组名表示(A)。A.数组第1个兀素的首地址B.数组第2个兀素的首地址C.数组所有兀素的首地址D.数组最后1个兀素的首地(6) 若有以下数组说明,则数值最小的和最大的元素下标分别是(B )。int a12 = 1,2,3,4,5,6,7,8,9,10,11,12;A. 1,12 B. 0,11

37、 C. 1,11 D. 0,12(7) 若有以下说明,则数值为 4的表达式是(D )。int a12 =1,2,3,4,5,6,7,8,9,10,11,12; charc= a, d,g ;A. ag-c B. a4C. ad-c D. ad -c(8) 设有定义:char s12= string ; 则printf( %dn,strlen(s);的输出是(A )。A. 6 B. 7 C. 11 D. 12(9) 设有定义:char s12 = string;贝U printf(%dn ,sizeof(s);的输出是(B )。A. 6 B. 7 C. 11 D. 12(10) 合法的数组定义是

38、(A )。A. char a = string; B. int a5 =0,1,2,3,4,5;C. char a=string ; D. char a =0,1,2,3,4,5;(11) 合法的数组定义是(B )。A. int a3=0,1,2,3,4,5; B.int a 3=0,1,2,3,4;C. int a23=0,1,2,3,4,5,6;D. inta23=0,1,2,3,4,5,;(12) 下列语句中,正确的是(D )。A. char a3=abc,1; B. char a 3=abc,1;C. char a3 =a, 1; D. char a 3 = a, 1;(13) |下列

39、定义的字符数组中,输出printf(%sn, str2);的输出是(C)。static str320 = basic, foxpro, windows;A. basic B. foxproC. windows D.输出语句出错(14) 下列各语句定义了数组,其中哪一个是不正确的(C )。A. char a310=China,American,Asia;B. intx22=1,2,3,4;C. float x2 =1,2,4,6,8,10;D.intm3=1,2,3,4,5,6;(15) 数组定义为int a32=1,2,3,4,5,6,值为6的数组元素是(B )。A. a32B. a21C.

40、a12D.a232. 填空题(1) C语言中,数组的各元素必须具有相同的类型 ,元素的下标下限为0_,下标必须是正整数、0、或者常量。但在程序执行过程中,不检查元素下标是否越界_。(2) C语言中,数组在内存中占一片 _连续 的存储区,由数组名 代表它的首地址。数组名是一个字符 常量,不能对它进行赋值运算。后,b4=(3) 执行 static int b5, a 3 =1,2,3,4,5,6;0, a12 =6 设有定义语句 staticint a34=1,2,3;则a10值为 2,a11值为0, a21的值为0。(5)如定义语句为char a = windows,b = 2000;,语句pr

41、intf(%s,strcat(a,b);的输出结果为 windows2000。 输入20个数,输出它们的平均值,输出与平均值之差的绝对值为最小的数组兀素。请填空。#include s=fabs(a0-pjz);#include for(i=1;i20;i+)void main()if(fabs(ai-pjz)s) float a20,pjz=0,s,t; inti,k;s=fabs(ai-pjz);for(i=0;i 20;i+)t=ai;scanf( “ f” ,&ai);for(i=0;i20;i+)pjz+=ai;printf(“ %f,%f” ,pjz,t);pjz/=20;(7)以下

42、程序以每行10个数据的形式输出a数组,请填空void main()int a50,i;printf(”输入50个整数:);for(i=1; i=50; i+) if( i%10=0 )printf( %3dn , ai-1 ) ;else printf( %3d,ai-1);(8)下面程序的功能是输出数组s中最大元素的下标,请填空void main()int k, p;int s = 1,-9, 7, 2,-10, 3;for(p=0,k=p; p sk) k = p ;printf(%dn ,k);3阅读程序,分析程序的功能。for(i=0; i80; i+)(1)#include #inc

43、lude void main()char s80;int i ; si=getchar(); if(si=n) break;si=0; i=0; while(si) putchar(si+);putchar( n);分析:输入一个字符串,以回车结束,并将其原样输出。#include #include void main()char str1080, c80;int i;for(i=0;i10;i+)gets(stri);#include #include void main()char a1080, c80; int i, j, k;for(i=0; i10; i+)gets(ai);for(

44、i=0; i9; i+)strcpy(c, str0);for(i=1; i10; i+)if(strlen(c)strlen(stri) strcpy(c,stri); printf( %sn, c);printf(%dn, strlen(c);分析:输入10个字符串,输出10 个字符串中最长的字符串和它的 长度。for(j=i+1; j10; j+)if(strcmp(aj,ak)0)k=j;if(k!=i)strcpy(c,ai);strcpy(ai, ak); strcpy(ak,c); / 字符串交换k=i;for(i=0; i10; i+)puts(ai);分析:输入10个字符串,

45、用选(4) 阅读程序,写出运行结果。#include void main()int a6=12,4,17,25,27,16intb6=27,13,4,25,23,16,i,j;for(i=0;i6;i+) for(j=0;j6;j+)if(ai=bj)break;if(j6)printf(%d ,ai);printf(n);分析:按数组 a中元素顺序输出 与数组b中元素相同的数。输出:4,25,27,16(5) 阅读程序,写出运行结果。择排序算法将10个字符串按从小到大顺序排列并输出。void main()char a8,temp; int j,k;for(j=0;j7;j+)aj=a+j; a7=0;for(j=0;j0;k

温馨提示

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

评论

0/150

提交评论