


版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第一章数据类型与表达式一. 知识点I. C语言的特点:语言简洁、紧凑,使用方便、灵活;运算符丰富;数据结构丰富;具有结构化控制语句; 语法限制不太严格,程序设计自由度大; 可以进行位操作,能实现汇编语言的大部分功能,能直接对硬件进行操作; 生成的目标代码质量高,程序执行效率高;程序的移植性好。2 . C程序的组成:C程序是由函数构成的;一个函数包括函数的首部(即函数的第一行)和函数体(即花括号部分);函数体一般包括声明部分和执行部分;一个C程序总是从 main函数开始执行,从 main函数结束;C程序书写格式自由,一行内可以写几个语句,一个语句可以分写在多行上;每个语句和数据定义的最后必须有一
2、个分号;C语言本身没有输入输出语句,是通过函数实现输入输出的;可以用/*/对C程序的任何部分作注释。3 . C语言程序的运行:源程序文件的扩展名为.c,目标程序文件的扩展名为.obj,可执行程序文件的扩展名为.exe。4 . C的数据类型:基本、构造、指针和空类型,char、int、short、Io ng、un sig ned、float、double、enum、struct、union、typedef。5常量与变量的概念,注意符号常量的定义与使用;6 整型、实型、字符型常量的表示,注意整型常量的十进制、八进制、十六进制的书写。7 变量的定义,C的标识符包括关键字、预定义标识符、用户定义标识符
3、;用户定义标识 符的可用字符为字母、数字、下划线,第一个字符为字母或下划线。8 .常见数据类型的取值范围,int为-32768+32767 , unsigned int为065535。9 转义字符:n、t、b、r、f、' ”、ddd、xhh10 不同数值型数据的混合运算,低级类型转换为高级类型运算II. C的运算符:注意结合方向和运算的优先级12 .算术运算符:+、-、*、/、%、+、-,注意自加、减运算符分前缀和后缀两种方式。其中前缀方式为先自加、减,后引用;后缀方式为先引用,后自加、减;运算符%要求运算量为整数,运算结果也为整数。注意除运算时,若运算量为整型时,其运算结果也是整型
4、的规则。13 .赋值类运算符:=、+=、-=、*=、/=、%=,注意含义和数据类型的转换。14 .逗号运算符的使用,注意逗号运算符的运算规则。二. 练习.填空题:1.在TURBO C环境中用RUN命令运行一个 C程序时,所运行的程序的后缀是.exe 。2 . C语言源程序文件的后缀是_,经过编译后,生成文件的后缀是 .obj ,经过连接后,生成文件的后缀是 .exe 。3 结构化程序由顺序、 选择(分支) 、 循环 三种基本结构组成。4 .若k为整型变量且赋值11。请写出运算k+后表达式的值11 和变量的值12。5 .若x为double型变量,运算x=3.2 , +x后表达式的值 4.2 和变
5、量的值4.2。6 .函数体由符号 丄开始,用符号 _结束。函数体的前面是定义 部分,其后是 执行 部分。7 . C语言中的标识符可分为关键字、用户标识符和预定义标识符三类。8 .在C语言程序中,用关键字int定义基本整型变量,用关键字float定义单精度实型变量,用关键字 double定义双精度实型变量。9 .把a1、a2定义成单精度实型变量,并赋初值1的定义语句是float a1=1.0,a2=1.0;。10 . C程序中定义的变量,代表内存中的一个存储空间。11.表达式3.5+1/2的计算结果是 3.5。a . b12 .写出数学表达式三个等价的 C语言表达式 a*b/(c*d)、a /(
6、c*d)*b、b/(c*d)*a。cd13 .通常一个字节包含 _8 个二进制位。14 .当计算机用两个字节存放一个整数时,能存放的最大(十进制)整数是216-1(65535)、最小(十进制)整数是-215 (-32768)。15 .在C语言中整数可用 十 进制数、八 进制数和 十六 进制数三种数制表示。16 . C语言中,int型数据占 2 个字节,long型数据占 4 个字节,unsigned int型数 据占2个字节,short型数据占_2_个字节,float型数据占_4_个字节,double型数据占 8_个字节,char型数据占 1个字节。.选择题1 .组成C语言程序的是()(C)。A
7、.子程序B .过程C.函数D.主程序和子程序2 .以下叙述中正确的是()(C)。A. 在C程序中无论是整数还是实数,只要在允许的范围内都能准确无误的表示。B. C程序由主函数组成。C. C程序由函数组成。D. C程序由函数和过程组成。3 .以下选项中正确的整型常量是()(B)。A . 12.B . -20C . 1 , 000D. 4564 .以下选项中正确的实型常量是()(D)。A . 0B . 3.1415 C . 0.329 X102D . .8715 .以下选项中不合法的用户标识符是()(C)。A . _123B . printf C . A$D . Dim6 . C语言中运算对象必须
8、是整型的运算符是()(A)。A . %B . /C. !D . *)(B)。7 .可在C程序中用作用户标识符的一组标识符是 精品文档D. a=a+7=c+b9 .不合法的八进制数是(A . 0B . 02810 .不合法的十六进制数是(A . oxffB . OXabc.程序设计题:1 .编写一个C程序,输入a、A. voidB. as_b3C. ForD. 2cdefi ne_123-abcDOWORDIfcaseSIG8 .若变量已正确定义并赋值,符合C语言语法的表达式是()(B)。A. a=a+7 ;B. a=7+b+c , a+C . int (12.3%4 )(B)。C. 077D.
9、 01)(A)(零 X)。C. 0x11D. 0x19b、c三个数,输出其中最大者。#in clude<stdio.h> void mai n()i nt a,b,c,max;printf( input 3 num:n ”;scanf( %d%d%d ':&a,&b,&c);max=a; if(b>max)max=b; if(c>max)max=c; printf( %d ”,max);第二章算法与顺序结构一.知识点1 .算法:为解决一个问题而采取的方法和步骤。2 .算法的分类:数值算法、非数值算法。3 .算法的特点:有穷性、确定性、有零
10、个或多个输入、有一个或多个输出、有效性。4 .算法描述方法:自然语言、流程图、改进流程图、N S流程图、伪代码、计算机语言。5 . C语句的类型:控制语句、函数调用语句、表达式语句、空语句、复合语句。6 .输入输出的概念:输入输出是相对主机而言,C语言是由函数来实现输入输出的。7. 字符数据的输入/输出:getchar ()、putchar ()8. 格式输入 /输出:scanf ()、printf ()9 . printf 的格式符: d、i, o, x、X, u , c, s, f, e、E, g、G; l, m , n,-。10 . scanf 的格式符:d、i, o , x、X, u,
11、 c, s, f, e、E , g、G; l, m , *; &。注意输入数据时数据流的分隔符,系统默认的分隔符为空格、tab键和回车。11.顺序结构的设计思想:声明变量、输入数据、处理、输出结果。二.练习.填空题i=-2ao1 以下程序段执行后的输出结果是:一200 2500int i=-200 , j=2500 ;printf (" %d %d), i, j);printf (" i=%d , j=%dn ”,i, j);printf (" i=%dn j=%dn ”,i, j); i=-200,j=2500 12 复合语句在语法上被认为是一条语句。空
12、语句的形式是;3 C语句的最后用_结束。4 以下程序段的输出结果是x= 127,x=177,x=7f,x=127。int x=0177 ; printf (“x=%6d , x=%6o , x=%6x , x=%6un ”,x, x, x, x);5 以下程序段的输出结果是 a=513.789215,a=513.79,a=513.78921500,a=531.78921500 。double a=513.789215 ;printf (“a=%8.6f , a=%8.2f , a=%14.8f , a=%14.8lfn ”,a, a, a, a);6 以下程序段的输出结果是8, 3。a=3+5
13、 , a*4 ; x=11/3 ; printf (“ %d , %dn ”,a, x);7 .以下程序输入三个整数值给a、b、c,程序把b中的值给a,把c中的值给b,把a中的值给c,交换后输出a、b、c的值。请填空:#in clude <stdio.h>main () int a , b, c, m ;printf (“Enter a , b, c:");scanf (“ %d , %d , %d),&a,&b,&c );m=a ; a=b; b=c; c=m ;printf ("a=%d , b=%d , c=%dn ”,a, b,
14、c); 8 .以下程序不借助任何变量把a、b中的值进行交换。请填空:#in clude <stdio.h>main () int a , b;printf (" In put a , b:");scanf (“ %d , %d),&a,&b );a+= b ; b=a- _b_; a=a- b_;printf ("a=%d , b=%dn ”,a, b); 选择题:1 .若a、b、c、d都是int型变量且初始值为 0,下列不正确的赋值语句是()(C)。A a=b=c=100 ;B d+ ;C c+b ;D d= (c=22 ) - (b
15、+ );2 .以下选项中不是 C语句的是()(C)。A int i ; i+ ; printf (“dn ”,i); BC a=5 , c=10D ; 精品文档3 以下合法的 C 语言赋值语句是( )(D) 。A a=b=58B k=int (a+b );C a=58 ,b=58D -i;4以下程序的输出结果是() (C) 。A . 0B . 1C . 3D.不确定的值main () int x=10 , y=3 ; printf (“ %dn ”, y=x/y ); 5若变量已正确说明为 int 类型,要给 a、b、c 输入数据,正确的输入语句是()D。A read (a,b,c);B sc
16、anf (“%d%d%d ”,a, b,c);C scanf (“%D%D%D ”,&a ,&b ,&c );D scanf (“ %d%d%d ”, &a , &b , &c );6若变量已正确定义,要将 a 和 b 中的数进行交换,下面不正确的语句组是()C。A a=a+b , b=a-b , a=a-b ;B t=a , a=b , b=t ;Ca=t ;t=b ; b=a ;Dt=b;b=a ;a=t;7若变量已正确定义,以下程序段的输出结果是()D。A 输出格式说明与输出项不匹配,输出无定值B 5.1700C 5.16800D 5.16
17、900x=5.16894 ;printf(“%fn”,(int)(x*1000+0.5 )/(float ) 1 000 );int c1=1 ,c2=2,c3;c3=c1/c2 ;9 执行以下程序段后,其输出结果是()B。A 0 , 0 , -10B0,0,3C-10,3,-108 执行以下程序段后,c3 中的值是() A。A0B1/2C0.5D1D 3 , 3 , -10int a=0 ,b=0,c=0; c= ( a-=a-5 ),( a=b , b+3 ); printf (“%d ,%d,%dn ”,a,b,c);I 0 以下程序的输出结果是()D。A a=%2 , b=%5B a=
18、2 ,b=5C a=%d , b=%dD a=%d ,b=%dmain () int a=2 , b=5 ; printf (“ a=%d , b=%dn ”,a, b); II 若 int 型占两个字节,以下程序段的输出是()D。A -1 , -1B -1 , 32767C -1 , 32768D -1 ,65535int a=-1 ; printf (“ %d, %un ”, a, a);12以下程序段的输出结果是() C。A |3.1415|B |3.0|C |3|D |3.|float a=3.1415 ; printf (“|%6.0f|n ”,a);13 以下程序段的输出结果是()
19、 B。A9 8B8 9C6 6D 以上三个都不对#include <math.h> main () double a=-3.0 ,b=2 ;printf (“ %3.0f%3.0fnpow ( b, fabsa),pow (fabs (a),b);A .赋值不合法B .输出值为-2C .输出为不确定值D .输出值为2a=-2L ; printf (“%dn ”,a);15.若有定义 char s= 092 ';则该语句( )B。A使 s 的值包含 1 个字符B定义不合法,s 的值不确定C使s 的值包含 4 个字符D使 s 的值包含3 个字符16若k、g均为int型变量,则下
20、列语句的输出为() D 。A15B16C15D166f70716fk=017 ; g=111 ;printf(“ %dn ”, +k ); printf(“ %xn ”, g+17.已知字母 a 的 ASCII 十进制代码为 97 ,执行下列语句后的输出为()C。A. b,cB. a-运算不合法,故有语法错误C . 98 , cD .格式描述和输出项不匹配,输出无定值char a= a'; a-;printf (“ %d,%cn ”, a+2'-0', a+3'-0');1 8 下列程序的输出为()A。A 27.000000B 27.500000C 28
21、.000000D 28.500000#include <stdio.h>main () int m=7 , n=4 ;float a=38.4 ,b=6.4 , x;x=m/2+n*a/b+1/2 ; printf (“ %fn ”, x); 14 若 a 为整型变量,则以下语句()B。19 .下列程序的输出结果是( )C。A. 18B. 9C. -18D. -9main () int a=9 ;a+=a-=a+a ; printf (“ %dn ”, a); 20.下列程序的输出结果是()A。A . 0B . 5C . 1D.不确定值main () int a=7 , b=5 ;
22、 printf (“ %dn ”, b=b/a );21 下列程序的输出结果是()C。A12B11C10D9main () int a=011 ;printf (“ %dn ”, +a );程序设计题 :用 N S 图表示下列问题:1 .有两个瓶子 A和B,分别盛放醋和酱油,要求将它们互换。编写程序2依次将 10 个数输入,要求将其中最大的数打印出来。#include <stdio.h>main()int i,a,max;scanf("%d",&max);for (i=1;i<=9;i+) scanf("%d",&a);
23、if (a>max) max=a;printf("%d",max);3 .有3个数a、b、c,要求按从大到小的顺序把它们打印出来。 main()float a,b,c,t;scanf("%f,%f,%f",&a,&b,&c);if(a>b)t=a;a=b;b=t; /* 实现 a 和 b 的互换 */if(a>c)t=a;a=c;c=t; /* 实现 a 和 c 的互唤 */if(b>c)t=b;b=c;c=t; /* 实现 b 和 c 的互换 */ printf("%5.2f,%5.2f,%5.
24、2fn",a,b,c);4 .求1+2+3+100。(重点看)#include <stdio.h>int main()int i,sum=0;i=1;while(i<=100)sum=sum+i;i=i+1;printf( “%d ”,sum);5 .判断一个数 n 能否同时被 3 和 5 除。 include <stdio.H>main(void)int n;scanf("%d",&n) ;if(n%3 = 0 && n%5 = 0)printf("%d 能否同时被 3 和 5 整除 n"
25、,n);elseprintf("%d 不能否同时被 3 和 5 整除 n",n);return 0;6 .将100200之间的素数打印出来。#include <stdio.h>int isPrime(int n)int i;for(i=2;i*i<=n;i+)if(n%i=0)return 0;return 1;int main()int i;for(i=100;i<=200;i+)if(isPrime(i)printf("%dn",i);7.求两个整数 m 和 n 的最大公约数和最小公倍数。main()int a,b,num1,
26、num2,temp;printf("please input two numbers:n");scanf("%d,%d",&num1,&num2);if(num1 temp=num1;num1=num2;num2=temp;a=num1;b=num2;while(b!=0)/* 利用辗除法,直到 b 为 0 为止 */精品文档 8 temp=a%b; a=b; b=temp;printf("gongyueshu:%dn",a); printf("gongbeishu:%dn",num1*num2/a
27、);28求方程 ax 2+bx+c=0 的根#include <stdio.h>#include <math.h> / 用到平方根函数void main()float a,b,c,x1,x2,p,q,m; scanf("%f%f%f",&a,&b,&c);if (a=0.0)&&(b=0.0)&&(c ! =0.0)printf( “ no value!");else if (a=0.0)&&(b=0.0)&&(c=0.0) printf("a
28、ny value!");else if (a=0.0)&&(b!=0.0)printf("x1=x2=%f",-c/b);elsem=b*b-4.0*a*c;if(m>=0) x1=(-b+sqrt(m)/(2.0*a);x2=(-b-sqrt(m)/(2.0*a);printf("x1=%fn",x1);printf("x2=%fn",x2);else p=-b/(2.0*a);q=sqrt(-m)/(2.0*a);printf("x1=%f+%fin",p,q);printf(&
29、quot;x2=%f-%fin",p,q);9编写程序,输入两个整数 1500 和 350 ,求出它们的商和余数并进行输出。 #include <stdlib.h>#inclued <stdio.h>void main()int a;int b;int c,d;a=1500,b=350;c=a/b;/ 商数d=a%b;/ 余数pritf(" 商数为 : %dn",c);printf(" 余数为: %dn",d);return 0;10编写程序,读入三个双精度数,求它们的平均值并保留此平均值小数点后一位数,对 小数点后第二
30、位数进行四舍五入,最后输出结果。#include<stdio.h>main() double a, b, c, d;printf(" 输入三个双精度数 n");scanf("%lf%lf%lf", &a, &b, &c);d = ( a + b + c) / 3;printf("%.1fn", d);11.求三角形的面积:a,b,c是边长,p是半边长,s是面积,则s=p(p - a)(p - b)(p - c)1/2( C+ 考 过 这 个 )#include<stdio.h>#incl
31、ude<math.h>main()float a,b,c,p,s;printf("input 3 num:");scanf("%f%f%f",&a,&b,&c);p=(a+b+c)/2;s=p*(p-a)(p-b)(p-c);s=pow(s,0.5);prin tf("s=%f",s);12 .输入一个华氏温度,要求输出摄氏温度。公式为:c=5 (f-32 ) /9。#i ncludestdio.hmain () double tem_c, tem_f;puts(”=华氏温度至摄氏温度转换程序=&q
32、uot;);printf("请输入华氏温度:");scan f("%lf", &tem_f);tem_c = (tem_f - 12) * 5.0 / 9.0;printf("%f 对应的摄氏温度为 .2f", tem_f, tem_c);ren tur n 0;第三章选择结构程序设计一.知识点1 关系运算符、逻辑运算符、逻辑值的表示与含义;注意 &&、|的运算规则。2 .三种if语句3 .选择结构的嵌套,注意if与else的配对;4 .条件运算符:?:5 . switch语句,注意其执行过程;6 选择结构程序
33、设计思想。二.练习填空题:1 . C语言中用 非0表示逻辑值“真”,用_0_表示逻辑值“假”2 . C语言中的关系运算符按优先级别是、答案:、=、=、=、!=3 . C语言中的逻辑运算符按优先级别是、。答案:!、&&、|4 . C语言中的关系运算符和逻辑运算符的优先级别是、!、>、<、>=、<=、=、!=、&&、|5. C语言中逻辑运算符的_ !_优先级高于算术运算符。6 将下列数学式改写成C语言的关系表达式或逻辑表达式:a=b 或 a<c a=b|a<c|x|>4x>4|x<-47 .下列程序的输出结果1
34、。main () int a=100 ;if (a>100 ) printf (“ dn ”,a>100 ) ; else printf( “ dn ”,a<=100) ; 8 .若已知a=10、b=15、c=1、d=2、e=0,请分别给出下列表达式的运算结果:a*b && c1a+b>10 | a+b<01e0 c=b>e1!a<e0a+ && e+ && c+0!e && e=b=+c1(0<a) && (a<2)0 1.234 && 5.9
35、821(b=10) && (a=10)0(11) !0 | d && a=c+d1(12) (a+c=b)=(b+d=a) | (c=b+a)>(d=c+b)_19 .当 a=1、b=2、c=3 时,执行以下 if 语句后,a= _3_、b= _1_、c= 。if (a>c); b=a ; a=c ; c=b ;10 .当 a=1、b=2、c=3时,执行以下if 语句后,a=3、b= 2、c= 2。if (a>c) b=a ; a=c ; c=b ;11.当 a=1、b=2、c=3时,执行以下if 语句后,a=1、b= 2、c= 2。if (a
36、>c) b=a , a=c ; c=b ;12 .将以下两条if语句合并为一条if语句: 。if (a>b ) scanf (“ %d ”,&x) ; else scanf (“ %d ”,&y);if (a<=b )i+ ; else j+ ;答案:if (a>b ) scanf (“ %d ”,&x) ; j+ ; else scanf (“%d ”,&y ); i+ ; 13 .将以下嵌套的 if语句改写成不嵌套的 if语句: 。if (w<0 )k=0 ; else if (w<=100 )k=1 ; else k=0
37、 ;答案:if (w>=0&&w<=100 ) k=1 ; else k=0 ;14 .以下程序判断输入的一个整数是否能被3或7整除,若能整除,输出“ YES ”,若不能整除,输出“ NO ”。请填空:#i nclude <stdio.h>main () int k ;printf (“Enter a int number :"); scanf (“%d ”,&k);if ( k%3=0|k%7=0) printf (" YESn "); else printf (" NOn "); 15 .在s
38、witch语句中,当执行到 break语句时,使流程 跳出开关语句。.选择题1若给定条件表达式( M)?( a+ ):( a- ),则和表达式 M 等价的表达式为()C。A M=0BM=1CM!=0DM !=12 .为表示关系x> y >乙应使用的C语言表达式是()A。A . (x>=y) && (y>=z)B. (x>=y)AND(y>=z)C . (x>=y>=z)D . (x>=y)&(y>=z)3.以下程序的输出结果是() D。A. 0B. 1C. 2D. 3main () int a=2 ,b=-1
39、,c=2 ; if( a<b )if( b<0)c=0 ;else c+=1 ; printf (“ %dn ”,c);4.以下程序的输出结果是() A。A. 1B. 2C. 3D. 4main () int w=4 , x=3 , y=2 , z=1 ; printf (“ %dn ”, ( w<x ? w : z<y ? z : x );5 .若执行以下程序时,从键盘上输入 3 和 4,则输出结果是() B。A. 14B. 16C. 18 D. 20main () int a , b, s ; scanf (“%d %d ”, &a,&b ) ; s
40、=a; if( a<b ) s=b ; s*=s ;printf (“ %dn ”, s) ; 6. 在 C 语言中, if 语句后的一对圆括号中,用以决定分支的流程的表达式()。 DA.只能用逻辑表达式B.只能用关系表达式C .只能用逻辑表达式或关系表达式D.可用任意表达式7 .下列程序段运行后,x 的值是() D。A. 14B. 4C. 15D. 3ok1=1 ; ok2=2 ;ok3=3 ; x=15 ;if(! ok1 ) x-;else if ( ok2 )if(ok3) x=3 ; else x=4 ;8.在 C 语言中, switch 语句后一对圆括号中 exp 的类型(
41、)。 AA .可以是任何类型B.只能为int型C .可以是整型或字符型D .只能是整型或实型9 .以下各组运算符中,优先级最高的分别为(BC C D )。 A.?:B. +C . &&D . +=A.*=B. >=C.(类型)D.,A.|B.%C!D . =A.=B. !=C *( 乘 )D. ( )10 .若a 为整型变量,b 为字符型变量,则以下正确的switch 语句是( ) A。A. switch (int) x/10)B. switch (b)精品文档 case 1 : a+ ; break ; case 2 :b+ ; break ; case 3 : c+
42、; break ;C switch ( int) x/10 ); case 0 : a+ ; break ; default : b+ ; break ; case 3+1 : c+ ; break ; case 3 :d+ ; break ; case 042 '; x=a/b ; break ; case 6'; x=a*b ; break ; case 010 '; x=a+c ;break ;D switch ( a/100+10 ) case2 : x=a/b ; break ; case6 : x=a*b ; break ; case8 : x=a+c ;
43、break ; case10 : x=a-c ; break ;程序设计题 : 重点看课后作业题1从键盘输入一个字母,若是大写字母,要求改用小写字母输出。 #include<stdio.h>void main()char var;var=getchar();if(var>=65&&var<=90)var=32+var;putchar(var);2求 ax 2 +bx+c=0 的根。 a、b、 c 由键盘输入,设 b2-4ac>=0. #include<stdio.h>#include<math.h>void main()fl
44、oat a,b,c,p,x1,x2; printf("input 3 numbers:n"); scanf("%f%f%f",&a,&b,&c); if(b*b-4*a*c>=0) p=pow(b*b-4*a*c,0.5); x1=(-b+p)/2; x2=(-b-p)/2; printf("x1=%f,x2=%f",x1,x2);else p=pow(-b*b+4*a*c,0.5);prin tf("x1=%f+%fi,x2=%f-%fi",-b/2,p/2,-b/2,p/2);第四
45、章循环结构程序设计一. 知识点1 循环的概念,C实现循环的方法;2 . goto语句,注意标号的书写;3 . while语句,注意条件表达式的设计;4 . dowhile语句,注意条件表达式的设计,及while之后的分号;5 . for语句,注意for中三个表达式的一般含义;6 循环的嵌套;7 . break与continue语句,注意二者之间的区别;8 .循环结构程序设计思想二. 练习填空题:1 .以下程序段的输出结果 。y=7,x=21x=y=0 ; while (x<20 ) y+ , x+=3 ;printf (“ y=%d , x=%dn ” y, x);2 .当执行以下程序段
46、后,i的值是、j的值是、k的值是。5、4、6int a , b, c, d, i, j, k; a=10 ; b=c=d=5 ; i=j=k=0 ;for ( ; a>b ; +b) i+ ;while (a>+c )j+ ;do k+ ; while (a>d+ );3 .以下程序段的输出结果 。死循环没有输出结果int k , m , n; n=10 ; m=1 ; k=1 ;while (k<=n )m*=2 ; printf (" %dn ” m);4 .以下程序的输出结果-1。main () int x=2 ; while (x-) ; printf
47、 (“ dn ” x) ; 5.以下程序段的输出结果11。int i=0 , sum=1 ; do sum+=i+ ; while (i<5) ; printf (“ dn ” sum );6 .有以下程序段:s=1.0 ; for (k=1 ; k<=n ; k+) s=s+1.0/ (k* (k+1 ); printf (“%fn ”,s); 要使下面的程序段的功能与上面程序段的功能相同,请填空:s=0.0 ; k=0 ; d = 1.0 ;do s=s+d ;k+ ; d=1.0/ (k* (k+1 ); while ( k<=n );printf (“ %fn ” s
48、);7 .以下程序的功能是:从键盘上输入若干学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束输入。请填空:main () float x , amax , amin ;seanf “ f”,&x); amax=x ; amin=x ;while ( x>=0 ) if (x>amax ) amax=x ;if ( x<amin ) amin=x ;scanf “ %f ”,&x ); printf “ namax=%fnamin=%fn ”,amax , amin );8 .以下程序段的输出结果 。 a=12,y=12 / a=16,y=28 / a
49、=16,y=44 / a=16,y=60a=10 ; y=0 ;do a+=2 ; y+=a ;printf “a=%d, y=%dn ”,a, y);if ( y>50 ) break; while ( a=14 );9 .下列程序段中,for循环的循环次数为 。10 9 8 7 6a=2 ; b=10 ; for (i=b; i<=a ; i-, a+ ) printf “%3d ”,i);10 .以下程序段的输出结果 。8 *6 *4 *2 *0 / 8 *6 *4 *2 *0for (i=0; i<3 ; i+ , i+ ) for (j=10 ; j>0 ;
50、j-) if (j+i) %2) j-; printf “ *%d ”,j); contin ue ; -j; -j; printf (“ %d ”,j); printf (“n”); .选择题:1 .A.以下程序段的输出结果是9B . 1)D。C . 11D . 10int k , j, s;for (k=2 ; k<6 ; k+ ,以下程序段的输出结果是12B. 15int i, j, m=0 ;for (i=1 ; i<=15 ; i+=4 ) for (j=3 ; j =19 ; j+=4 > printf “ %dn ”,m );以下程序段的输出结果是(1098k+
51、) s=1)。CC. 20m+ ;)。B1098for(j=k ; j<6 ; j+) s+=j ; D . 25int n=10 ; while ( n>7 ) n- ; printf (“ %dn ”,n); 4以下程序段的输出结果是()。 CA 1B3 0C1 -2 D 死循环5Aint x=3 ; do printf (“ %3d ”, 以下程序的输出结果是( 15B 14)。 Cx-=2 ); while (!( -x ); C 不确定D06Amain () int i , sum ; for ( i=1 以下程序的输出结果是( 741B 852main () int y
52、=10 ; for ( ;y>0 ;y-)ifi<6;)。i+ ) sum+=sum ; printf (“%dn ”,sum ); BC963D 8754217Ay%3=0 ) printf 若 x 是 int 型变量,以下程序段的输出结果是(C#3 *4#5*3#4*5B#3*4#5“ %d ”, -y);continue ; )。DD *3#4*58Afor ( x=3 ;x<6 ;x+)以下程序的输出结果是(B #*#*#*$printf)。(x%2 )?AC9AB*%d ”) :(“ #%dn ”),x);*#*#$*#*#*#$main () int i ;for
53、 (i=1 ; if (i%2 )printf (“ #”);printf (“ $n ”); 以下叙述正确的是( do_while 语句构成的循环不能用其它语句构成的循环来代替。 do_while 语句构成的循环只能用 break 语句退出。D#*#*$i<=5 ;printfi+)(“*”); else continue )。 DC 用 do_while 语句构成循环时,只有在 while 后的表达式为非零时结束循环。D 用 do_while 语句构成循环时,只有在 while 后的表达式为零时结束循环。10 以下程序的输出结果是()。 DA39 81B42 84 C26 68D 2
54、8 70main () int x , i ;for ( i=1 ; i<=100 ;i+ ) x=i ;if( +x%2=0 ) if ( +x%3=0 ) if( +x%7=0 ) printf (“ %d ”,x); printf (“ n”); 11对下面程序段描述正确的是()。 CA . while循环执行了 10次B.循环是无限循环C 循环体语句一次也不执行D 循环体语句只执行一次int x=10 ; while (x=0 ) x=x-1 ;12 .以下关于for循环的正确描述是()。DAfor 循环只能用于循环次数已确定的情况B . for 循环是先执行循环体语句,后判断表
55、达式C .在 for 循环中,不能用 break 语句跳出循环体D. for 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来 13.下列程序段中是死循环的是( )。 CA. int n=1 ;while(!n) n+;B. int n=1 ;do n- ; while ( n) ;C. int n=1 ;do n+ ; while ( n ) ;D. for (n=5;n<1 ;);14 .以下能正确计算1X2X3X-X 10的程序段是()。CA . do k=1 ; n=1 ; n=n*k ; k+ ; while ( k<=10 );B . do k=1 ; n=0 ; n=n*k ; k+ ; while ( k<=10 );C . k=1 ;n=1 ;do n=n*k ; k+
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论