C语言考前复习_第1页
C语言考前复习_第2页
C语言考前复习_第3页
C语言考前复习_第4页
已阅读5页,还剩51页未读 继续免费阅读

下载本文档

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

文档简介

基础知识(数据类型、输入输出、表达式)1)程序结构是三种:顺序结构、选择结构(分支结构)、循环结构。2)读程序都要从main()入口,然后从最上面顺序往下读(碰到循环做循环,碰到选择做选择),有且只有一个main函数・3)计算机的数据在电脑中保存是以二进制的形式.数据存放的位置就是他的地址.3、每个C语言程序中main函数是有且只有一个。5、算法:可以没有输入,但是一定要有输出。7、逗号运算符的级别最低,赋值的级别倒数第二。1、C语言编写的程序称为源程序,又称为编译单位。2、C语言书写格式是自由的,每行可以写多个语句,可以写多行。3、ー个C语言程序有且只有一个main函数,是程序运行的起点。常量数字常量普通数字:1,35,2.7指数形式:2.45*2等价于2.45*10、注意e大小写皆可,e前面的数字不能省,就算是1也不能省,后面的数字一定要是整数长整型,单精度浮点型:3235L,32.5F分别表示3235是长整型数据,32.5是单精度浮点型左,若不写上L,F则表示3235是整型,32.5是双精度浮点型,L,F大小写皆可字符常量普通字符常量:用单刃号把一个字符括起来,如‘A7@’转义字符常量:ー对单引号括起来并以‘へ"开头的字符序列,如ヘづ(回车)、へ12+(8进制123对应的字符),へX23,(16进制23对应的字符)字符串常量用ー对双刃号把ー个字符序列括起来,如“ABCef",系统存放字符串常量,每个字符分配ー个字节,各字符所占字节紧邻,并且字符串末尾会给再开ー个字节里面放ー个へ0,做为结束标志。符号常量定义格式#define符号常量名符号常量值,如#defineN20则定义了符号常量N,其值为20(注意符号常量名和符号常量值之间是用空格隔开,而不是写上=号,!idege和符号常量名之间也有空格的。命名规则以数字,字母,下划线这三类字符组成,但ー只能以字母或下划线开头,而不能也数字开头,另外不能将关键字做为标识符。1、标识符:合法的要求是由晩・数锢下划・组成。有其它元素就错了。并且第一个必须为字母或则是下划线。第一个为数字就错了2、标识符分为关键字、预定义标识符、用户标识符。关键字:不可以作为用户标识符号。maindefinescanfprintf都不是关键字。迷惑你的地方If是可以做为用户标识符。因为!f中的第一个字母大写了,所以不是关键字。预定义标识符:背诵definescanfprintfinclude«记住预定义标识符可以做为用户标识符。类型名int整型,long长整型:用于存放整数,只是数值范围不同float单精度浮点型double双精度浮点型:用于存放实数,数值范围,精度不同char字符型:用于存放字符1)C语言只有ハ、十、十六进制,没有二进制.但是运行时候,所有的进制都要转换成二进制来进行处理。(考过两次)a、C语言中的ハ进制规定要以0开头。018的数值是非法的,ハ进制是没有8的,逢8进1。b、C语言中的十六进制规定要以Ox开头。2)小数的合法写法:C语言小数点两边有一个是零的话,可以不用写。L0在C语言中可写成1.0.1在C语言中可以写成.1。3)实型数据的合法形式:a、2.333e-l就是合法的,且数据是2.333X10工4、考锹。抉:e前e后必有数,e后必为整数。请结合书上的例子。4)整型一般是4个字节,字符型是1个字节,双精度一般是8个字节:longintx;表示x是长整型。unsignedintx:表示x是无符号整型。变量赋值,初始化自增自减运算变量++,++变量,变量ー,-ー变量使变量的值自增1或自减1等价于变量=变量+1变量=变量-1++,ー放于变量前后效果的区别:当自增印減运算傲为表达式的一鄧分K,++,ー放在变量前面是先自增自减再使用变量的值,放在变量后面则是先使用变量的值,再白增白减。如x=3;printf("%d”,++x);则相当于执行了++x;printf("%d",x);这样的操作所以打印出4再如x=3;printf卜%d”,x++);则相当于执行了printf("%d",x);X++;这样的操作,则打印出3,当然最后x的值还是4。表达式运算符和运算对象一个运算符都有若干个运算对象,如+必然要跟两个运算对象才能进行加法运算:3+50C语言里称需要跟n个运算对象的运算符为n元运算符。一元运算符有:!,(类型名)二元运算符有:+,-,*/%(求余),=,+=,-=,*=,/=,%=,<,>,<=,>=,==(等于),!=(不等于),&&(且),II(或)多元运算符有:,运算符的优先级和结合性优先级:同一个运算对象左右两边若同时有两个运算符,则这两个运算符优先级高的先进行运算。结合性:若同一个运算对象左右两边的两个运算符优先级相同,则根据结合性判断先进行哪个运算,自左自右结合性的先算左边的运算符,自右自左的先算右边的运算符。各运算符的优先级和结合性见P365附录C强制类型转换格式:(类型名)表达式。将后跟的表达式的值的数据类型转换为与圆括号内的类型名ー致的类型。注意类型名一定要用〇括起来。算术表达式算术运算符:+,-,*/%(求余)由算术运算符加上运算对象构成算术表达式,如3+3*6-9/2值:跟我们小学时学的ー样,就是表达式的计算结果整数除以整数结果取整数部分,故1G得到的值是。5%3结果为2,想想小学除法,求余得到的是余数不是商。赋值表达式赋值运算符:=,+=,-=,*=,/=,%=赋值表达式:变量=表达式,如x=3+6,x+=6-9,x+=x*=3+4注意等号左边只能是变量复合赋值运算符的运算:以/=为例:x/=表达式等价于x=x/(表达式)值:=号左边的变量最终的值关系表达式关系运算符:<,>,<=,>=,==(等于),!=(不等于)由关系运算符加上运算对象构成关系表达式,如3>=4,2==a值:满足相应运算符所指定的关系的值为1,否则为0逻辑表达式逻辑运算符:&&(且),||(或),!(非)由逻辑运算符加上运算对象构成逻辑表达式,如3&&4,x||!y值:满足相应运算符所指定的关系的值为1,否则为0进行リ或运算时,若[、左边的表达式值为1,则不再对右边的表达式进行运算。进行&&且运算时,若&&左边的表达式值为。,则不再对右边的表达式进行运算O1、算术表达式:+, *,/,%考试一定要注意:“/”两边都是整型的话,结果就是ー个整型。3/2的结果就是1.如果有一边是小数,那么结果就是小数。3/2.0的结果就是0.5“%”符号请一定要注意是余数,考试最容易算成了除号。)%符号两边要求是整数。不是整数就错了。[注意!!!]2、赋值表达式:表达式数值是最左边的数值,a=b=5;该表达式为5,常量不可以赋值,1、intx=y=10:错啦,定义时,不可以连续赋值。2、intx,y;x=y=10J 对滴,定义完成后,可以连续赋值。3、赋值的左边只能是一个变量・4、intx=7.7!对滴,x就是75、floaty=7!对滴,x就是7.03、复合的赋值表达式:inta=2;a*=2+3;运行完成后,a的值是12〇一定要注意,首先要在2+3的上面打上括号。变成(2+3)再运算。4、自加表达式:自加、自减表达式:假设a=5,++a(是为6),a++(为5);运行的机理:++a是先把变量的数值加上1,然后把得到的数值放到变量a中,然后再用这个++a表达式的数值为6,而a++是先用该表达式的数值为5,然后再把a的数值加上1为6,再放到变量a中。进行了++a和a++后在下面的程序中再用到a的话都是变量a中的6了。考試ぽ供:++在前先加后用,++在后先用后加。5、逗号表达式:优先级别最低。表达式的数值逗号量右边的那个表达式的数值。(2,3,4)的表达式的数值就是4。z=(2,3,4)(整个是赋值表达式)这个时候z的值为4。1)字符数据的合法形式::T’是字符占ー个字节,”「是字符串占两个字节(含有一个结束符号)。‘〇’的ASCII数值表示为48,'a'的ASCII数值是97,'A'的ASCII数值是65。一般考试表示单个字符错误的形式:’65' "1"字符是可以进行算术运算的,记住:'0'-0=48大写字母和小写字母转换的方法:'A'+32='a'相互之间一般是相差32。2)转义字符:转义字符分为一般转义字符、ハ进制转义字符、十六进制转义字符。一般转义字符:背诵、〇、'n、、‘、、"、\'。ハ进制转义字符:'\14J是合法的,前导的〇是不能写的。十六进制转义字符:''x6d,オ是合法的,前导的〇不能写,并且x是小写。3、字符型和整数是近亲:两个具有很大的相似之处chara=65;printf("睨",a):得到的输出结果:aprintf("%d",a);得到的输出结果:65输入输出函数scanf("格式控制串",变量地址表列);如scanf("%d%c%d",&a,&ch,&b); scanf("%4f",&x);注意:格式控制串可控制截取用户输入的前几个字符给变量,但不能控制输入几位小数给变量,如不能写成scanf("%4.2f",&x);第二个参数给的是地址,即要么是&+变量名或数组元素名的形式,要么就是ー个数组名或指针变量名,如int*p,a;p=&a;scanf("%d",p);考试时注意看题目给你写好的scanf的格式若其格式控制串内各格式符用“,”隔开如scanf("%d,%c,%d",&a,&ch,&b);那输入时也要用逗号隔开,如此例输入时应:3,+,5若是这种格式scanf("%d%d”,&a,&b);则输入时应:35;若是这种格式scanf("%d%c%d",&a,&ch,&b);则输入时应3+5,若写成3+5则a=3,ch=''(空格),b=任意值 (自己上机运行看看结果)printf("格式控制串",输出项表列);如floatx=7.5;printf("%8.2f",x);此处的意思是将x打印出来,且占8列,保留两位小数。自己上机运行看看效果。常用格式符汇总:%d:输入输出整型数据,%ld:输入输出长整型数据%c;输入输出字符型数据%f:输出单(双)精度浮点型数据,输入单精度型数据。 %lf:输入双精度型数据%S:输入输出ー个字符串,用printf输出字符串时,输出项书写时可为字符串常量,或字符数组名。如printf名%s","hello");或charstr[10]="hello";printf("%s",str);%u:输入输出无符号整型,%〇:输入输出ハ进制数,%x:输入输出十六进制数getchar();函数调用后返回用户输入的ー个字符,故需再定义ー个变量来存放这个字符,即使用时应chare;c=getchar();意思就是接收用户输入的ー个字符,并将其赋值给变量c。putchar(字符常量或字符变量名);如charc=W;putchar(c);或putchar(TV);都会向屏幕输出字符A。1、使用printf和scanf函数时,要在最前面加上#include"stdio.h"2、printf可以只有一个参数,也可以有两个参数。(选择题考过一次)3、printf(“第一部分”,第二部分)5把第二部分的变量、表达式、常量以第一部分的形式展现出来!4、printf("a=%d,b=%d”,12,34)printf("a=%d,\nb=%d”,12,34)那么输出的结果就是:a=12,b=345、intx=017, 一定要弄清楚为什么是这个结果!过程很重要printf(0%d",X);15printf("%〇”,X);17printfX)5017printfx);11printf(“渊x",x)s0x116、intx=12,y=34; 注意这种题型charz='a';printf("%d”,x,y)!一个格式说明,两个输出变量,后面的y不输出printf("紀",z): 结果为:12a7、一定要背诵的格式说明表示内容格式说明表示内容%d整型 int%c字符char%ld长整型!ongint%s字符串%f浮点型float%Oハ进制%lfdouble%#O带前导的ハ进制%%输出ー个百分号%x十六进制%5d%#x带前导的十六进制举例说明:printf("%2d",123); 第二部分有三位,大于指定的两位,原样输出123printf("%5d",123);第二部分有三位,小于指定的五位,左边补两个空格123printf("%10f",1.25);小数要求补足6位的,没有六位的补〇,。结果为1.250000printf("%5.3f",125):小数三位,整个五位,结果为1.250(小数点算一位)printf(“%3.If",1.25);小数一位,整个三位,结果为L3(要进行四舍五入)第三节数据输入1、scanf(“a=%d,b=%d",&a,&b)考试超级重点!一定要记住是以第一部分的格式在终端输入数据。考试核心为:ー模ー样。在黑色屏幕上面输入的为a=12,b=34オ可以把12和34正确给a和b»有一点不同也不行。2、scanf("%d,%d”,x,y)!这种写法绝对错误,scanf的第二个部分一定要是地址!scanf(“%d,%d”,&x,&y)5注意写成这样オ可以!3、特别注意指针在scanf的考察例如:intx=2;int*p=&x;scanf("%d",x);错误 scanfp);正确scanf&p);错误 scanf*p)错误4、指定输入的长度(考试重点)终端输入:1234567scanf(“%2d%4d%d”,&x,&y,&z);x为12,y为3456,z为7终端输入:1234567 由于1和2中间有空格,所以只有1位给xscanf("%2d%4d%d”,&x,&y,&z);x为1,y为2345,z为675、字符和整型是近亲:intx=97;printf(“対”,x); 结果为97printf("%c”,x); 结果为a6、输入时候字符和整数的区别(考试超级重点)scanf(“%d”,&x);这个时候输入1,特别注意表示的是整数1scanfぐ%c”,&x);这个时候输入1,特别注意表示的是字符’1'ASCII为整数48。补充说明:scanf函数的格式考察:注意该函数的第二个部分是蛆这样的地址,不是目;scanf(“%d%d%*d%d”,&a,&b,&c):跳过输入的第三个数据。putchar,getchar函数的考査:chara=getchar()是没有参数的,从键盘得到你输入的ー个字符给变量a。putchar('y')把字符y输出到屏幕中。1.以下不是C语言的特点的是()。A、语言简洁紧凑B、能够编制出功能复杂的程序C、C语言可以直接对硬件操作D、C语言移植性好2.下列字符序列中,不可用作C语言标识符的是()〇A.abcl23 B.no.l C._123_ D._ok5.下列符号中,不属于转义字符的是()。A.\\ B.\0xAA C.\t D.\06.不属于C语言关键字的是()«A.int B.break C.while D.character7.是C语言提供的合法关键字的是()。A.Float B.signedC.integerD.Char8,以下不能定义为用户标示符的是(A.scanf B.Voidー个C程序是由().ー个主程序和若干子程序组成ー个或多个函数组成C.若干过程组成D.若干子程序组成C语言程序的基本单位是()〇C._3com_D.intA.程序行 B.语句12.以下说法中正确的是()〇c,函数D.字符A.C语言程序总是从第一个定义的函数开始执行B.在C语言程序中,要调用的函数必须在main()函数中定义C语言程序总是从main()函数开始执行C语言程序中的main()函数必须放在程序的开始部分13.C编译程序是()。C程序的机器语言版本ー组机器语言指令C.将C源程序编译成目标程序D.由制造厂家提供的ー套应用软件.以下选项中,合法的用户标识符是()。A.long B._2abc C.3dmax D.A.dat.以下选项中,合法的实型常数是()〇A.5E2.0 B.E-3 C..2E0 D.1.3E.已知大写字母A的ASCII码值是65,小写字母a的ASCII码是97,则用ハ进制表示的字符常量へ101,是()»A.字符A B,字符a C.字符cD.非法的常量21.与数学式子之:对应的C语言表达式是()。2x—1A.9*xAn/(2*x-l) B.9*x**n/(2*x-l)C.9*pow(x,n)*(V(2*x-l)) D.9*pow(n,x)/(2*x-l).在C语言中,要求运算数必须是整型的运算符是(),A./ B.++ C.*= D.%.若有说明语句:chars='\72':则变量s()。A.包含一个字符B.包含两个字符C.包含三个字符D.说明不合法,s的值不确定.若有定义:intm=7;floatx=2.5,y=4.7;则表达式x+m%3*(intXx+y)%2/4的值是()。A.2.500000 B.2.750000 C.3.500000 D.0.000000.在C语言中,char型数据在内存中的存储形式是().A.补码 B.反码 C.原码 D.ASCII码

