C语言,沈阳理工大学,考试复习习题
山理工c语言复习题
山理工c语言复习题C语言是一种广泛使用的计算机编程语言,以其高效和灵活的特点在软件开发、系统编程等领域有着重要的地位。
以下是一些山理工C语言复习题,供同学们复习使用:一、选择题1. C语言中,以下哪个关键字用于定义一个函数?- A. int- B. if- C. while- D. void2. 以下哪个是C语言中的合法变量名?- A. 2variable- B. variable-name- C. variable#name- D. variable_name3. 在C语言中,哪个运算符用于求两个数的余数?- A. %- B. /- C. *- D. -4. 以下哪个语句可以用来实现循环结构?- A. if- B. switch- C. for- D. do-while5. 在C语言中,以下哪个函数用于将整数转换为字符串?- A. atoi- B. itoa- C. toupper- D. strcpy二、填空题1. C语言中,一个基本的数据类型包括_______、_______、_______等。
2. 定义一个整型变量的关键字是_______。
3. 在C语言中,数组的下标从_______开始。
4. 函数的返回值类型定义在函数名的_______。
5. 字符串在C语言中以_______字符结尾。
三、简答题1. 简述C语言中指针的概念及其作用。
2. 解释C语言中结构体(struct)的用途和定义方法。
3. 描述C语言中函数的调用过程和参数传递方式。
四、编程题1. 编写一个C语言程序,实现输入两个整数,输出它们的和、差、积、商。
2. 编写一个函数,该函数接受一个字符串作为参数,返回字符串中字符的数量。
3. 编写一个程序,使用数组存储10个学生的分数,并计算平均分。
希望这些复习题能够帮助同学们更好地掌握C语言的基本知识和编程技巧。
在复习过程中,不仅要理解每个概念,还要通过实践来加深理解。
祝同学们学习进步!。
数据结构c语言版试题大全(含答案)
1 绪论沈阳理工大学应用技术学院信息与控制学院计算机科学与技术教研室2011-5-8数据结构复习题:绪论单选题1、在数据结构中,与所使用的计算机无关的数据叫_____结构。
A存储|B物理|C逻辑|D物理和存储2、在数据结构中,从逻辑上可以把数据结构分成______。
A动态结构和静态结构|B紧凑结构和非紧凑结构|C线性结构和非线性结构|D内部结构和外部结构图3、数据结构在计算机内存中的表示是指_______。
数据的存储结构|数据结构|数据的逻辑结构|数据元素之间的关系4、在数据结构中,与所使用的计算机无关的是数据的______结构。
逻辑|存储|逻辑和存储|物理5、在以下的叙述中,正确的是_____。
线性表的线性存储结构优于链表存储结构|二维数组是其数据元素为线性表的线性表|栈的操作方式是先进先出|队列的操作方式是先进后出6、在决定选取何种存储结构时,一般不考虑_______。
各结点的值如何|结束个数的多少|对数据有哪些运算|所用编程语言实现这种结构是否方便7、在存储数据时,通常不仅要存储各数据元素的值,而且还要存储_______。
数据的处理方法|数据元素的类型|数据元素之间的关系|数据的存储方法8、下面说法错误的是_______。
(1)算法原地工作的含义是指不需要任何额外的辅助空间(2)在相同的规模n下,复杂度O(n)的算法在时间上总是优于复杂度O(2n)的算法(3)所谓时间复杂度是指最坏情况下,估计算法执行时间的一个上界(4)同一个算法,实现语句的级别越高,执行效率越低(1)|(1)、(2)|(1)、(4)|(3)9、通常要求同一逻辑结构中的所有数据元素具有相同的特性。
这意味着______。
数据元素具有同一特点|不仅数据元素所包含的数据项的个数要相同,而且对应的数据项的类型要一致|每个数据元素都一样|数据元素所包含的数据项的个数要相等10、以下说法正确的是_______。
数据元素是数据的最小单位|数据项是数据的基本单位|数据结构是带结构的数据项的集合|一些表面上很不相同的数据可以有相同的逻辑结构11、____是数据的最小单元,_____是数据的基本单位.数据项|数据元素|信息项|表元素12、数据结构是指_____以及它们之间的_____.(1)数据元素(2)结构|(1)计算方法(2)关系|(1)逻辑存储(2)运算|(1)数据映像(2)算法13、计算机所处理的数据一般具备某种内在的关系,这是的指_____.数据和数据之间存在的某种关系|元素和元素之间存在某种关系|元素内部具有某种结构|数据项和数据项之间存在某种关系14、数据的逻辑结构可以分为_____两类.动态结构和表态结构|紧凑结构和非紧凑结构|线性结构和非线性结构|内部结构和外部结构15、数据的逻辑结构是指_____关系的整体.数据元素之间逻辑|数据项之间逻辑|数据类型之间|存储结构之间16、在存储数据时,通常不仅要存储各数据元素的值,而且还要存储_____.数据的处理方法|数据元素的类型|数据元素之间的关系|数据的存储方法17、在数据的存储结构中,一个存储结点存储一个_____.数据项|数据元素|数据结构|数据类型18、在计算机的存储器中表示时,物理地址和逻辑地址直接对应并且是连续的,称之为_____.逻辑结构|顺序存储结构|链式存储结构|以上都对19、数据采用链式存储结构时,要求_____.每个结点用占一片连续的存储区域|所有结点占用一片连续的存储区域|结点的最后一个数据域是指针类型|每个结点有多少个后继,就设多少个指针域20、数据的运算_____.效率与采用何种存储结构有关|是根据存储结构来定义的|有算术运算和关系运算两大类|必须用程序设计语言来描述21、下列说法中,不正确的是_____.数据元素是数据的基本单位|数据项是数据中不可分割的最小可标识单位|数据可由若干个数据元素构成|数据项可由若干个数据元素构成22、_____不是算法的基本特性.可行性|长度有限|在规定的时间内完成|确定性23、计算机中算法指的是解决某一问题的有限运算序列,它必须具备输入、输出、_____.可行性、可移植性和可扩充性|可行性、有穷性和确定性|确定性、有穷性和稳定性|易读性、稳定性和确定性24、以下不属于算法特性的是_____.可行性|有输入|确定性|健壮性25、下面关于算法的说法正确的是_____.算法最终必须由程序实现|算法的有穷性是对于任意的一组输入值必须在有穷步骤后结束|算法的可行性是指指令不能有二义性|以上几个都是错误的26、算法的时间复杂度与______有关问题规模|计算机硬件性能|编译程序质量|程序设计语言27、算法分析的主要任务是分析_____.算法是否具有较好的可读性|算法中是否存在语法错误|算法的功能是否符合设计要求|算法的执行时间和问题规模之间的关系28、某算法的时间复杂度为O(n2),表明该算法的_____.问题规模是n2|执行时间等于n2|执行时间与n2成正比|问题规模与n2成正比29、算法分析的目的是_____.找出数据结构的合理性|研究算法中输入和输出关系|分析算法的效率以求改进|分析算法的易读性和文档性30、线性表是具有n个______的有限序列。
C语言程序设计期末考试题及答案
} ;++x } ;++x ;eunitnoc )2%j(fi { )++j;3=<j;0=j(rof ;++x { )++i;2<i;0=i(rof ;0=x,j,i tni { )(niam >h.oidts< edulcni # �是果结行运的序程面下�61 } ;)d,"n\d%"(ftnirp ;++a=+d ;)a(nuf ;3=a nti { )(niam } ;)d,"d%"(ftnirp ;++p=+d ;5=d tni { )p tni( nuf ; l1=d tni 44)D 59)C 99)B 48)A 是果结出输,后行运序程下以�51 } ;)a,"n\d%"(ftnirp ;m&==1p=a ;m&=2p*,k&=1p*,6=m,4=k,a tni { )(niam 值定无 a,错出时行运)D 0)C 1)B 4)A 是值的 a 后行执序程下以�41 } ;))b+a(S,"n/fl.4%"( ftnirp ;2=b,1=a tni { )(niam x*x*tp )x(s enifid # 5.5 TP enifed # edulcni # 0.54�D 0.22�C 5.9 �B 5.94 �A 是果结出输,后行运序程下以�31 ;)2v,1v,"n\d%,d%"(ftnirp }
;)]cgra[vgra,"s%"(ftnirp )0>cgra--(elihw { ))][vgra* rahc ,cgra tni (niam HGFEDCBALKJI )D LKJIHGFEDCBA )C LHJI )B GFEDCBA )A 为果结出输则�>车回<LKJI HGFEDCBA GORP �入键下符示提 SOD 的录目在 所件文行执可此在果如�EXE.GORP 件文行执可成生后接连和译编经序程下以定假 �02 EGAUGNAl c )D EGAUGNAL C )C egaugnal c )B egaugnaL C )A �是果结行运的序程面上 } ;)c,”c%“(ftnirp fidne # ;23+c=c )’Z’=<c&&’A’=>c(fi esle # ;23-c=c )’z’=<c&&’a’=>c(fi RETTEL fi # ;++i { ’0\’=!)]i[rts=c((elihW ;0=i ;i tni ;c,”egaugnaL C”=]02[rts rahc { )(niam 0 RETTEL enifed # �序程读请�91 0)D 3)C 2)B 1 )A 为值的 n,后)d>c=n(&&)b>a=m(:式达表行执则 ;2=n,2=m,4=d,3=c,2=b,1=a tni :义定下如有设�81 } ;)p*,"n\d%"(ftnirp ;)a,p&( tuf l))tni(foezis(collam)* tni(=p ;p*,}11,9,7,5,3,1{=]3[]2[a tni { )(niam };]1[]1[p=s** { )]3[]2[p tni,s** tni( tuf 11)D 9)C 7 )B 1 )A 是果结出输,后行运序程下以�71 21=x)D 6=x)C 8=x)B 4=x )A } ;)x,”n\d%=x“(ftnirp
大学生C语言期末考试试题汇总
大学生C语言期末考试试题汇总第1-3章习题一、单项挑选题1C语言属于()。
A.机器语言B.低级语言C.中级语言D.高级语言2一个C程序可以包含随意多个不同名的函数,但有且仅有一个。
A.函数B.主函数C.includeD.过程3系统默认的C语言源程序扩展名为.C,需经过之后,生成.exe文件,才干运行?A.编辑?编译B.编译?衔接C.编辑?改错D.编辑?衔接4C语言程序从开头执行。
A.程序中第一条可执行语句B.程序中第一个函数C.程序中的main函数D.包含文件中的第一个函数5C语言程序是由构成的。
A.一些可执行语言B.main函数C.函数D.包含文件中的第一个函数6一个算法应具有“确定性”等5个特性,则对另外4个特性描述错误的是。
A.有效性B.有穷性C.有零个或多个输入D.有零个或多个输出7设变量a是整型,f是实型,i双精度型,则表达式10+’a’+i*f 值的数据类型。
A.intB.floatC.doubleD.不确定8在C语言中,变量所分配的内存空间大小是由。
A.均为一个字节B.由用户自己定义C.由变量的类型打算D.是随意的9执行scanf (“a=%d,b=%d”,&a,&b)语句,若要使变量a和b的值分离为3和4,则正确的输入办法为。
A. 3 ,4B.a:3 b: 4C.a=3,b=4D. 3 410在算术表达式中允许使用的括号类型是。
A.{ }B.[ ]C.( )D.以上三项皆错11存储以下数据,占用存储字节最少的是。
A. 0B. ‘0’C. “0”D. 0.012设n=10,i=4,则运算n%=i+1执行后,n 的值是。
A.0B.3C.2D.113C语言中运算对象必需是整型的运算符是。
A.%B. /C. =D.〈=14已知int x=5,y=5,z=5;执行语句x%=y+z;后,x的值是.A .0 B. 1 C. 5 D. 615若有以下类型说明语句:char w;int x;float y;double z;则表达式w-x*y/z的结果为类型A.floatB.charC.intD.double16在C语言的库函数中,可以输出char型变量x值的语句是。
【精品】C语言,沈阳理工大学,考试复习习题.docx
6.1:求出1—100之间的素数,并以每行打印5个输出,当求得素数的个数超过20个时,不再计算。
6.1: # include <math.h>main()( int i,j,k,n=0;for(i=l;i<=100;i++)( k=sqrt(i);for(j=2;j<=k;j++) if(i%j==0) break;if(j>=k+l) { printf( "%3d” ,i);n++;if(n%5==0)printf( "\n” );if(n>=20) break;}}} 6.3:打印形状为直角三角形的九九表。
12 43 6 948 12 169 18 27 (81)数组} *6.3: #include <stdio.h>main()(血i,j;for(i=l;i<10;i++)( for(j=l;j<=i;j++)printf( "%4d”,i*j);printf( "\n” );}}6.2:键盘上输入两个正整数,分别赋给变量a和b,计算从a的值到b的值之间的所有整数之和,并输出结果。
5+6+7+8+9=356.2: #include <stdio.h>main(){ int a,b,sum;scanf( “%d%d" ,&a,&b);if(a>b) ( t=a;a=b;b=t;}for(sum=0;a<=b;a++)( sum+=a;printf( "%d+” ,a);}printf( "\b=%d\n" ,sum);7.1:从键盘输入10个不为零的整数,将它们按正负数分开后,分别按从小到大的顺序打印出来。
7.1: #include <stdio.h>main()( int i,j,t,m=0,a[10];for(i=0;i<10;i++)scanf( "%d”,&a[i]);printf( "\n");for(i=0;i<9;i++)for(j=0;j<9-i;j++) if(aU]>a[j+l])(t=aU];a[j]=aU+l];a|j+l]=t;}for(i=0;i<10;i++)if(a[i]<0) ( printf( "%4d”,a[i]);m++; }printf( "\n");for(i=m;i<10;i++)printf( "%4d”,a[i]);8.2:用起泡法对10个数排序。
C语言基础练习100题(含答案)
C语言基础练习100题(含答案)雷柳青编排1、下面程序的输出是________#include<stdio.h>void main(){ int k=11;printf("k=%d,k=%o,k=%x\n",k,k,k);}A) k=11,k=12,k=11 B) k=11,k=13,k=13 C) k=11,k=013,k=0xb D) k=11,k=13,k=b2、在下列选项中,不正确的赋值语句是________.A) ++t; B) n1=(n2=(n3=0));C) k=i=j; D) a=b+c=1;3、下面合法的C语言字符常量是__________.A) '\t' B) "A" C) 65 D) A4、字符(char)型数据在微机内存中的存储形式是____.A) 反码B) 补码C) EBCDIC码D) ASCII码5、设int a=12,则执行完语句a+=a-=a*a后,a的值是________A) 552 B) 264 C) 144 D) -2646、执行下面程序中的输出语句后,输出结果是______.#include<stdio.h>void main(){int a;printf("%d\n",(a=3*5,a*4,a+5));}A) 65 B) 20 C) 15 D) 107、下面程序的输出是__________.#include<stdio.h>void main(){int x=023;printf("%d\n",--x);}A) 17 B) 18 C) 23 D) 248、下面程序的输出是___________.#include<stdio.h>void main(){char ch1,ch2;ch1='A'+'5'-'3';ch2='A'+'6'-'3';printf("%d,%c\n",ch1,ch2);}A) 67,D B) B,C C) C,D D) 不确定的值9、以下程序的输出结果是________.#include<stdio.h>void main(){ int x=10,y=10;printf("%d %d\n",x--,--y);}A) 10 10 B) 9 9 C) 9 10 D) 10 910、若x和y都是int型变量,x=100,y=200,且有下面的程序片段:printf("%d",(x,y));上面程序片段的输出结果是_______.A) 200 B) 100C) 100 200 D) 输出格式符不够,输出不确定的值11、阅读下面的程序#include<stdio.h>void main(){int i,j;i=010;j=9;printf("%d,%d",i-j,i+j);}则程序的运行结果是________.A) 1,19 B) -1,19 C) 1,17 D) -1,1712、阅读下面的程序#include<stdio.h>void main(){int i,j,m,n;i=8;j=10;m=++i;n=j++;printf("%d,%d,%d,%d",i,j,m,n);}程序的运行结果是_________.A) 8,10,8,10 B) 9,11,8,10C) 9,11,9,10 D) 9,10,9,1113、若已定义int a,则表达式a=10,a+10,a++的值是___.A) 20 B) 10 C) 21 D) 1114、阅读下面的程序#include<stdio.h>void main(){int i,j;scanf("%3d%2d",&i,&j);printf("i=%d,j=%d\n",i,j);}如果从键盘上输入1234567<回车>,则程序的运行结果是________.A) i=123,j=4567 B) i=1234,j=567C) i=1,j=2 D) i=123,j=4515、下面程序的输出结果是________.#include<stdio.h>void main(){int a=-1, b=4, k;k=(++a<=0)&&(b--<=0);printf("%d,%d,%d\n",k,a,b);}A) 1,1,2 B) 1,0,3 C) 0,1,2 D) 0,0,316、下面程序的输出结果是_______.#include<stdio.h>void main(){int a=5,b=3;float x=3.14, y=6.5;printf("%d,%d\n",a+b!=a-b,x<=(y-=6.1));}A) 1,0 B) 0,1 C) 1,1 D) 0,017、若有以下定义和语句:int a=010, b=0x10, c=10;printf("%d,%d,%d\n",a,b,c);则输出结果是_________.A) 10,10,10 B) 8,16,10 C) 8,10,10 D) 8,8,1018、已知有double型变量x=2.5,y=4.7,整型变量a=7, 则表达式x+a%3*(int)(x+y)%2/4 的值是_________.A) 2.4 B) 2.5 C) 2.75 D) 019、设有以下语句:int x=10;x+=3+x%3,则x的值是._________A) 14 B) 15 C) 11 D) 12 20、若d为double型变量,则表达式d=1,d+5,d++的值是_______.A) 1 B) 6.0 C) 2.0 D) 1.021、若有定义int a=12,n=5,则表达式a%=(n%2)运算后,a的值__________.A) 0 B) 1 C) 12 D) 622、若有定义int x=3,y=2和float a=2.5,b=3.5,则表达式:(x+y)%2+(int)a/(int)b的值是____.A) 0 B) 2 C) 1.5 D) 123、在C语言中,以下叙述不正确的是________.A) 在C程序中,无论是整数还是实数,都能被准确无误的表示B) 在C程序中,变量名代表存储器中的一个位置C) 静态变量的生存期与整个程序的生存期相同D) C语言中变量必须先定义后引用24、设a为整型变量,不能正确表达数学关系10<a<15的C语言表达式是________.A) 10<a<15 B) a==11||a==12||a==13||a==14 C) a>10&&a<15 D) !(a<=10)&&!(a>=15)25、如果c为字符型变量,判断c是否为空格不能使用________.(假设已知空格ASCII码为32)A) if(c=='32') B) if(c==32)C) if(c=='\40') D) if(c==' ')26、执行下面程序时,若从键盘输入"2<CR>",则程序的运行结果是________.#include <stdio.h>void main( ){ int k; char cp;cp=getchar( );if (cp>='0' && cp<='9')k=cp-'0';else if (cp>='a' && cp<='f')k=cp-'a'+10;else k=cp-'A'+10;printf("%d\n",k);}A) 2 B) 4 C) 1 D) 1027、执行下面程序后,运行结果是________.#include <stdio.h>void main( ){ int x=41,y=1;if (x%3==0 && x%7==0){ y+=x;printf("y=%d\n",y);}else{y=x;printf("y=%d",y);}}A) y=41 B) y=43 C) y=42 D) y=128、运行下面程序时,从键盘输入"12,34,9<CR>",则输出结果是______.#include <stdio.h>void main( ){ int x,y,z;scanf("%d,%d,%d",&x,&y,&z);if (x<y)if (y<z)printf("%d\n",z);else printf("%d\n",y);else if (x<z)printf("%d\n",z);else printf("%d\n",x);}A) 34 B) 12 C) 9 D) 不确定的值29、运行下面程序时,从键盘输入字母H,则输出结果是________.#include <stdio.h>void main( ){ char ch;ch=getchar( );switch(ch){ case 'H':printf("Hello!\n");case 'G':printf("Good morning!\n");default:printf("Bye_Bye!\n");}}A) Hello! B) Hello!Good Morning!C) Hello! D) Hello!Good morning! Bye_Bye!Bye_Bye!30、执行下列程序段后的输出结果是_________.int x=1,y=1,z=1;x+=y+=z;printf("%d\n",x<y?y:x);A) 3 B) 2 C) 1 D) 431、设ch是char型变量,值为'A',则表达式ch=(ch>='A' && ch<='Z')?ch+32:ch的值是_____.A) Z B) a C) z D) A32、下面程序的输出结果是________.#include <stdio.h>void main( ){ int x=8,y=-7,z=9;if (x<y)if (y<0) z=0;else z-=1;printf("%d\n",z);}A) 8 B) 1 C) 9 D) 033、运行下面程序时,若从键盘输入"3,4 <CR>",则程序的输出结果是_______.#include <stdio.h>void main( ){ int a,b,s;scanf("%d,%d",&a,&b);s=a;if (s<b) s=b;s=s*s;printf("%d\n",s) ;}A) 14 B) 16 C) 18 D) 2034、下列程序的执行结果是_________.#include <stdio.h>void main( ){ int x=0,y=1,z=0;if (x=z=y)x=3;printf("%d,%d\n",x,z);}A) 3,0 B) 0,0 C) 0,1 D) 3,135、能够完成如下函数计算的程序段是______.┌-1 x<0y= ┤0 x=0└ 1 x>0A) y=1; B) if (x>=0)if(x!=0) if(x>0) y=1;if(x>0) y=1; else y=0;else y=0; else y=-1;C) y=0; D) y=-1;if (x>=0) if (x>0) y=1;if (x>0) y=1; else y=0;else y=-1;36、以下程序的执行结果是________.#include <stdio.h>void main( ){ int x=1,y=0;switch (x){case 1:switch (y){case 0:printf("first\n");break;case 1:printf("second\n");break;}case 2:printf("third\n");}}A) first B) firstsecond thirdC) first D) secondthird37、以下程序的执行结果是________.#include <stdio.h>void main( ){ int a,b,c,d,x;a=c=0;b=1;d=20;if (a) d=d-10;else if(!b)if (!c) x=15;else x=25;printf("d=%d\n",d);}A) d=20 B) d=10 C) d=15 D) 2538、下列程序执行后的输出结果是________.#include <stdio.h>void main( ){ int x,y=1,z;if ((z=y)<0) x=4;else if (y==0) x=5;else x=6;printf("%d,%d\n",x,y);}A) 4,1 B) 6,1 C) 5,0 D) 出错信息39、有如下程序#include <stdio.h>void main( ){ int x=1,a=0,b=0;switch(x){case 0: b++;case 1: a++;case 2: a++;b++;}printf("a=%d,b=%d\n",a,b);}该程序的输出结果是__________.A) a=2,b=1 B) a=1,b=1 C) a=1,b=0 D) a=2,b=240、下面程序的输出结果是_________.#include <stdio.h>void main( ){ int a=-1,b=1,k;if ((++a<0) && (b--<=0))printf("%d %d\n",a,b);elseprintf("%d %d\n",b,a);}A) -1 1 B) 0 1 C) 1 0 D) 0 041、假定w、x、y、z、m均为int型变量,有如下程序段:w=1;x=2;y=3;z=4;m=(w<x)?w:x; m=(m<y)?m:y; m=(m<z)?m:z;则该程序段执行后,m的值是_________.A) 4 B) 3 C) 2 D) 142、以下程序的输出结果是_________.main( ){ int a=100;if (a>100) printf("%d\n",a>100);else printf("%d\n",a<=100);}A) a<=100 B) 100 C) 0 D) 143、若执行下面的程序从键盘上输入9,则输出结果是.______________#include <stdio.h>void main( ){int n;scanf("%d",&n);if (n++<10) printf("%d\n",n);else printf("%d\n",n--);}A) 11 B) 10 C) 9 D) 844、以下程序段运行结果是________.int x=1,y=1,z=-1;x+=y+=z;printf("%d\n",x<y?y:x);A) 1 B) 2 C) 4 D) 不确定的值45、有以下程序#include <stdio.h>void main( ){ int a,b,c=246;a=c/100%9;b=(-1)&&(-1);printf("%d,%d\n",a,b);}输出结果是________.A) 2,1 B) 3,2 C) 4,3 D) 2,-146、运行下面程序时,若从键盘输入数据为"123",则输出结果是_______.#include "stdio.h"void main(){ int num,i,j,k,place;scanf("%d",&num);if (num>99)place=3;else if(num>9)place=2;elseplace=1;i=num/100;j=(num-i*100)/10;k=(num-i*100-j*10);switch (place){ case 3: printf("%d%d%d\n",k,j,i);break;case 2: printf("%d%d\n",k,j);break;case 1: printf("%d\n",k);}}A) 123 B) 1,2,3 C) 321 D) 3,2,147、执行下列程序后的输出结果是_______.#include <stdio.h>void main( ){ int k=4,a=3,b=2,c=1;printf("%d\n",k<a?k:c<b?c:a);}A) 4 B) 3 C) 2 D) 148、以下条件表达式中能完全等价于条件表达式if(x)中的x 的是____.A) (x==0) B) (x!=0) C) (x==1) D) (x!=1)49、若运行下面程序时,给变量a输入15,则输出结果是______.#include <stdio.h>void main( ){ int a,b;scanf("%d",&a);b=a>15?a+10:a-10;printf("%d\n",b) ;}A) 5 B) 25 C) 15 D) 1050、执行下面程序的输出结果是________.#include <stdio.h>void main( ){ int a=5,b=0,c=0;if (a=a+b) printf("****\n");else printf("####\n");}A) 有语法错误不能编译B) 能通过编译,但不能通过连接C) 输出****D) 输出####51、为了避免嵌套的if-else语句的二义性,C语言规定else总是与______组成配对关系.A) 缩排位置相同的ifB) 在其之前未配对的ifC) 在其之前尚未配对的最近的ifD) 同一行上的if52、以下程序段__________.x=-1;do{x=x*x;} while (!x);A)是死循环B)循环执行两次C)循环执行一次D)有语法错误53、对下面程序段描述正确的是_______.int x=0,s=0;while (!x!=0) s+=++x;printf("%d",s);A) 运行程序段后输出0B) 运行程序段后输出1C) 程序段中的控制表达式是非法的D) 程序段循环无数次54、下面程序段的输出结果是_______.x=3;do { y=x--;if (!y) {printf("*");continue;}printf("#");} while(x=2);A) ## B) ##* C) 死循环D)输出错误信息55、下面程序的运行结果是_______.#include<stdio.h>void main( ){ int a=1,b=10;do{ b-=a;a++;} while(b--<0);printf("%d,%d\n",a,b);}A) 3,11 B) 2,8 C) 1,-1 D) 4,956、下面程序段的运行结果是__________.int n=0;while (n++<=2)printf("%d",n);A) 012 B) 123 C) 234 D) 错误信息57、下面程序段的运行结果是________.int x=0,y=0;while (x<15) y++,x+=++y;printf("%d,%d",y,x);A) 20,7 B) 6,12 C) 20,8 D)8,2058、下面程序的运行结果是________.#include<stdio.h>void main(){ int s=0,i=1;while (s<=10){ s=s+i*i;i++;}printf("%d",--i);}A) 4 B) 3 C) 5 D) 659、下面程序段的运行结果是________.for(x=10;x>3;x--){ if(x%3) x--;--x; --x;printf("%d ",x);}A) 6 3 B) 7 4 C) 6 2 D) 7 3 60、下面程序的运行结果是________.#include<stdio.h>void main( ){ int a,b;a=-1;b=0;do {++a;++a;b+=a;} while(a<9);printf("%d\n",b);}A) 34 B) 24 C) 26 D) 2561、下面程序段的运行结果是___________.for(i=1;i<=5;)printf("%d",i);i++;A) 12345 B) 1234 C) 15 D) 无限循环62、下面程序的输出结果是__________.#include<stdio.h>void main( ){ int n=4;while (n--) printf("%d ",n--);}A) 2 0 B) 3 1 C) 3 2 1 D) 2 1 063、以下程序运行后的输出结果是________.#include<stdio.h>void main(){ int i=10,j=0;do{ j=j+1; i--;}while(i>2);printf("%d\n",j);}A) 50 B) 52 C) 51 D) 864、有如下程序#include<stdio.h>void main(){ int x=23;do{ printf("%d",x--);}while(!x);}该程序的执行结果是_______A) 321 B) 23C) 不输出任何内容D) 陷入死循环65、以下程序段的执行结果是_______.int i,j,m=0;for(i=1;i<=15;i+=4)for(j=3;j<=19;j+=4)m++;printf("%d\n",m);A) 12 B) 15 C) 20 D) 2566、下面程序的输出结果是___________.#include<stdio.h>void main( ){ int i;for(i=1;i<6;i++){ if (i%2!=0) {printf("#");continue;}printf("*");}printf("\n");}A) #*#*# B) ##### C) ***** D) *#*#*67、下面程序的输出结果是__________.#include<stdio.h>void main( ){ int x=10,y=10,i;for(i=0;x>8;y=++i)printf("%d %d ",x--,y);}A) 10 1 9 2 B) 9 8 7 6C) 10 9 9 0 D) 10 10 9 168、执行以下程序后,输出的结果是__________.#include<stdio.h>void main( ){ int y=10;do {y--;}while (--y);printf("%d\n",y--);}A) -1 B) 1C) 8D) 069、有如下程序#include<stdio.h>void main( ){ int n=9;while(n>6) {n--;printf("%d",n);}} 该程序段的输出结果是__________.A) 987 B) 876 C) 8765 D) 987670、有如下程序#include<stdio.h>void main( ){ int i,sum=0;for(i=1;i<=3;sum++) sum+=i;printf("%d\n",sum);}该程序的执行结果是___________.A) 6 B) 3 C) 死循环D) 071、以下循环体的执行次数是_______#include<stdio.h>void main( ){ int i,j;for(i=0,j=1; i<=j+1; i+=2, j--)printf("%d \n",i);}A) 3 B) 2 C) 1 D) 072、在执行以下程序时,如果从键盘上输入:ABCdef<回车>,则输出为________.#include <stdio.h>void main( ){ char ch;while ((ch=getchar( ))!='\n'){ if (ch>='A' && ch<='Z') ch=ch+32;else if (ch>='a' && ch<'z') ch=ch-32;printf("%c",ch);}printf("\n");}A) ABCdef B) abcDEF C) abc D) DEF73、下面程序的输出结果是__________.main( ){int i,k=0, a=0, b=0;for(i=1;i<=4;i++){k++;if (k%2==0) {a=a+k; continue;}b=b+k;a=a+k;}printf("k=%d a=%d b=%d\n",k,a,b);}A) k=5 a=10 b=4 B) k=3 a=6 b=4C) k=4 a=10 b=3 D) k=4 a=10 b=474、执行下面程序段后,k的值是_________.int i,j,k;for(i=0,j=10;i<j;i++,j--)k=i+j;A) 9 B) 11 C) 8 D) 1075、以下程序的功能是:从键盘上输入若干个学生的成绩, 统计并输出最高成绩和最低成绩,当输入负数时结束输入。
最新辽宁专升本考试真题-C语言部分
最新辽宁专升本考试真题-C语言部分2013辽宁省高职高专毕业生升入本科学校招生考试计算机试卷第二部分计算机高级语言部分(C语言)四、填空题(将正确答案填写到答题卡相应的位置上,每小题2分,共10分)41.若有定义:int a=2,b=1; 则表达式b+1.0/a 输出结果是________________________。
42. 若有定义:int a,b;则表达式b=((a=2*3,a*2),a+4)的值为________________________。
43.语句fopen(“myfile”,”r+”):的含义是________________________。
44.若有定义:int a;能正确表达-1≤a≤2 且a≠0 的C语言表达式是________________________。
45.若有定义:int a=1,b=2,max; 则能实现语句if(a>b) max=a;else max=b;的条件赋值语句为______。
五、阅读程序题(阅读下列程序,将正确的运行结果填写到答题卡相应的位置上,每小题3分,共24分)46.下面程序运行的结果是___________________。
V oid main(){ int i=1,sum=0,t=1;while(i<5){ t*=i++;Sum=sum+t;}Printf(“%d\n”,sum)}47. 下面程序运行的结果是___________________。
main(){ char c1,c2;c1=’A’+’8’-‘3’;c2=’A’+’6’-‘3’;printf(“%d,%c \n”,c1,c2);}48.下面程序运行的结果是___________________。
main(){ int a,b;for(a=1,b=1;a<=100;a++){ if(b>=20) break;if(b%3==1){ b+=3; continue;}b-=5;}printf(“%d\n”,a);}49. 下面程序运行的结果是___________________。
沈阳师范大学历年计算机C语言专升本及答案
沈阳师范大学计算机C 语言专升本考试时间:【60分钟】总 分:【100分】题号一总分得分得分评卷人一、单项选择题 (共50题,每题2分,共计100分)( )1、下列关于c语言用户标识符的叙述中正确的是________。
A、用户标识符中可以出现下划线和中划线(减号)B、用户标识符中不可以出现中划线,但可以出现下划线C、用户标识符中可以出现下划线,但不可以放在用户标识符的开头D、用户标识符中可以出现下划线和数字,它们都可以放在用户标识符的开头( )2、若已定义:int a[9], *p=a;并在以后的语句中未改变p的值,不能表示a[1]地址的表达式为( )。
A、p+1B、a+1C、a++D、++p ( )3、a,b 为整型变量,二者均不为 0,以下关系表达式中恒成立的是()。
A、a*b/a*b==1B、a/b*b/a==1C、a/b*b+a%b==a D、a/b*b==a ( )4、下面程序段执行后输出的结果是________ #include<stdio.h>main() { int i; for(i=1;i<8;i++) { { if(i%3) { printf("*"); continue;}}准考证号:姓名:身份证号:专业班级:}A、*#**#**#B、**#**#*C、*#**#**D、**#**()5、程序流程图中指有箭头的线段表示的是________。
A、图元关系B、数据流C、控制流D、调用关系()6、定义 char a; 则以下赋值语句不恰当的是________。
A、a = 65;B、a = "A";C、a = '\65';D、a = 6 + 'A';()7、在定义 int a[5][6]; 后,数组 a 中的第 10 个元素是__________ (设 a[0][0] 为第一个元素)A、a[2][5]B、a[2][4]C、a[1][3]D、a[1][5]()8、根据c语言的语法规则,下列________个是不合法标识符。
2022年沈阳理工大学公共课《C语言》科目期末试卷B(有答案)
2022年沈阳理工大学公共课《C语言》科目期末试卷B(有答案)一、填空题1、假设变量a和b均为整型,以下语句可以不借助任何变量把a、b中的值进行交换。
请填空。
a+=_______;b=a-_______;a-=_______;2、C语言源程序的基本单位是________3、在C语言中,输入操作是由库函数________完成的,输出操作是由库函数________完成的。
4、假设变量a、b均为整型,则表达式(a=2,b=5,a++,b++,a+b)的值为_______。
5、C语言所提供的基本数据类型包括:单精度型、双精度型、_______、_______和_______。
6、若x=0123,则表达式(5+(int)(x))&(~2)的值是_______。
7、函数swap(int x,inty)可完成对x和y值的交换。
在运行调用函数中的如下语句后,a[0]和a[1]的值分别为_______,原因是_______。
a[o]=1;a[1]=2;swap(a[o],a[1]);8、字符串"ab\n\\012\\\"”的长度是_______。
9、设有以下宏定义:#define WIDTH80#define LENGTH(WIDTH+40)则执行赋值语句:k=LENGTH*20;(k为int型变量)后,k的值是_______。
10、下面程序可求出图中方括号内的元素之积,请填空。
# include<stdio.h>int main(){ int x[3][3]={7,2,1,3,4,8,9,2,6};int s,*p;p=_______;s=*p*_______;printf("product=%d",s);return(0);}二、选择题11、设以下变量均为int类型,则值不等于7的表达式是( )。
A.(x=y=6,x+y,x+1)B.(x=y=6,x+y,y+1)C.(x=6,x+1,y=6,x+y)D.(y=6,y+1,x=y,x+1)12、假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是( )A.7B.8C.6D.213、一个C程序的执行是从()A.本程序的main函数开始,到main函数结束B.本程序的第一个函数开始,到本程序文件的最后一个函数结束C.本程序的main函数开始,到本程序文件的最后一个函数结束D.本程序的第一个函数开始,到本程序main函数结束14、C语言规定:在一个源程序中,main函数的位置( )A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后15、若有初始化语句:int a[3][4]={0};,则下面正确的叙述是()。
2022年沈阳理工大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)
2022年沈阳理工大学计算机科学与技术专业《数据结构与算法》科目期末试卷A(有答案)一、选择题1、下述文件中适合于磁带存储的是()。
A.顺序文件B.索引文件C.哈希文件D.多关键字文件2、哈希文件使用哈希函数将记录的关键字值计算转化为记录的存放地址,因为哈希函数是一对一的关系,则选择好的()方法是哈希文件的关键。
A.哈希函数B.除余法中的质数C.冲突处理D.哈希函数和冲突处理3、链表不具有的特点是()。
A.插入、删除不需要移动元素B.可随机访问任一元素C.不必事先估计存储空间D.所需空间与线性长度成正比4、最大容量为n的循环队列,队尾指针是rear,队头:front,则队空的条件是()。
A.(rear+1)MOD n=frontB.rear=frontC.rear+1=frontD.(rear-1)MOD n=front5、下列关于AOE网的叙述中,不正确的是()。
A.关键活动不按期完成就会影响整个工程的完成时间B.任何一个关键活动提前完成,那么整个工程将会提前完成C.所有的关键活动提前完成,那么整个工程将会提前完成D.某些关键活动若提前完成,那么整个工程将会提前完成6、下列叙述中,不符合m阶B树定义要求的是()。
A.根结点最多有m棵子树 B.所有叶结点都在同一层上C.各结点内关键字均升序或降序排列 D.叶结点之间通过指针链接7、循环队列放在一维数组A中,end1指向队头元素,end2指向队尾元素的后一个位置。
假设队列两端均可进行入队和出队操作,队列中最多能容纳M-1个元素。
初始时为空,下列判断队空和队满的条件中,正确的是()。
A.队空:end1==end2;队满:end1==(end2+1)mod MB.队空:end1==end2;队满:end2==(end1+1)mod (M-1)C.队空:end2==(end1+1)mod M;队满:end1==(end2+1) mod MD.队空:end1==(end2+1)mod M;队满:end2==(end1+1) mod (M-1)8、在下述结论中,正确的有()。
C语言程序设计试题集及其答案完整版
C语言程序设计试题集及其答案HEN system office room 【HEN16H-HENS2AHENS8Q8-HENH1688】第一章基础知识一.填空1.每个C程序都必须有且仅有一个________ 函数。
2. C语言程序开发到执行通常要经过6个阶段即编辑、预处理、________、链接、加载和执行。
3. 软件是程序,以及______、使用和维护所需要的所有文档。
4. 国标中规定:“计算机程序是按照具体要求产生的适合于计算机处理的_________”。
5. 程序设计语言按照书写形式,以及思维方式的不同一般分为低级语言和________两大类。
6. C语言是由________组成的。
7. C语言的函数可分为主函数main、标准库函数和_________。
8. 一个函数是由两部分组成的,即:________和函数体。
9. 编译是将C语言所编写的源程序________成机器代码,也称为建立目标代码程序的过程。
10.程序是由某种程序设计语言编制出来,体现了编程者的控制思想和对计算机执行操作的要求。
不同的任务功能,就会需求不同的软件程序,如:控制计算机本身软硬件协调工作,并使其设备充分发挥效力,方便用户使用的系统软件程序,称为操作系统;而为办公自动化(OA)、管理信息系统(MIS)、人工智能、电子商务、网络互联等等应用而开发的软件程序,统称为_________。
11. 机器语言是以__________形式表示的机器基本指令的集合,是计算机系统唯一不需要翻译可以直接识别和执行的程序设计语言。
12. 与机器语言相比,使用汇编语言来编写程序可以用_______来表示指令的操作码和操作对象,也可以用标号和符号来代替地址、常量和变量。
13.在编译程序之前,凡以____开头的代码行都先由预处理程序预处理。
14. C程序的执行均是由执行_________开始。
15.函数体即为包含在{}内的部分。
它分为________和为完成功能任务由若干个C语句组成的执行部分。
C语言上机150道题
C语言上机150道题及参考答案1.某一门课程考试之后,需要统计考生(10人)的平均成绩,并找出其中的最高分和最低分。
2.从键盘输入两个正整数,输出这两个整数的商,要求商的小数点后保留5位。
例如输入355和113,输出3.14159。
3.用while循环结构编写程序打印ASCII码为33-127的字符。
4.用do-while,for循环结构编写程序打印ASCII码为33-127的字符。
5.用for循环结构编写程序打印ASCII码为33-127字符。
6.在1-500中,找出能同时满足用3除余2,用5除余3,用7除余4的所有整数,用循环结构。
7.输入一个整数将其倒着输出,如54321——12345。
8.计算s=1+1/3+1/5+…+1/n,截止到1/n<10-4。
9.从键盘输入一整数n,计算1*1+2*2+...+n*n的值。
10.用while 循环计算1+2+……+100的和。
11.用do while循环计算1+2+……+100的和。
12.用for 循环计算1+2+……+100的和。
13.输入一个小于等于10的整数n ,计算n!。
14.输入两个正整数m和n,计算m!+n!,m和n的值均小于10。
15.用循环语句,计算1~100之间的所有3的倍数之和。
16.用循环语句,计算100-200之间的所有7的倍数之和。
17.输出1-100之间,7的整数倍数或数字尾数为7的数字,统计出这些数字个数。
18.输入一行字符,分别统计出其中英文字母,空格,数字和其他字符的个数。
19.输入一个整数,统计它有几位数。
如输入367,则该数有3位数。
20.编写程序,输出1到50中间所有能被3整除的正整数。
21.把100~200之间不能被3整除的输出。
22.编程Y=1+3+5+7+...111。
23.编程y=1*1/2*1/3*1/4*1/5*1/6*...前十项之积。
24.编程输出九九乘法表。
25.求1到100奇数和。
2011年期末考试C语言复习题含答案(沈阳工程学院)
2011年期末考试C语言复习题——沈阳工程学院一、单项选择(每题2分,共20分)1、下列 C 数据类型属于C语言提供的基本数据类型。
A、数组类型B、指针类型C、整型D、结构体类型2、C语言程序中,下列 B 标识符是合法。
A、scanfB、str 2C、5aD、His.age3、已知int a ,b;scanf(“%d%d”,&a,&b);程序运行输入a、b的值时,不能作为输入数据分隔符的是 A 。
A、逗号B、空格C、回车D、[Tab]4、C语言对嵌套IF语句的规定是:else总是和 D 配对。
A、其之前最近的IFB、第一个IFC、缩进位置相同的IFD、其前面最近且尚未配对的IF5、下面语句 A 是定义一个有10个INT整型元素的数组。
A、int a[10]B、int a[2,5]C、int a[]D、int *a[10]6、已知char ch[]=”welcome”;printf(“%d”,strlen(ch));输出结果是 B 。
A、6B、7C、8D、97、Fwirte函数的一般调用形式是 D 。
A、fwirte (buffer, count, size, fp) ;B、fwrite (fp, size, count, buffer) ;C、fwrite (fp, count, size, buffer );D、fwrite (buffer, size, count, fp) ;8、设int a=2,b;则执行b=a&&1;语句后,b的结果是 b 。
A、0B、1C、2D、39、在C程序中,设一表达式中包含有int,long, unsigned和char类型的变量和数据,则表达式最后的运算结果类型是 d 。
A、intB、charC、unsignedD、long10、下面程序段的运行结果是 b 。
main ( ){int a=11,b=10,c=0;a/=b+(b&&c);a=a/bprintf(″%d\n″a);}A、0B、1C、1.1D、1111、两次运行下面程序,如果从键盘上分别输入6和4,则程序的输出结果是 C 。
C语言全部考试系统题库含答案
目录目录 (1)单元练习题一C语言基础知识 (3)一、判断题 (3)二、单项选择题 (4)三、读程序选择题 (7)四、程序填空题 (8)五、编程题 (10)单元练习题二C语言程序结构 (10)一、判断题 (10)二、单项选择题 (11)三、读程序选择题 (18)四、程序填空题 (30)五、编程题 (35)单元练习题三数组 (36)一、判断题 (36)二、单项选择题 (37)三、读程序选择题 (39)四、程序填空题 (43)五、编程题 (49)单元练习题四函数 (49)二、单项选择题 (50)三、读程序选择题 (52)四、程序填空题 (60)五、编程题 (63)单元练习题五预处理 (63)一、判断题 (63)二、单项选择题 (64)三、读程序选择题 (64)四、程序填空题 (65)五、编程题 (65)单元练习题六指针 (66)一、判断题 (66)二、单项选择题 (66)三、读程序选择题 (67)四、程序填空题 (74)五、编程题 (77)单元练习题七结构体与共用体 (78)一、判断题 (78)二、单项选择题 (78)三、读程序选择题 (79)四、程序填空题 (83)单元练习题八文件 (84)一、判断题 (84)二、单项选择题 (84)三、读程序选择题 (84)四、程序填空题 (85)五、编程题 (87)第一章C语言基础知识(C语言概述、算法、数据类型运算符表达式、位运算)一、判断题(正确的填A,错误的填B)R1.在C语言中,逗号运算符的优先级最低。
(A)2.在C语言可执行程序的开始执行点是程序中第一个函数。
(B)3.“5ch”是合法的变量名。
(B)4.C语言程序书写格式自由,一行可以写几个语句,一个语句可以分写在多行上。
(A)5.当输入数据时,必须指明变量的地址,如scanf("%f",&f) (A)N6.表达式i++与++i在任何场合功能完全相同。
(B)7.在赋值表达式中,赋值号左边的变量和右边的表达式之值的数据类型可以不相同。
辽宁专升本c语言真题及答案解析答案
辽宁专升本c语言真题及答案解析答案一、单项选择题(本大题共 15 小题,每题只有一个正确答案,答对一题得 2 分,共 30 分)1、以下关于C语言标识符的描述中,正确的是【】。
[单选题] *A)标识符可以由汉字组成B)标识符只能以字母开头C)关键字可以作为用户标识符D)Area与area是不同的标识符(正确答案)2、以下不正确的C语言标识符是 ( ) [单选题] *A、 ABCB、 abcC、 a_bcD、 ab.c(正确答案)3、判断char类型的变量c1是否为数字字符的正确表达式为【】。
[单选题] *A) (c1>=0)&&(c1<=9)B) (c1>=’0’)&&(c1<=’9’)(正确答案)C) ’0’<=c1<=’9’D) (c1>=’0’)||(c1<=’9’)4、若有语句int a=1,b=2,c=3;则以下值为0的表达式是【】。
[单选题] *A)’a’&&’b’B)a<=bC)((a>b)||(b<c)D)(!(a+b)==c&&a)(正确答案)5、已知:int a[2][3]; 则对数组元素的非法引用是【】 [单选题] *A. *(a[0]+2)B. a[1][3](正确答案)C . a[1][0]D. *(*(a+1)+2)6、在循环语句的循环体中执行break语句,其作用是【】。
[单选题] *A)跳出该循环体,提前结束循环(正确答案)B)继续执行break语句之后的循环体各语句C)结束本次循环,进行下次循环D)终止程序运行7、执行语句for(i=10;i>0;i--);后,变量i的值为【】。
[单选题] *A)10B)9C)0(正确答案)D)18、若有int *p1, *p2,k; 不正确的语句是【】 [单选题] *A. p1=&kB. p2=p1C. *p1=k+12D. k=p1+p2(正确答案)9、在函数中未指定存储类别的局部变量,其隐含的存储类别是【】 [单选题] *A. 静态(static)B. 外部(extern)C. 自动(auto)(正确答案)D. 寄存器(register)10、如下程序的输出结果是【】main( ){ int x=2,a=0,b=0;switch(x){ case 2: a++; b++;case 1: ++a; b--; break;case 0: b++;}printf("a=%d, b=%d\n", a, b);} [单选题] *A. a=2, b=0(正确答案)B. a=2, b=1C. a=1, b=1D. a=1, b=011、表示关系a<b<=c的C语言表达式为【】 [单选题] *A. (a<b)&&(b<=c)(正确答案)B. (a<b)AND(b<=c)C. (a<b<=c)D. (a<b)&(b<=c)12、有以下程序#include <stdio.h>main(){int x;scanf(“%d”,&x);if(x<=3); elseif(x!=10)printf(“%d\n”,x); }程序运行时,输入的值在哪个范围才会有输出结果。
C语言基础练习题(含答案)
目录第1-3章C语言基础知识习题 (2)1 选择题 (2)2 填空题 (7)3 答案及部分解析 (9)第4章选择结构习题 (11)1 选择题 (11)2 填空题 (17)3 答案及部分解析 (23)第5章循环结构习题 (26)1 选择题 (26)2 填空题: (32)3 答案及部分解题分析 (39)第6章数组习题 (41)1. 单项选择题 (41)2. 填空题 (44)3. 判断题 (45)4. 程序填空题 (45)5. 阅读程序,分析程序功能。
(49)第7章函数习题 (55)1. 单项选择题 (55)2. 填空题 (56)3. 判断题 (57)4. 程序填空题 (58)5. 写出下列程序运行结果 (59)第8章指针习题 (67)1 选择题 (67)2 填空题 (69)第1-3章C语言基础知识习题1 选择题1. 以下不是C语言特点的是()。
A、语言简洁紧凑B、能够编制出功能复杂程序C、C语言可以直接对硬件操作D、C语言移植性好2.下列字符序列中,不可用作C语言标识符的是()。
A.abc123 B.no.1 C._123_ D._ok3.正确的C语言标识符是()。
A._buy_2 B.2_buy C.?_buy D.buy?4. 请选出可用作C语言用户标识符的一组标识符()。
A.void B.a3_b3 C.For D.2adefine _123 -abc DOWORD IF Case sizeof5. 下列符号中,不属于转义字符的是()。
A.\\ B.\0xAA C.\t D.\06.不属于C语言关键字的是()。
A.int B.break C.while D.character7.是C语言提供的合法关键字的是()。
A.Float B.signed C.integer D.Char8.以下不能定义为用户标示符的是()。
A.scanf B.V oid C._3com_ D.int9.一个C程序是由()。
山理工c语言复习题
山理工c语言复习题C语言是一种广泛使用的计算机编程语言,以其高效和灵活的特点在软件开发、系统编程等领域有着重要的地位。
以下是一些山理工C语言复习题,供同学们复习使用:一、选择题1. C语言中,以下哪个关键字用于定义一个函数?- A. int- B. if- C. while- D. void2. 以下哪个是C语言中的合法变量名?- A. 2variable- B. variable-name- C. variable#name- D. variable_name3. 在C语言中,哪个运算符用于求两个数的余数?- A. %- B. /- C. *- D. -4. 以下哪个语句可以用来实现循环结构?- A. if- B. switch- C. for- D. do-while5. 在C语言中,以下哪个函数用于将整数转换为字符串?- A. atoi- B. itoa- C. toupper- D. strcpy二、填空题1. C语言中,一个基本的数据类型包括_______、_______、_______等。
2. 定义一个整型变量的关键字是_______。
3. 在C语言中,数组的下标从_______开始。
4. 函数的返回值类型定义在函数名的_______。
5. 字符串在C语言中以_______字符结尾。
三、简答题1. 简述C语言中指针的概念及其作用。
2. 解释C语言中结构体(struct)的用途和定义方法。
3. 描述C语言中函数的调用过程和参数传递方式。
四、编程题1. 编写一个C语言程序,实现输入两个整数,输出它们的和、差、积、商。
2. 编写一个函数,该函数接受一个字符串作为参数,返回字符串中字符的数量。
3. 编写一个程序,使用数组存储10个学生的分数,并计算平均分。
希望这些复习题能够帮助同学们更好地掌握C语言的基本知识和编程技巧。
在复习过程中,不仅要理解每个概念,还要通过实践来加深理解。
祝同学们学习进步!。
沈阳音乐学院2023年计算机C语言判断题大全(含六卷)
2023年计算机C语言判断题大全(一)(总分100分,考试时长90分钟)一、判断题(每小题2.5分,共100分)()1、C语言不允许混合类型数据间进行运算。
()【答案】错误()2、函数调用可以出现在执行语句中,但不能出现在表达式中.【答案】错误()3、浮点型常量的指数表示中,e是可以省略的。
【答案】错误()4、在标准C中,所有关系运算符的优先级都相同。
【答案】错误()5、若变量定义为intn;,当n的绝对值大于1时,则表达式1/n的值恒为Oo 【答案】正确()6、如果运算符、“和“/"都是右结合的,则表达式10*6/5值是10。
【答案】正确()7、C语言中的注释有两种类型:单行注释和多行注释。
【答案】正确()8、十进制数100O对应十六进制数为0x3e80【答案】正确()9、在C语言中,同一种数据类型在不同的编译系统中所占空间不一定相同。
()【答案】正确()10、局部变量如果没有指定初值,则其初值为0【答案】错误()11、内存单元的地址与内存单元中的数据是两个完全相同的概念()12、赋值运算符的结合方向为自右向左。
【答案】正确()13、在SWitCh语句中,每一个的CaSe常量表达式的值可以相同。
【答案】错误()14、在SWitCh语句中,CaSe后可不加"{}"0【答案】正确()15、WhiIe循环语句的循环体至少执行一次.【答案】错误()16、CaSe语句后如没有break,顺序向下执行O【答案】正确()17、若有intk=1;while(k=l)k++;则WhiIe循环执行的次数是1次【答案】错误()18、在嵌套循环(多层循环)中,每一层循环都应该使用自己的循环变量,以免互相干扰。
【答案】正确()19、符号“a”和'a,的区别是匕”是字符串常量,占2个字节;而'a,是字符常量,占1个字节。
【答案】正确()20、两指针变量相减所得之差是两个指针所指数组元素之间相差的元素个数【答案】正确()21、C语言标准格式输出函数printf()的参数表是由若干个表达式组()22、对于一个具体的函数来说,实参与形参不必一一对应。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
7.2:#include <stdio.h> 7.2:* * * * * main() * * * * * { char a[5]={‘*’,‘*’,‘*’,‘*’,‘*’}; * * * * * int i,j,k; * * * * for(i=0;i<5;i++) * * * * * { for(j=0;j<i;j++) * printf(“%c”,“ ”); for(k=0;k<5;k++) printf(“%c”,a[k]); printf(“\n”): } }
6.1:# include <math.h> 6.1:求出1—100之间的素数,并以每行打印5个输 出,当求得素数的个数超过20个时,不再计算。 main() { int i,j,k,n=0; for(i=1;i<=100;i++) { k=sqrt(i); for(j=2;j<=k;j++) if(i%j==0) break; if(j>=k+1) { printf(“%3d”,i); n++; if(n%5==0) printf(“\n”); if(n>=20) break; } } }
8.2:#include <stdio.h>
8.2:用选择法对10个数排序。(用函数实现) main()
{ void sort(int array[],int n); int a[10],i; for(i=0;i<10;i++) scanf(“%d”,&a[i]); sort(a,10); for(i=0;i<10;i++) printf(“%4d”,a[i]); } void sort(int array[],int n) { int i,j,k,t; for(i=0;i<n-1;i++) { k=i; for(j=i+1;j<n;j++) if(array[j]<array[k]) k=j; t=array[k];array[k]=array[i];array[i]=t; } }
10.1:# include <stdio.h> 10.1:有10个学生,每个学生的数据包括学 struct student 号、姓名、3门课的成绩,从键盘输入10个学 { char num[6]; 生数据,要求输出3门课程总平均成绩,以及 char name[8]; 最高分的学生的数据(包括学号、姓名、3门 int score[3]; 课程总成绩、平均分数)。 float avr; }stu[10]; main() { int i,j,max=0,maxi=0,sum=0; float average=0; for(i=0;i<10;i++) { scanf(“%s%s”,stu[i].num,stu[i].name); for(j=0;j<3;j++) scanf(“%d”,&stu[i].score[j]); }
7.1:#include <stdio.h> 7.1:从键盘输入10个不为零的整数,将它们按正负 main() 数分开后,分别按从小到大的顺序打印出来。 { int i,j,t,m=0,a[10]; 程序运行结果如下: for(i=0;i<10;i++) -76 -45 scanf(“%d”,&a[i]); 0 printf(“\n”); 1 4 8 12 65 100 123 for(i=0;i<9;i++) for(j=0;j<9-i;j++) if(a[j]>a[j+1]) { t=a[j];a[j]=a[j+1];a[j+1]=t;} for(i=0;i<10;i++) if(a[i]<0) { printf(“%4d”,a[i]); m++; } printf(“\n”); for(i=m;i<10;i++) printf(“%4d”,a[i]); }
void max_min_value(int array[10]) { int *max,*min,*p,*array_end; array_end=array+10; max=min=array; for(p=array+1;p<array_end;p++) if(*p>*max) max=p; else if (*p<*min) min=p; *p=array[0];array[0]=*min;*min=*p; *p=array[9];array[9]=*max;*max=*p; } void output(int array[10]) { int *p; for (p=array;p<=array+9;p++) printf(“%4d”,*p); }
for(i=0;i<10;i++) { sum=0; for(j=0;j<3;j++) sum+=stu[i].score[j]; stu[i].avr=sum/3.0; average+=stu[i].avr; if(sum>max) { max=sum; maxi=i; } } average/=10; printf(“average=%6.2f\n”,average); printf(“The highest score is:%s,%s,%d,%f”, stu[maxi].num,stu[maxi].name,max,stu[i];stdio.h> 6.3:打印形状为直角三角形的九九表。 1 main() 2 i,j; { int 4 3 6 9 for(i=1;i<10;i++) 4 for(j=1;j<=i;j++) { 8 12 16 … printf(“%4d”,i*j); 9 printf(“\n”); 63 72 81 18 27 36 45 54 } }
8.3:#include <stdio.h> 8.3:用起泡法对10个数排序。(用函数实现)
main() { void sort(int array[],int n); int a[10],i; for(i=0;i<10;i++) scanf(“%d”,&a[i]); sort(a,10); for(i=0;i<10;i++) printf(“%4d”,a[i]); } void sort(int array[],int n) { int i,j,t; for(i=0;i<n-1;i++) for(j=0;j<9-i;j++) if(a[j]>a[j+1]) { t=a[j];a[j]=a[j+1];a[j+1]=t; } }
6.2:#include <stdio.h> 6.2:键盘上输入两个正整数,分别赋给变量a和b, 计算从a的值到b的值之间的所有整数之和,并输 main() 出结果。例:5+6+7+8+9=35 { int a,b,sum; scanf(“%d%d”,&a,&b); if(a>b) { t=a;a=b;b=t;} for(sum=0;a<=b;a++) { sum+=a; printf(“%d+”,a); } printf(“\b=%d\n”,sum); }
9.1:# include <stdio.h> 9.1:输入10个整数,将其中最小的数与第一 main() 个数对换,把最大的数与最后一个数对换。 { void input(int number[10]); 写3个函数:①输入10个数;②进行处理;③ void max_min_value(int array[10]); 输出10个数。 void output(int array[10]); int number[10]; input (number); max_min_value(number); output(number); } void input(int number[10]) { int i; for(i=0;i<=9;i++) scanf(“%d”,&number[i]); }
8.1:#include <math.h>
8.1:判断m是否是素数。(用函数实现) main()
{ int f(int m); int m,n; scanf(“%d”,&m); n=f(m); if(n) printf(“%d is a prime number\n”,m); else printf(“%d is not a prime number\n”,m); } int f(int m) { int i,k,p; k=sqrt(m); for(i=2;i<=k;i++) if(m%i==0) break; if(i>=k+1) p=1; else p=0; return p; }