.putchar函数可以向终端输出ー个()◎B.字符串D.字符或字符型变量值。B.字符串D.字符或字符型变量值。D,提示出错、无结果»以下不合法的scanf〇函数调用语句C.实型变量值。.以下程序段的输出结果是()。inta=12345;printf("%2d\n”,a);A.12B.34C.12345.若x和y均定义为int型,z定义为double为(scanf("%d%lx,%le〃,&x,&y,&z);scanf(〃%2d*%d%lf〃,&x,&y,&z);scanf("%x%*d%o”,&x,&y);scan耳“%x%o%6.2f〃,&x,&y,&z);45.己有定义inta二・2;和输出语句:printf("%8lx",a)?以下正确的叙述是()A.整型变量的输出格式符只有%d・种%x是格式符的ー种,它可以适用于任何ー种类型的数据%x是格式符%8lx不是错误的格式符,其中数字8规定了输出字段的宽度52.以下程序的输出结果是()〇(注:一代表空格)#include"stdio.h"main(){p「intf(〃、nstringl=%15s*","programming");printf("\nstring2=%-5s*w,"boy");printf("string3=%2s*printf("\nstring2=%-5s*w,"boy");printf("string3=%2s*w,"girl");)A.stringl二programmingljlj——string2=boy*string3=gi*C.stringl=programmingl_ii_ii_ilj!string2=ljl_jboy*string3=girl*.结构化设计中的三种基本结构是ー.C语言源程序文件的后缀是接后生成文件的后缀是〇5.一个函数由两部分组成,它们是ーB.stringl=しji_ii_।ljprogramming*string2=boyljlj*string3=gi*D.stringl=しji_ilji_jprogramming*string2=boyljlj*string3=girl*经过编译后生成文件的后缀是,经过链.函数体一般包括ヽ。.C语言是通过来进行输入和输出的。.以下程序的执行结果。#include"stdio.h"main(){shorti=-l,j=l;printf("dec:%d,oct:%〇,hex:%x,unsigned:%u\n",i,i,i,i);printf("dec:%d,oct:%o/hex:%x,unsigned:%u\n",jJJ,j);}7.a二12,n=5,表达式a%二(n%=2)值是.有一个输入函数scanf(飞d”,k);则不能使float类型变量k得到正确数值的原因是和〇.putchar。函数可以向终端输出ー个〇10.已有定义inti,j;floatx;为将一10赋给i,12赋给j,410.34赋给x,则对应以下scanf()函数调用语句的数据输入形式是一〇scanf(?〇%x%e",h,&j,&x);ILpirntfO函数中用到格式符%5s,其中数字5表示输出的字符串占5列,如果字符串长度大于5I则«12.使用getchar()和putchar()函数必须在源程序中加 .9.写出下面程序的运行结果。main(){inti,j,m,n;i=5;j=6;m=++i;n=―j;printf("%d,%d,%d,%d",i,j,m,n);).在C语言中,书写ハ进制数时必须加前缀;书写十六进制数时必须加前缀ー。.在微机上,int型、short型、long型、float型和double型数据一般在内存中分别占-fct* t±r-!+- <±?-Hr c±?-h-xri -H-.设有下列运算符:く〈、+、++、&&、〉=,其中优先级最高的是,优先级最低的是,选择结构C语言的语句表达式语句:由表达式末尾加上分号构成。函数调用语句:由函数调用表达式加上分号构成。空语句::选择结构语句:if语句switch语句循环语句:for语句while语句dowhile语句复合语句:用花括号{)将以上任意语句括起来构成一条复合语句。C程序的基本结构voidmain(){声明部分:用来定义变量和声明自定义函数的原型,需以‘';"结尾,如intx;执行语句部分:第六点里介绍的各种语句,如x=3;printf("%d",x);}C语言中是用匪9悽示逻辑真的,兩表示逻辑假的。C语言有构造类型,没有逻辑类型。关系运算符号:注意。的写法,==和=的区别!(考试重点)if只管后面一个语句,要管多个,请用大括号!1)关系表达式:a、表达式的数值只能为1(表示为真),或。(表示假)。如9>8这个关系表达式是真的,所以9>8这个表达式的数值就是1。如7く6这个关系表达式是假的,所以7く6这个表达式的数值就是〇2)逻辑表达式:核心:表达式的数值只能为1(表示为真),或〇(表示假)。a)共有&& || !三种逻辑运算符号。!>&&>||优先的级别。c)注意短路现象。考试比较喜欢考到。详细请见书上例子,一定要会做例1和例2d)表示x小于〇大于10的方法。0<x<10是不行的(一定记住)。是先计算0<x得到的结果为1或则〇;再用0,或1与10比较得到的总是真(为1)•所以一定要用(0<x)&&(x<10)表示比0大比10小。3)if语句a、else是与最接近的if且没有else的语句匹配。b、交换的程序写法:t=x;x=y;y=t;c>if(a<b)t=a;a=b;b=t;if(a<b){t=a;a=b;bエ;}两个的区别,考试多次考到了!d、单独的if语句:if(a<b)t=a;标准的if语句:if(a<b)min=a;elsemin=b;嵌套的if语句:if(a<b)if(b>c)printf("ok!");多选ー的if语句if(a==t)printf("a”);elseif(b==t)printf("b");elseif(c==t)printf("c");elsepritnf("d");通过习题,要熟悉以上几种if语句!经典考题:结合上面四种if语句题型做题,答错了,请自行了断!预备,开始!inta=Lb=0;if(!a)b++;elseif(a==0)if(a)b+=2;elseb+=35请问b的值是多少?如果没有看懂题目,你千万不要自行了断,这样看得懂不会做的人才会有理由的活着。正确的是b为3。inta=l,b=0;if(!a)b++: 是假的不执行elseif(a==0)是假的执行if(a)b+=2;属于elseif的嵌套if语句,不执行。elseb+=3; if-else-if语句没有一个正确的,就执行else的语句!4)条件表达式:表达式1?表达式2:表达式3へ考裁。铢:真前假后。b、注意是当表达式1的数值是非0时,オ采用表达式2的数值做为整个运算结果,当表达式1的数值为0时,就用表达式3的数值做为整个的结果。inta=l,b=2,c=3,d=4,e=5;k=a>b?c:d>e?d:e;求k的数值时多少?答案为san5)switch语句:a)执行的流程一定要弄懂!上课时候详细的过程讲了,请自己一定弄懂!b)注意有break和没有break的差别,没有break时候,只要有一个case匹配了,剩下的都要执行,有break则是直接跳出了switch语句switch只可以和break一起用,不可以和continue用。switch(x) x:是整型常量,字符型常量,枚举型数据.{case[1]:…. 不可以是变量。case2:….}if语句的三种结构单边:if(表达式)语句双边:if(表达式)语句1else语句2多层(重点掌握):if(表达式!)语句1elseif(表达式2)语句2elseif(表达式3)语句3else语句nswitch语句switch(表达式)(case表达式1:语句case表达式2:语句case表达式n:语句default:语句}2.设a=5,b=6,c=7,d=8,m=2,n=2,贝リ执行(m=a>b)&&(n=c>d)后n的值为()〇A.1 B.2 C.3 D.43.设x、y和z都是int类型变量,且x=3,y=4,z=5,则下面的表达式中,值为0的表达式为().A.'X,&&,丫, B.x<=yC.x||y+z&&y-z D.!((x<y)&&!z||1).为了避免嵌套的if-else语句的二义性,C语言规定else总是与〇组成配对关系。A.缩排位置相同的ifB,在其之前未配对的ifC.在其之前未配对的最近的ifD.同一行上的if.逻辑运算符两侧运算对象的数据类型()。A,只能是〇或1B,只能是。或非。正数C,只能是整型或字符型数据D.可以是任何类型的数据.以下关于运算符优先顺序的描述中正确的是()。A.关系运算符〈算术运算符(赋值运算符〈逻辑与运算符B.逻辑与运算符〈关系运算符(算术运算符〈赋值运算符C,赋值运算符〈逻辑与运算符〈关系运算符〈算术运算符D.算术运算符(关系运算符〈赋值运算符(逻辑与运算符.下列运算符中优先级最高的是〇。A.< B.&& C.+ D.!=.判断char型变量s是否为小写字母的正确表达式是()。A.,a,<=s<=,z, B.(s>=,a,)&(s<=,z,)C.(s>二'a')&&(s<二’z') D.('a'<=s)and('z'>=s).若希望当x的值为奇数时,表达式的值为“真”,x的值为偶数时,表达式的值为“假”。则以下不能满足要求的表达式是()。A.x%2==l B.!(x%2==0)C.!(x%2) D.x%2.假定等级和分数有以下对应关系:等级:A 分数:85——100等级:B 分数:60——84等级:C 分数:60以下对于等级grade输出相应的分数区间,能够完成该功能的程序段是()。switch(grade){case'A':printf(〃85 100\n〃);case'B':printf(z'6O 84\n〃);case'C:printf(〃<60\n〃);default:printf("gradeiserror!\n");)switch(grade){case'A':printf(〃85 100\n〃);break;case'B':printf(〃60 84\n〃);case'C:printf(〃<60\n");default:printf("gradeiserror!\n");)switch(grade){case'A':printf("85 100\n");break;case'B':printf("60 84\n");break;case'C:printf(〃<60\n");default:printf("gradeiserror!\n");)switch(grade){case'C:printf("<60\n");break;case'B':printf(z'6O 84\nzz);break;default:printf(〃gradeiserror!\nzz);break;casezAz:printf(zz85 100\nzz);).有如下程序,写出该执行结果()。include"stdio.h"main()(floatx=2.0zy;if(x<0.0)y=0.0;elseif(x<10.0)y=1.0/x;elsey=1.0;print耳〃%f\n〃メ);)A.0.000000B.0.250000C.0.500000D.1.00000030.有以下程序,程序运行后的输出结果是()。#include"stdio.h"main(){inta=15,b=21,m=0;switch(a%3){case0:m++;break;case1:m++;switch(b%2){default:m++;case0:m++;break;))printf("%d\n"/m);)A.1 B.2 C.3 D.4.若从键盘输入58,则输出结果是〇#include"stdio.h"main(){inta;scanf("%d"/&a);if(a>50)print耳"%d",a);if(a>40)printf("%d"/a);if(a>30)printf("%d"/a);}.设intx=9,y=8;表达式xニニy+1的结果是0.定义intx,y:执行y二(x二l,++x,x+2);后,y的值是07.以下程序的运行结果是=#include"stdio.h"main()(inta,b,c,s,w,t;s=w=t=0;a=-1;b=3;c=3;if(c>0)s=a+b;if(a<=0){if(b>0)if(c<=0)w=a-b;)elseif(c>0)w=a-b;elset=c;printf(zz%d%d%dzz,s,w,t);|.下面程序根据以下函数关系,对输入的每个x值,计算出y值。请在【】内填空。Xy2<x<=10x(x+2)-l<x<=2VxX<=-1x-1#includezzstdio.hzzmain()(intx,y;scanf(zz%dzz,&x);if([1])y=x*(x+2);elseif([2])y=l/x;elseif(x<=-l)y=x-l;else[3];if(y!=-1)printf(zz%dzz,y);elseprintf(zzerrorzz);}.以下程序的功能是计算一元二次方程ax2+bx+c=0的根。请在【】内填入正确内容。include"stdio.h"#include"math.h"main()(floata/b/c/t/disc/w/terml/term2;printf(zzentera,b,c:zz);scanf(%f%f%fzz,&a,&b,&c);if(⑴)if([2])printf(zznoanswerduetoinputerror\nzz);elseprintf(zzthesinglerootis%f\nzz,-c/b);else{disc=b*b-4*a*c;w=2*a;terml=-b/w;t=abs(disc);term2=sqrt(t)/w;if([3])printf("complexroot\nrealpart=%fimagpart=%f\nz\terml,term2);elseprintf("realroots\nrootl=%froot2=%f\n"zterml+term2/terml-term2);}}.以下程序的功能是判断输入的年份是否是闰年。请在【】内填入正确内容。#include"stdio.h"main()(intyear;flag;printf(zzpleaseinputtheyeartojudewhetheritisaleapyear:");scanf(〃%d〃,&year);if(year%400==0)flag=l;elseif([1])flag=l;else[2];if(flag)printf("%disaleapyear\n",year);elseprintf("%disnotaleapyear!\n",year);).以下程序是对用户输入的字母进行大小写转换。请在【】内填入正确内容。include"stdio.h"main(){charch;printf("pleaseinputaletter:");scanf("%c",&ch);if([1])ch=ch+32;elseif(ch>=zaz&&ch<=zzz)[2];printf("theconvertedletteris:%c\n”,ch);}.以下程序是对从键盘输入的任何三个整数,求出其中的最小值。请在【】内填入正确内容。#include"stdio.h"main()(inta,b,c,min;printf("pleaseinputthreenumbers:");scanf(〃%d%d%d〃,&a,&b,&c);if(⑴)min=b;elsemin=a;if(min>c)【2】;printf("min=%d\n",min);}20.以下程序完成两个数的四则运算。请在【】内填入正确内容。#include"stdio.h"main()(floatx,y;charoperator;printf(z,pleaseinputtheexpression:");seanf("%f%c%f〃,&x,&operator,&y);switch([1]){case,+,: printf("%g%c%g=%g\n",x,operator,y,x+y);[2];case’・': printf(〃%g%c%g二%g\n",x,operator,y,x-y);break;case' : printf("%g%c%g=%g\n",x,operator,y,x*y);break;caseソ,:if(y==0.0)printf(〃除零错误!\nり;elseprintf("%g%c%g=%g\n",x,operator,y,x/y);break;[3]: printf(〃表达式存在错误!\n");)}20.以下程序的运行结果是().main(){intm=5;if(m++>5)printf("%d\n",m);elseprintf("%d\n”,m—);)A)4B)5C)6D)77.以下程序的输出结果是〇main(){intx=l,i=l;for(;x<50;i++){if(x>=10)break;if(x%2!=l){x+=3;continue;)x-=l;}printf("x=%d,i=%d\n",x,i);循环控制for循环语句for(表达式1;表达式2:表达式3)循环体语句语句执行过程:计算表达式1判断表达式2的值是否为〇,若为〇,语句执行结束,若不为0,进入步骤3while(表达式)循环体语句执行过程:判断表达式的值是否为非〇,若是进入步骤2,否则结束语句执行。执行循环体语句,重新回到步骤1。do循环体语句while(表达式):执行过程:执行循环体语句,进入步骤2判断表达式的值是否为非。,若是重新回到步骤1,否则结束语句执行。1)三种循环结构:for()swhile();do-while。三种。for循环当中必须是两个分号,千万不要忘记。c)写程序的时候一定要注意,循环一定要有结束的条件,否则成了死循环・d)do-while()循环的最后ー个while。;的分号一定不能够丢。(当心上机改错),do-while循环是至少执行一次循环。2)break和continue的差别记忆方法:break!是打破的意思,(破了整个循环)所以看见break就退出整个一层循环。continue!是继续的意思,(继续循环运算),但是要结束本次循环,就是循环体内剩下的语句不再执行,跳到循环开始,然后判断循环条件,进行新一轮的循环。3)嵌套循环就是有循环里面还有循环,这种比较复杂,要一层ー层ー步ー步耐心的计算,一般记住两层是处理二维数组的。4)while((c=getchar())!='\n')和while(c=getchar()!=へnり的差别先看a=3!=2和(a=3)!=2的区别:(!=号的级别髙于=号所以第一个先计算3!=2)第一个a的数值是得到的1;第二个a的数值是3。考试注意点:括号在这里的重要性。5)每行输出五个的写法:for(i=0ji<=100;i++){printf(“対”,i);

if((i+l)%5=0)printf("\n");如果i是从1开始的话,就是if(i%5=0)printf(“\n”);}6)如何整除ー个数:i%5=0表示整除5,同时表示是偶数!8)for只管后面一个语句:inti=3;for(i=3;i<6;i++):printf(“ザ):9)不停的输入,直到输入#停止输入!.当执行以下程序段时。x=-l;do{x=x*x;}while(!x);A.循环体将执行一次C.循环体将执行无数多次.执行以下程序后输出的结果是()。main(){inty=10;do{y-;}while(-y);printf("%d\n”,y-);}A.-l B.l C.8.下面程序的输出结果是()。main(){intx=3,y=6,a=0;while(x++!=(y-=l)){a+=l;if(y<x)break;}printf(Hx=%d,y=%d,a=%d\n",x,y,a);}A.x=4/y=4/a=lC.x=5/y=4/a=3.若i,j已定义为int类型,则以下程序段中内for(i=5;i;i-)请问最终打印几个#号?答案为ー个!while((x=getchar())!=,#'请问最终打印几个#号?答案为ー个!while((x=getchar())!=,#')B.循环体将执行两次D.系统将提示有语法错误D.0B.x=5,y=5,a=lD.x=5/y=4/a=l不的总的执行次数是()«{...)A.20 B.24 C.25 D.3011.在下列选项中,没有构成死循环的程序段是()。A.inti=100;while(1)i=i%100+l;if(i>100)break:}B.for(;;);C.intk=1000;do{++k;}while(k>=10000);D.ints=36;while(s);-s;12.若输入B,以下程序的运行结果为()。main(){chargrade;scanf("%c",&grade);switch(grade){case'A':printf(">=85.");case'B':case'C':printf(">=60.");case'D,:printf("<60.M);default:printf("error.");})A.>=85. B.>=60. C.>=60.<60.error.D.error.30.下列程序段的输出结果为().main(){intx=3;do{printf("%3d",x-=2);}while(l(—x));}A.l B.30 C.l-2 D.死循环.若输入字母C,程序输出结果为[1I若输入字符・,程序将【2】。#include<stdio.h>main(){charcl,c2;cl=getchar();while(cl<9711cl>122)cl=getchar();c2=cl-32;printf("%c,%c\n"/cl/c2);}.以下程序运行的结果。main(){intx=2,y,z;x*=3+l;printf("%d;'/x++);x+=y=z=5;printf("%d;,/x);x=y==z;printf("%d\n,x);}.以下程序运行的结果〇#include<stdio.h>#include<math.h>main(){inti,k,m,n=0;for(m=l;m<=10;m+=2){if(n%10==0)printf("\n");k=sqrt(m);for(i=2;i<=k;i++)if(m%i==O)break;if(i>k){printf(”%2d”,m);n++;))).如果输入‘1','2',,3',,4',程序运行输出的是。#include<stdio.h>main(){charc;intしk;k=0;for(i=0;i<4;i++){while(l){c=getchar();if(c>='0'&&c<='9')break;}k=k*lO+c-'O';)printf("k=%d\n"/k);).运行以下程序后,如果从键盘上输入china#〈回车〉,则输出结果为include<stdio.h>main(){intvl=0zv2=0;charch;while((ch=getchar())!='#')switch(ch){case'a':case'h':default:vl++;case'O':v2++;printf(”%d,%d\n”,vl,v2);.程序运行结果是0#include<stdio.h>main(){inti;for(i=l;i+l;i++){if(i>4){printf(',%d\t,'/k+);break;}printグ%d\t”,i++);)).以下程序运行的结果是〇#include<stdio.h>main(){inta,b;for(a=lzb=l;a<=100;a++){if(b>=20)break;if(b%3==l){b+=3;continue;)b-=5;}printf("%d\n,a);}.程序运行的结果是0main(){intn=0;while(n++<=l)printf("%d\ピ,n);printf("%d\n,n);).此程序运行时,输入qwert?程序的运行结果是。#include<stdio.h>main(){charc;while((c=getchar())!=,?,)putchar(++c);}18.鸡问题:100元钱买!00只鸡,公鸡ー只5元钱,母鸡ー只3元钱,小鸡一元钱三只,求100元钱能买公鸡、母鸡、小鸡各多少只?#include<stdio.h>main(){intcocks,hens,chicks;cocks=0;while(cocks<=19){hens=O;while(hens<=33){chicks=100.0-cocks-hens;if(5.0*cocks+3.0*hens+chicks/3.0==100.0)printf("%d,%d,%d\rT,cocks,hens,chicks);[1];)[2];)}.下列程序计算平均成绩并统计90分及以上人数。main(){intn,m;floatgrade,average;average=n=m=[1];while([2]){scanf(u%f",&grade);if(grade<O)break;n++;average+=grade;if(grade<90)[3];m++;}if(n)printf("%.2f%d\n",average/n,m);).下列程序计算Fibonacci数列:1,1,2,3,5,8,13……的前40项。main(){intl;longfl,f2;[1];for(l=0;l<20;l++){printf(H%12ld%12ld",fl,f2);if(l%2)printf("\n");fl+=f2;[2];|).下列程序判断ー个数是否为素数。#include<stdio.h>#include<math.h>main(){intl,k,m;scanf("%d",&m);k=sqrt([1]);for(l=2;l<=k;l++)if(m%l==O)[2];if(【3】)printf(”%dyes、バ,m);elseprintf("%dno\n,m);}24.从键盘上输入两个整数m和n,求其最大公约数。main(){inta/b/numl/num2/temp;scanf("%d/%d"z&numl/&num2);if(Hl){temp=numl;numl=num2;num2=temp;|a=numl;b=num2;while(b!=O){temp=[2];a=b;b=temp;|printf("%d,%d",a,numl*num2/a);)11.以下程序的输出结果是。main(){inti,j;for(i=0;i<5;i++){for(j-l;j<10;j++)if(j==6)break;if(i<3)continue;if(i>3)break;)printf(”i=%d,j=%d\n”,i,j);)15.以下程序段中内嵌循环共被执行的次数为:()for(i=5;i;i-)for(j=0;j<4;j++){...}A.20 B.24 C.25数组数组:存放的类型是一致的。多个数组元素的地址是连续的。1、ー维数组的初始化:inta[5]=(l.2,3,4,5}:合法

inta[5]={l,2,3,}:合法inta[]={l,2,3,4,5): 合法,常考,后面决定前面的大小!inta[5]={l,2,3,4,5,6):不合法,赋值的个数多余数组的个数了2、一维数组的定义;inta[5]5注意这个地方有一个重要考点,定义时数组的个数不是变量一定是常量。inta[5]intinta[5]inta[l+l]inta[1/2+4]intx=5,inta[x];defineP5inta[P]合法,个数是常量2,是个算术表达式合法,同样是算术表达式不合法,因为个数是x,是个变量,非法的,合法,define后的的P是符号常量,只是长得像变量3、二维数组的初始化inta[2][3]={1,2,3,4,5,6}: 合法,很标准的二维的赋值.inta[2][3]={l,2,3,4,5,}: 合法,后面一个默认为〇»inta[2][3]={{l,2,3,}{4,5,6}}: 合法,每行三个.inta[2][3]={{l,2,}{3,4,5}}: 合法,第一行最后ー个默认为0。inta[2][3]={l,2,3,4,5,6,7}; 不合法,赋值的个数多余数组的个数了。inta[][3]={1,2,3,4,5,6}: 不合法,不可以缺省行的个数。^^[2] 以缺省列的个.。补充:1)ー维数组的重要概念:对a[10]这个数组的讨论。1、a表示数组名,是第一个元素的地址,也就是元素a[0]的地址。(等价于鬭)2、a是地址常量,所以只要出现a++,或者是a=a+2赋值的都是错误的。3、a是一维数组名,所以它是列指针,也就是说a+1是跳一列。对a[3][3]的讨论。1、a表示数组名,是第一个元素的地址,也就是元素a[O][〇]的地址。2、a是地址常量,所以只要出现a++,或者是a=a+2赋值的都是错误的。3、a是二维数组名,所以它是行指针,也就是说■是^・。4、a[0]、a[l]、a[2]也都是地址常量,不可以对它进行赋值操作,同时它们都是列指针,a[O]+l,a[l]+l,a[2]+l都是跳一列。5、注意a和a[〇]ヽa[l]、a[2]是不同的,它们的基类型是不同的。前者是一行元素,后三者是一列元素。2)二维数组做题目的技巧:如果有a[3][3]={1,2,3,4,5,6,7,8,9}这样的题目。步骤ー:把他们写成: 第一列第二列第三列a[〇]今 1 2 3 ー〉第一行a[l]> 4 5 6 —>第二行a[2]今 ? 8 9 ー〉第三行步骤ニ:这样作题目间很简单:*(a[O]+l)我们就知道是第一行的第一个元素往后面跳一列,那么这里就是a[0][1]元素,所以是1。*(a[l]+2)我们就知道是第二行的第一个元素往后面跳二列。那么这里就是a[l][2]元素,所以是6。一定记住:只要是二维数组的题目,一定是写成如上的格式,再去做题目,这样会比较简单。3)数组的初始化,ー维和二维的,ー维可以不写,二维第二个一定要写inta[]={l,2}合法。inta[][4]={2,3,4}合法。但inta[4]ロ={2,3,4}非法。4)二维数组中的行指针inta[l][2];其中a现在就是一个行指针,a+1跳一行数组元素。 指配(*)p[2]指针a[0],a[l]现在就是ー个列指针。a[O]+l跳ー个数组元素。|搭配・p⑵指针数组使用5)还有记住:a[2]变成*(a+2) a[2][3]变成*(a+2)[3]再可以变成 ・(*(a+2)+3)strlen(字符数组名或字符指针变量);字符串测长函数charstr[20]="hell。world!";intlen;len=strlen(str);得出的结果是(en的值为12strcat(字符串1的地址,字符串2的地址):将字符串2的内容连接到字符串1的尾部。charstrl[2O]="ABC”,str2[2O]="xyz";strcat(strlzstr2);则程序运行的结果是str!内存放的字符串变为ABCxyz,当然str2存放的字符串还是xyz.strcmp(字符串1的地址,字符串2的地址):比较串1和串2哪个比较大。比较大小的依据是,两个字符串从左往右相应位置上第一个不相等的字符ASCII码值之差。strcpy(字符串1的地址,字符串2的地址):将字符串2的内容复制到字符串1内。charstrl[2O]=,,ABC,,,str2[2O]=,,xyzw;.以下对ー维整型数组a的正确说明是()。A.inta(10); B.intn=10,a[n];C.intn; D.ttdefineSIZE10scanf&n); inta[SIZE];inta[n];.在C语言中,引用数组元素时,其数组下标的数据类型允许是()。A.整型常量B.整型表达式C.整型常量或整型表达式D.任何类型的表达式8.以下程序段给数组所有的元素输入数据,请选择正确答案填入()。#include<stdio.h>main()(inta[10],i=0;while(i<10)scanf(螺d”, );

A.a+(i++) B.&a[i+l]c.a+iD.&a[++i]10.以下程序的输出结果是()main()(inti,a[10];for(i=9;i>=0;i—)a[i]=10-i;printf("%d%d%d”,a[2],a[5],a[8]);)A.258 B.741c.852D.36911.以下程序运行后,输出结果是()。main()(intn[5]={0,0,0},i,k=2;for(i=0;i<k;i++)n[i]=n[i]+l;printfC%d\n*,n[k]);)A.不确定的值 B.2c.1D.012.以下程序运行后,输出结果是()。main()(inty=18,i=0,j,a[8];do{a[i]=y%2;i++;y=y/2;}while(y>=l);for(j=i-l;j>=0;j-)printfa[j]);printf("\n〃);}A.10000 B.10010 C.00110 D.1010013.以下程序运行后,输出结果是()。main(){inta[10],al[]={1,3,6,9,10},a2[]={2,4,7,8,15},i=0,j=0,k;a[k]=al[i++];a[k]=a2[j++];printfa[k]);for(k=0;k<4a[k]=al[i++];a[k]=a2[j++];printfa[k]);for(k=0;k<4;k++)A.1234 B.1324C.2413 D.4321A.1234 B.1324C.2413 D.432114.以下程序运行后,输出结果是()。14.以下程序运行后,输出结果是()。main()inti/k,a[10],p[3];k=5;for(i=0;i<10;i++)a[i]=i;for(i=0;i<3;i++) p[i]=a[i*(i+l)];for(i=0;i<3;i++) k+=p[i]*2;printf("%d\n",k);)A.20 B.21 C.22 D.23.以下程序运行后输出结果是()。main()(intn[3],i,j,k;for(i=0;i<3;i++)n[i]=0;k=2;for(i=0;i<k;i++)for(j=0;j<k;j++)n[j]=n[i]+l;printfC%d\n*,n[l]); }A.2 B.1 C.0 D.3.下列程序的主要功能是输入10个整数存入数组a,再输入ー个整数x,在数组a中查找X。找到则输出x在10个整数中的序号(从1开始);找不到则输出〇。程序缺少的是()。mainO(inti,a[10],x,flag=0;for(i=0;i<10;i++)scanf&a[i]);scanf&x);for(i=0;i<10;i++)if{flag=i+l;break;}printf(*%d\n*,flag);)A.x!=a[i] B. !(x-a[i]) C. x-a[i] D.!x~a[i].若说明:inta[2][3];则对a数组元素的正确引用是()。A.a(l,2) B. a[l,3] C. a[l>2][!l] D.a[2][0].若有定义:intM3][4有定}:则下述正确的是()。A.此定义语句不正确B.没有元素可得初值〇C.数组b中各元素均为〇D.数组b中各元素可得初值但值不一定为020.若有以下的定义:intt[5][4];能正确引用t数组的表达式是()。A.t[2][4]B.t[5][0] C.t[0][0]D.t[0,0]21.在定义intm[][3]={1,2,3,4,5,6};后,m[1][〇]的值是()。A.4B.1 C.2D.522.在定义intn[5][6]后第10个元素是()。A.n[2][5]B.n[2][4] C.n[l][3]D.n[l][4].若二维数组c有m歹リ,则计算任一元素在数组中的位置的公式为()。(假设c[〇][0]位于数组的第一个位置)A.i*m+j B.j*m+i C.i*m+j-lD.i*m+j+l.若有以下定义语句,则表达式“xド]的值是()。floatx[3][3]={{1.0,2.0,3.0},{4.0,5.0,6.0}};A.0.0 B.4.0 C.5.0 D.6.0.有以下程序main()(inta[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;for(i=l;i<3;i++)for(j=0;j<=i;j++)s+=a[i][j];printfC%d\n*»s);}该程序的输出结果是()。A.18 B.19 C.20 D.21.若定义如下变量和数组:inti;intx[3][3]={1,2,3,4,5,6,7,8,9};则下面语句的输出结果是()。for(i=0;i<3;i++)printfx[i][2-i]);A.159 B.147 C.357 D.369.下述对C语言字符数组的描述中错误的是()。A,字符数组可以存放字符串B,字符数组中的字符串可以整体输入、输出C.可以在赋值语句中通过赋值运算符“イ对字符数组整体赋值D.不可以用关系运算符对字符数组中的字符串进行比较31.不能把字符串:Hello!赋给数组b的语句是()。charstr[10]={'H'e',T',T'〇','!’};charstr[10];str="Hello!";charstr[10];strcpy(str,"Hell〇!〃);charstr[10]=*Hello!";.合法的数组定义是()。A.inta口="string”; B.inta[5]={0,1,2,3,4,5};C.ints="string”; D.chara[]={0,1,2,3,4,5};38.运行下面的程序,如果从键盘上输入:123く空格>456く空格>789く回车》,输出结果是()。B.1,456,789A.B.1,456,789C.1,23,456,789 D.1,23,456main(){chars[100];intc,i;scanf("祝",&c);scanf("%d",&i);scanf("%s",s);printf("%c,%d,%s\n",c,i,s);

39.运行下面的程序,如果从键盘上输入:39.运行下面的程序,如果从键盘上输入:abく回车>c〈回车)defく回车〉则输出结果为()A.a B.0a C.abbbcccdddD.abcdef#include<stdio.h>#defineN6main()(charc[N];inti=0;for( ;i<N;c[i]=getchar(),i++);for(i二〇;iくN;i++) putchar(c[i]);printf("\n");}41•判断两个字符串是否相等,正确的表达方式是()。A.while(sl==s2) B.while(sl=s2)C.while(strcmp(sl,s2)=0) D.while(strcmp(sl,s2)=0)42.以下程序的输出结果是()。main()(charstr[12]={,sVt,;r,;iVnVg'};printf("如、n”,strlen(str));}A.6 B.7 C.11 D.12.C语言中,数组元素的下标下限为〇.C程序在执行过程中,不检查数组下标是否。存储.在定义时对数组的每ー个元素赋值叫数组的;C语言规定,只有类型和存储类型的数组才可定义时赋值。存储.下面程序的运行结果是〇^defineN5main(){inta[N]={l,2,3,4,5},i,temp;for(i=0;i<N/2;i++){temp=a[i]; a[i]=a[N-i-l];a[N-i-l]=temp;}printf("\n");for(i=0;iくN;i++)printf('%d",a[i]);7.以下程序的功能是:从键盘上输入若干个学生的成绩,计算出平均成绩,并输出低于平均分的学生成绩,用输入负数结束输入。请填空。main(){floatx[1000],sum=0.0,ave,a;intn=0,i;printf(""Entermark:\n");scanf(〃%f〃,&a):while(a>=0.0&&n<1000){sum+=[1]; x[n]=[2];n++; scanf&a);)ave=[3];printf("Output:\n");printf("ave=%f\n",ave);for(i二〇;iくn;i++)if([4])printf("%f\n\x[i]);)9.输入!0个整数,用选择法排序后按从小到大的次序输出。^defineN10main()(inti,j,min,temp,a[N];for(i=0;i<N;i++)scanf("%d", [1]);printf("\n");for(i=0;[2];i++){min=i;for(j=i;j<N;j++)if(a[min]>a[j]) [3];temp=a[i];a[i]=a[min];a[min]=temp;}for(i二〇;iくN;i++)printf("%5d",a[i]);printfC\n");).以下程序运行结果是.#include<stdio.h>main()(inta[3][3]={1,2,3,4,5,6,7,8,9},i,sl=0,s2=l;for(i=0;i<=2;i++) {sl=sl+a[i][i];s2=s2*a[i][i];};printf(*sl=%d,s2=%d”,si,s2);).以下程序完成功能是:计算两个3*4阶矩阵相加,并打印出结果。请填空。#include<stdio.h>main()(inta[3][4]={{3,-2,1,2},{0,1,3,-2},{3,1,0,4});intb[3][4]={{-2,3,0,-1},{1,0,-2,3},{-2,0,1,-3}};inti,j,c[3][4];for(i=0;i<3;i++)for(j=0;j<4;j++)for(i=0;i<3;i++){for(j=0;j<4;j++)printf(飞d”,c⑴[j]);printf('\n");18.从键盘输入由5个字符组成的单词,判断此单词是不是hello,并显示结果。#include<stdio.h>main()(staticcharstr[[={ヽ‘,'e','1','1',’〇’};charstrl[5];[1];for(i=0;i<5;i++)[2];flag=0;for(i=0;iく5;i++)if[3]{flag=l;break;}if(flag) printf(z/thiswordisnothello");else printf("this wordishello");}23.以下程序功能是:统计从终端输入的字符中每个大写字母的个数。用#号作为输入结束标志,请填空。#include<stdio.h>#include<ctype.h>main()(intnum[26],i;charc;for(i=0;i<26;i++)num[i]=0;while([1] !='#')

温馨提示

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

评论

0/150

提交评论