C语言程序设计 阅读程序题库及答案

合集下载

C语言程序设计阅读程序题库及答案

C语言程序设计阅读程序题库及答案

阅读程序题以下程序的输出结果是 .. mainD{ float a;printf"%g";a;}A +00BCD 0下面程序的输出结果是B____..include <>main{ int x=10;{ int x=20;printf "%d;"; x;printf"%d\n"; x;}A 10;20B 20;10C 10;10D 20;20以下程序的输出结果是___B_.. main{ unsigned int n;int i=-521;n=i;printf"n=%u\n";n;}s";s;}A a bookB a book<四个空格C a boD 格式描述错误;输出不确定下面程序的输出结果是____..main{ int a;b;scanf"%2d%3d";&a;&b;printf"a=%d b=%d\n";a;b;}A a=12 b=34B a=123 b=45C a=12 b=345D 语句右错误以下程序段的输出结果是 .. int a=10;b=50;c=30;ifa>ba=b;b=c;c=a;printf"a=%d b=%d c=%d\n";a;b;c;A a=10 b=50 c=10B a=10 b=30 c=10C a=50 b=30 c=10D a=50 b=30 c=50以下程序的输出结果是 .. main{ int a=0;b=1;c=0;d=20;ifa d=d-10;else ifbifc d=15;else d=25;printf"d=%d\n";d;}A d=10B d=15C d=20D d=25下面程序的输出结果为 ..main{ int a=1;b=0;switcha{ case 1: switch b{ case 0: printf"0"; break;case 1: printf"1"; break;}case 2: printf"2"; break;}}A 0B 02C 012D 有语法错误以下程序的输出结果是 .. mainint v1=0;v2=0;v3=0;v4=0;k;fork=0;sk;k++switchsk{ case '1': v1++;case '3': v3++;case '2': v2++;default: v4++;}printf"v1=%d; v2=%d; v3=%d; v4=%d\n";v1;v2;v3;v4;}A v1=4;v2=2;v3=1;v4=1B v1=4;v2=9;v3=3;v4=1C v1=5;v2=8;v3=6;v4=1D v1=4;v2=7;v3=5;v4=8下面程序的输出是 ..main{ int x=1;y=0;a=0;b=0;switchx{ case 1: switchy{ case 0: a++;break;case 1: b++;break;}case 2: a++;b++;break;}printf"a=%d;b=%d\n";a;b;}A a=2;b=1B a=1;b=1C a=1;b=0D a=2;b=2下面程序的输出是____..main{ int num=0;whilenum<=2{ num++;printf"%d\n";num;}}A 1B 1C 1D 12 2 23 34下面程序的输出结果是____.. main{ int a=1;b=0;do{ switcha{ case 1: b=1;break;case 2: b=2;break;default : b=0;}b=a+b;}whileb;printf"a=%d;b=%d";a;b;}A 1;2B 2;1C 1;1D 2;2从键盘上输入"446755"时;下面程序的输出是____.. include <>main{ int c;whilec=getchar='\n'switchc -'2'{ case 0:case 1: putcharc+4;case 2: putcharc+4;break;case 3: putcharc+3;default: putcharc+2;break;}printf"\n";}下面程序的输出结果是____.. main{ int k=0;char c='A';do{ switchc++{ case 'A': k++;break;case 'B': k--;case 'C': k+=2;break;case 'D': k=k%2;contiue;case 'E': k=k+10;break;default: k=k/3;}k++;}whilec<'C' ;printf"k=%d\n";k;}A k=1B k=2C k=3D k=4下面程序的输出结果是____.. main{ int x;i;{ x=i;if++x%2==0if++x%3==0if++x%7==0printf"%d ";x;}}A 39 81B 42 84C 26 68D 28 70下面程序的输出结果是____.. include <>main{ int i;k;a10;p3;k=5;ai=i;fori=0;i<3;i++pi=aii+1;fori=0;i<3;i++k+=pi2;printf"%d\n";k;}A 20B 21C 22D 23假定从键盘上输入";<回车>";下面程序的输出是____.. include <>main{ float x;y;z;scanf"%f;%f";&x;&y;z=x/y;while1{ iffabsz>{ x=y;y=z;z=x/y;}else break;}printf"%f\n";y;}A B C D下面程序的输出结果是____.. main{ int i;j;x=0;fori=0;i<2;i++{ x++;forj=0;j<-3;j++{ ifj%2continue;x++;}x++;}printf"x=%d\n";x;}A x=4B x=8C x=6D x=12下面程序的输出结果是____..main{ int i;j;k=10;fori=0;i<2;i++{ k++;{ int k=0;forj=0;j<=3;j++{ ifj%2 continue;k++;}}k++;}printf"k=%d\n";k;}A k=4B k=8C k=14D k=18下面程序的输出结果是____.. include <>main{ int n33; i; j;fori=0;i<3;i++forj=0;j<3;j++nij=i+j;fori=0;i<2;i++forj=0;j<2;j++ni+1j+1+=nij;printf"%d\n"; nij;}A 14B 0C 6D 不确定下面程序的输出结果是____..include <>main{ int a45={1;2;4;-4;5;-9;3;6;-3;2;7;8;4};int i;j;n;n=9;i=n/5;j=n-i5-1;printf"a%d%d=%d\n"; i;j;aij;}A 6B -3C 2D 不确定下面程序的输出结果是____..int m33={ {1}; {2}; {3} };int n33={ 1; 2; 3 };main{ printf"%d\n"; m10+n00 ; / ① / printf"%d\n"; m01+n10 ; / ② /}① A 0 B 1 C 2 D 3② A 0 B 1 C 2 D 3下面程序的输出结果是____..include <>main{ char s150={"some string "};s2={"test"};printf"%s\n"; strcats1;s2;}A some stringB testC some stritestD some string test下面程序的输出结果是____.. include <>fchar s{ char p=s;whilep='\0'p++;returnp-s;}main{ printf"%d\n";f"ABCDEF";}A 3B 6C 8D 0下面程序的输出结果是____..include <>include <>main{ char str100 ="How do you do";strcpy str + strlenstr/2; "es she";printf"%s\n"; str;}A How do you doB es sheC How are youD How does she下面程序的输出结果是____..include <>funcint a;int b{ int c;c=a+b;returnc;main{ int x=6;y=7;z=8;r;r=funcx--;y++;x+y;z--;printf"%d\n";r;}A 11B 20C 21D 31下面程序的输出结果是____.. include <>void funint s{ static int j=0;do{ sj+=sj+1;}while++j<2;main{ int k;a10={1;2;3;4;5};fork=1;k<3;k++funa;fork=0;k<5;k++printf"%d";ak;}A 35756B 23445C 35745D 12345下面程序的输出结果是____.. include <>int k=1;main{ int i=4;funi;printf "\n%d;%d";i;k; / ① /}funint m{ m+=k;k+=m;{ char k='B';printf"\n%d";k-'A'; / ② /}printf"\n%d;%d";m;k; / ③ /}① A 4;1 B 5;6 C 4;6 D A;B;C参考答案都不对② A 1 B -59 C -64 D A;B;C参考答案都不对③ A 5;66 B 1;66 C 5;6 D A;B;C参考答案都不对下面程序的输出结果是____..include <>funint n; int s { int f1; f2;ifn==1||n==2s=1;else{ funn-1; &f1;funn-2; &f2;s=f1+f2;}}main{ int x;fun6; &x;printf"%d\n"; x;}A 6B 7C 8D 9下面程序的输出结果是____.. int w=3;main{ int w=10;printf"%d\n";fun5w;}funint k{ ifk==0 returnw;returnfunk-1k;}A 360B 3600C 1080D 1200下面程序的输出结果是____.. include <>funaint a{ int b=0;static int c=3;a=c++;b++;returna;}main{ int a=2;i;k;fori=0;i<2;i++k=funaa++;printf"%d\n";k;}A 3B 0C 5D 4下面程序的输出结果是____.. include <>void num{ extern int x;y;int a=15;b=10;x=a-b;y=a+b;}int x;y;main{ int a=7;b=5;x=a-b;y=a+b;num;printf"%d;%d\n";x;y;}A 12;2B 5;25C 1;12D 输出不确定下面程序的输出结果是____..main{ int a=2;i;fori=0;i<3;i++printf"%4d";fa;}fint a{ int b=0;static int c=3;b++;c++;returna+b+c;}A 7 7 7B 7 10 13C 7 9 11D 7 8 9下面程序的输出结果是____.. include <>try{ static int x=3;x++;returnx;}main{ int i; x;fori=0; i<=2; i++x=try ;printf"%d\n"; x;}A 3B 4C 5D 6下面程序的输出结果是____.. include <>main{ int x=1;void f1 ; f2 ;f1 ;f2x;printf"%d\n"; x;}void f1void{ int x=3;printf"%d "; x;void f2 xint x;{ printf"%d "; ++x;}A 1 1 1B 2 2 2C 3 3 3D 3 2 1下面程序的输出结果是____.. include <>define SUBX;Y XYmain{ int a=3;b=4;printf"%d\n";SUBa++;b++;}A 12B 15C 16D 20下面程序的输出结果是____..main{ int a={1;2;3;4;5;6};int p;p=a;printf"%d ";p;printf"%d ";++p;printf"%d ";++p;printf"%d ";p--;p+=3;printf"%d %d ";p;a+3;}A 1 2 3 3 5 4B 1 2 3 4 5 6C 1 2 2 3 4 5D 1 2 3 4 4 5下面程序的输出结果是____..main{ int a34={1;2;3;4;5;6;7;8;9;10;11;12};int p=a;p+=6;printf"%d ";p; / ① /printf"%d ";a+6; / ② /printf"%d ";a1+=2; / ③ /printf"%d";&a00+6;/ ④ /}A 7 7 7 7B ②句语法错误C ③句语法错误D ④句语法错误下面程序的输出结果是____..define FMT "%X\n"include <>{ static int a 4 = { 1;2;3;4;5;6;7;8;9;10;11;12 };printf FMT; a22; / ① /printf FMT; a+1+1 ; / ② /}① A 9 B 11 C A D B② A 6 B 7 C 8 D 前面三个参考答案均是错误的下面程序的输出结果是____..include <>main{ int a={1; 2; 3; 4; 5} ;int x; y; p;p=&a0;x=p+2;printf"%d;%d;%d\n"; p; x; y;}A 1;3;5B 1;2;3C 1;2;4D 1;4;5下面程序的输出结果是____.. void ivex;nint x;n;{ int t;p;p=x+n-1;whilex<p{ t=x;x++=p;p--=t;}}main{ int i;a={1;2;3;4;5;6;7;8;9;0};ivea;10;fori=0;i<10;i++printf"%d ";ai;printf"\n";}A 1 2 3 4 5 6 7 8 9 0B 0 9 8 7 6 5 4 3 2 1C 1 3 5 7 9 2 4 6 8 0D 0 8 6 4 2 9 7 5 3 1下面程序的输出结果是____..include ""funchar w;int n{ char t;s1;s2;s1=w;s2=w+n-1;whiles1<s2{ t=s1++;s1=s2--;s2=t;}}main{ static char p="1234567";funp;strlenp;printf"%s";p;}A 7654321B 1717171C 7171717D 1711717下面程序的输出结果是____.. include <>char p = "abcdefghijklmnopq" ;main{ int i=0;while p++='e' ;printf"%c\n"; p;}A cB dC eD f下面程序的输出结果是____.. include <>fint x; int y{ return y-x;}main{ int a=5; b=6; c;int f; g=f;printf"%d\n"; ga;b ;}A 1B 2C 3D 前面三个参考答案均是错误的下面程序的输出结果是____..include <>main{ int a=1;p;pp;pp=&p;p=&a;a++;printf "%d;%d;%d\n"; a;p; pp;}A 2;1;1B 2;1;2C 2;2;2D 程序有错误下面程序的输出结果是____..main{ char alpha7={"ABCD";"EFGH";"IJKL";"MNOP";"QRST";"UVWX";"YZ"};char p;int i;p=alpha;fori=0;i<4;i++printf"%c";pi;printf"\n";}A AEIMB BFJNC ABCD D DHLP下面程序的输出结果是____..include <>char pp23={ "abc"; "defgh"; "ijkl"; "mnopqr"; "stuvw"; "xyz"};main{ printf"%c\n";pp+1; / ① /printf"%c\n";pp0; / ② /printf"%c\n";pp+1+14; / ③ /printf"%c\n";pp12+2; / ④ /printf"%s\n";pp+1; / ⑤ /}① A a B d C i D m② A a B d C i D m③ A h B l C q D w④ A k B o C u D z⑤ A ijkl B mnopqr C stuvw D xyz下面程序的输出结果是____..include ""struct str1{ char c5;char s;};main{ struct str1 s12={ {"ABCD""EFGH"};{"IJK";"LMN"} };struct str2{ struct str1 sr;int d;}s2={"OPQ";"RST";32767};struct str1 p2;p0=&s10;p1=&s11;printf"%s";++p1->s; / ① /printf"%c"② /}① A LMN B MN C N D IJK② A O B P C Q D R以下程序的输出结果是____..struct st{ int x;y;}p;int s={10;20;30;40};struct st a={1;&s0;2;&s1;3;&s2;4;&s3}; main{ p=a;printf"%d\n";++++p->y;}A 10B 11C 20D 21以下程序的输出结果是____.. include <>main{ union EXAMPLE{ struct{ int x;y;}in;int a;b;}e;=1;=2;}A 2;3B 4;4C 4;8D 8;8下面程序的输出结果是____.. include <>main{ union{ int i2;long k;char c4;}r;s=&r;s->i0=0x39;s->i1=0x38;printf"%c\n";s->c0;}A 39B 9C 38D 8下面程序的输出是 ..main{ printf"%d\n"; EOF;}A -1B 0C 1D 程序是错误的参考答案参考答案:D注释:程序中除法运算的两个操作数均是整型;运算结果也是整型..参考答案:B注释:C语言允许在程序块分程序中说明变量..参考答案:C注释:变量i中的负号传送给变量n后;因n是无符号数;已不作为负号处理..参考答案:D注释:对变量x的――操作是后缀形式;变量x的减1操作要在执行完printf函数之后才进行;所以变量x的值在输出的时候仍然保持原值10..参考答案:B注释:C语言在执行printf时;对函数中的表达式表列的处理顺序是从后向前;即先处理n- -;再处理n++;最后处理n;而且每一个表达式作为一个处理单元;也就是说在不同的表达式中自增自减运算是单独考虑的..参考答案:A注释:变量x和变量y做按位与;结果为0x0200;右移4位为0x0020;再与0x005f做按位或;最后结果为0x007f..参考答案:A注释:逗号表达式的结果是用逗号分开的最后一个表达式的值;此题由于 c=='A'的值是0;所以逗号表达式的值为0..参考答案: B参考答案: A参考答案: C注释:在输出格式描述"%"中;m是输出总长度;n是实际字符的个数;这里m没有给出;则输出总长度就是实际输出字符的个数..参考答案: C参考答案:B参考答案:C参考答案:B参考答案:D参考答案:A参考答案: C参考答案:A参考答案: C注释:在switch语句中;case本身仅起到语句标号的作用;不会改变语句的流程;执行break语句才能退出当前的switch语句..参考答案: D注释:siwtch语句的表达式中;变量c是后缀的增一运算;第一次执行do-while循环时;执行case 'A'后面的语句..参考答案: D参考答案: B参考答案: B注释:fabs是浮点数绝对值函数..参考答案: A参考答案: C注释:C语言允许在程序块分程序内说明变量;如果在程序块内说明的变量和程序块外的变量同名;在块外说明的变量在块内是不可见的..可将此题和进行比较;加深理解..参考答案: C参考答案: B参考答案:① D ② A参考答案:D参考答案: B。

(完整版)C语言程序设计题库及答案,推荐文档

(完整版)C语言程序设计题库及答案,推荐文档

A.552 B.264 C.144 D.-264 30 . int a=3,b=2;printf(“%d,%d\n”,--a,b++);输出结果是(A )。
A.2,2 B.2,3 C.3,2 D.3,3
判断题(共 5 题,每题 2 分) 1 . 只能在循环体内和 switch 语句体内使用 break 语句。(对) 2 . 一个算法应该具备有穷性、确定性、输入、输出和有效性。(对) 3 . C 语言中,每个程序都必须要有一个且只有一个 main 函数。(对) 4 . 调用函数时,实参是一个数组名,则向函数传递的是数组的首地址。(对)
5 . 表达式 16/8*sqrt(4.0)/2 值的数据类型为 double 双精度实型。(对)
第二套试题
单选题(共 20 题,每题 4 分) 1 . 若有输入语句 scanf( %d%d%d,&x,&y,&z);则不能使 x 值为 5,y 值为 6,z 值为 7 的输入是___A___。
A.5,6 ,7
A.5,6 ,7
B.5 回车换行 6 7 C.5 6 7
D.5,6,7
12 . 若 i,j 已定义为 int 类型,则下程序段中内循环体的总的执行次数是( B )。 for (i=3;i>0;i--) for (j=0;j<=4;j++){...}
A.12
B.15
C.16
13 . 下列选项中,合法的 C 语言关键字是_D___。
A.1
B.3
C.2.0
D.2.5
19 . func(exp1,(exp2,exp3),(exp4,exp5,exp6));含有(C )个实参。 A.1 B.2 C.3 D.6 20 . 有 int x=3,y=4,z=5;则下面表达式中值为 0 的是__B____。 A.x&&y B.! (x<y&&!z||1) C.x||y+z&&y-z D.x<=y 21 . 已定义 c 为字符型变量,则下列语句中正确的是____C__。

《C语言程序设计(第2版)》试题库 期末试卷一

《C语言程序设计(第2版)》试题库 期末试卷一

期末试卷一一、单项选择题(每题1分,共45分)1.在计算机系统中,可以执行的程序是()A.源程序B.汇编语言程序C.机器语言程序D.ASCII码2.C语言程序的基本单位是()A.程序行B.语句C.函数D.字符3.下列对C语言程序的书写格式的描述,()是正确的。

A.C语言程序中,每行只能写一条语句B.C语言程序书写时通常采用“缩排”方式C.C语言程序的书写中要求每行都要以分号作结尾D.注释行必须放在程序的头或程序的尾4.启动TC V2.0环境后,打开一个C语言源程序的快捷键是()A.F1 B.F2 C.F3 D.F45.C语言源程序文件file.c经系统编译、连接后,生成的文件名为()A.file.c B.file C.file.obj D.file.exe6.下列选项中,合法的C语言标识符是()A._abc*2 B._ch_er C.a-1 D.a7&b7.以下所列的C语言常量中,错误的是()A.0xFF B.1.2e0.5 C.2L D.’\72’8.以下变量x,y,t均为double类型且已正确赋值,不能正确表示数学式子的C语言表达式是()A.x/y*z B.x*(1/(y*z))C.x/y*1/z D.x/y/z9.下列程序运行后的输出结果是()main(){ int y=3,x=3;printf(“%d\n”,++x+y++);}A.5 B.8 C.7 D.610.若已正确定义x和y为double类型,则表达式x=1,y=x+3/2的值是()A.1 B.2 C.2.0 D.2.511.在C语言中运算对象必须是整型的运算符是()A.% B./ C.= D.*12.若有以下定义:char a; int b; float c;则表达式a*b-c值的类型为()A.int B.char C.double D.float13.下列正确的C语言赋值语句的是()A.x=3,y=5 B.a=b=1 C.i++; D.y=int(x)14.有如下程序段:int a1,a2;char c1,c2;scanf("%d%c%d%c",&a1,&c1,&a2,&c2);若要求a1、a2、c1、c2的值分别为10、20、A、B,正确的数据输入是()A.10A 20B<CR> B.10 A 20 B<CR>C.10 A20B<CR> D.10A20 B<CR>15.有如下程序,输入数据:12345m678<CR>后,x的值是()#include <stdio.h>main( ){ int x; float y;scanf("%3d%f",&x,&y);}A.12345 B.123 C.45 D.34516.有如下程序,对应正确的数据输入是()#include<stdio.h>main( ){ float a,b;scanf("%f%f",&a,&b);printf("a=%f,b=%f\n",a,b);}A.2.04<CR> B.2.04,5.67<CR>5.67<CR>C.a=2.04,b=5.67<CR> D.2.045.67<CR>17.有输入语句:scanf("a=%d,b=%d,c=%d",&a,&b,&c);为使变量a的值为1,b的值为3,c的值为2,从键盘输入数据的正确形式是()A.132<CR> B.1,3,2<CR>C.a=1,b=3,c=2<CR> D.a=1 b=3 c=2<CR>18.已知字母A的ASCII码是65,以下程序的执行结果是()#include<stdio.h>main( ){char c1='A',c2='Y';printf("%d,%d\n",c1,c2);}A.A,Y B.65,65 C.65,90 D.65,8919.以下程序的执行结果是()#include<stdio.h>main( ){ int a=2,b=5;printf("a=%%d,b=%%d\n",a,b);}A.a=%2,b=%5 B.a=2,b=5C.a=%%d,b=%%d D.a=%d,b=%d20.最适合解决选择结构“若x>0,则y=1;否则y=0;”的语句是()A.switch B.嵌套的if-else C.if-else D.if21.设整型变量x,y和z的值依次为3,2和1,则下列程序段的输出结果是()if(x>y)x=y;if(x>z)x=z;printf(″%d,%d,%d\n″,x,y,z);A.1,1,1 B.1,2,1 C.1,2,3 D.3,2,122.执行下列程序段后,变量x的值是()int a=8,b=7,c=6,x=1;if(a>6) if(b>7) if(c>8) x=2;else x=3;A.0 B.1 C.2 D.323.运行下列程序的输出结果是()main(){ int a1=1,a2=1,a3=1,a4=1;if (a1>0) a3++;if (a1>a2) a3--;else if (a1= =a2) a3++;else a3--;printf(″%d,%d,%d,%d\n″,a4,a3,a2,a1);}A.1,1,1,1 B.1,2,3,4C.4,3,2,1 D.1,3,1,124.执行下列语句后,整型变量x的值是()switch (x=1) { case 0:x=10;break;case 1:switch (x=2) {case1:x=20;break;case2:x=30;}}A.30 B.20 C.10 D.125.以下说法中正确的是()A.continue和break只能用在循环体中B.continue只能用在循环体中C.break只能用在循环体中D.continue只能用在循环体外26.执行下列程序段的输出是()m=8;while (m>=5) m--,--m,n=m--- m;pritnf (″%d,%d″,m,n);A.2, 0 B.5,-1 C.5,0 D.5,127.设整型变量x的值为1,执行下列循环语句后,变量x 的值是()do x++; while (x++<2);A.2 B.3 C.4 D.528.执行下列语句后,变量k的值是()for (k=0;k<=5;k++) do k++;while (k<5);A.5 B.6 C.7 D.829.下列程序段中,不能使变量m的值等于10的程序段是()A.m=0; B.do m=0;while (m++<9); while (m++<10);C.for (m=8;m<10;m++); D.m=0;L:m++;if (m<10)goto L;30.下列语句中不正确的是()A.static int a[5]={1,2,3,4,5};B.static int a[5]={1,2,3};C.static int a[]={0,0,0,0,0};D.static int a[5]={0*5};31.说明:int a[10]; 则对a数组元素的正确引用是()A.a[10] B.a[3.5] C.a(5) D.a[10-10]32.下面程序的运行结果是()main(){int a[6],i;for(i=1;i<6;i++){a[i]=9*(i-2+4*(i>3))%5;printf(“%2d”,a[i]);}}A.-4 0 4 0 4 B.-4 0 4 0 3C.-4 0 4 4 3 D.-4 0 4 4 033.以下程序的输出结果是()main(){int n[2]={0},i,j,k=2;for(i=0;i<k;i++)for(j=0;j<k;j++)n[j]=n[i]+1;printf(“%d\n”,n[1]);}A.1 B.3 C.2 D.434.下面程序的输出是()main(){char s[]=”cat and mouse”;int j=0;while(s[j]!=’\0’) ++j;printf(“%d\n”,j);}A.11 B.0 C.12 D.1335.下面程序的运行结果是()main(){char a[10]=”student”;char b[10]=”boy”;int n;n=strlen(a)+strlen(b);printf(“%d”,n);}A.7 B.10 C.12 D.2036.以下程序的输出结果是()void fun(int a,int b,int c){ a=456;b=567;c=678;}main(){ int x=10,y=20,z=30;fun(x,y,z);printf("%d,%d,%d\n",x,y,z);}A.30,20,10 B.10,20,30C.456,567,678 D.678,567,45637.在C语言程序中,当调用函数时,下面说法正确的是()A.实参和形参各占一个独立的存储单元B.实参和形参可以共用存储单元C.可以由用户指定实参和形参是否共用存储单元D.前面都不正确38.下列变量中,哪类变量的生存期和作用域是不一致的()A.自动变量B.定义在文件最前面的外部变量C.静态内部变量D.寄存器变量39.C语言中形参的缺省存储类别是()。

c语言程序设计考试题库及答案

c语言程序设计考试题库及答案

c语言程序设计考试题库及答案1. 选择题1.1 下列关于C语言的描述,错误的是:A. C语言是一种过程式编程语言B. C语言支持面向对象编程C. C语言支持结构化编程D. C语言具有丰富的库函数答案:B1.2 在C语言中,以下哪个关键字用于定义一个函数?A. structB. intC. voidD. function答案:C1.3 下列选项中,哪个不是C语言中的合法变量名?A. _myVarB. myVar2C. 2ndVarD. var$答案:D2. 填空题2.1 在C语言中,用于定义一个整型变量的关键字是______。

答案:int2.2 C语言中,用于输入数据的库函数是______。

答案:scanf2.3 C语言中,用于输出数据的库函数是______。

答案:printf3. 简答题3.1 简述C语言中数组的定义方式。

答案:在C语言中,数组可以通过指定数据类型和数组大小来定义。

例如,定义一个整型数组可以写作:int arrayName[arraySize];。

3.2 解释C语言中的指针是什么,并给出一个指针的定义示例。

答案:指针是一种变量,它存储的是另一个变量的内存地址。

定义指针的示例:int *ptr; 这里ptr是一个整型指针。

4. 编程题4.1 编写一个C语言程序,计算并输出100以内所有偶数的和。

答案:```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}}printf("Sum of even numbers from 1 to 100 is: %d\n", sum);return 0;}```4.2 编写一个C语言函数,实现字符串反转的功能。

答案:```cvoid reverseString(char *str) {int length = 0;while (str[length] != '\0') {length++;}for (int i = 0; i < length / 2; i++) {char temp = str[i];str[i] = str[length - i - 1];str[length - i - 1] = temp;}}```。

C语言程序设计题库及答案

C语言程序设计题库及答案

C语言程序练习题一、选择题1.高级语言编写的程序称()。

A.高级程序B.源程序C.目标程序D.BASIC程序2. 一个C程序的执行是从()。

A.本程序的main函数开始,到main函数结束。

B.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束C.本程序的main函数开始,到本程序文件的最后一个函数结束D.本程序文件的第一个函数开始,到本程序的main函数结束3. 以下叙述正确的是()。

A.在C程序中,main函数必须位于程序的最前面B. C程序的每行中只能写一条语句C. C语言本身没有输入输出语句D.在对一个C程序进行编译的过程中,可发现注释中的拼写错误4. 以下叙述不正确的是()。

A.一个C源程序可由一个或多个函数组成B.一个C源程序必须包含一个main函数C. C程序的基本组成单位是函数D.在C程序中,注释说明只能位于一条语句的后面5.下列字符中属于键盘符号的是()。

A.\ B.\n C.\t D.\b6.下列不正确的转义字符是()。

A.\\ B. \’ C.074 D.\07.下面四组选项中,均是合法的转义字符的选项是()。

A.‘\’’‘\\’‘\n’B.‘\’‘\017’‘\”’C.‘\018’‘\f ’‘xab’D.‘\\0’‘\101’‘x1f’8.下面四组选项中,均是不正确的八进制数或十六进制数的选项是()。

A. 016 0x8f 018B. oabc 017 0xaC. 010 -0x11 0x16D. 0a12 7ff -1239.不是C语言提供的合法关键字是()。

A.switchB.cherC.caseD.default10.C语言提供的合法关键字是()。

A.nextB.stringC.do caseD.struct11.下面四组选项中,均是C语言关键字的选项是()。

A auto enum includeB switch typedef continueC signed union scanfD if struct type12.下列不正确的标识符是()。

C语言程序设计试题集及其答案[修改版]

C语言程序设计试题集及其答案[修改版]

第一篇:C语言程序设计试题集及其答案第一章基础知识一.填空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语句组成的执行部分。

16.C语言程序中一条简单语句是以________字符作为结束符的。

C语言阅读理解试题和参考答案

C语言阅读理解试题和参考答案

C语言阅读理解试题和参考答案MOOC研究资料
C语言阅读理解试题和参考答案
(二〇一五年三月二日)阅读理解,有C程序代码如下(为描述方便,每一行前加了行号)(1)#include <XXX> (2)void main(void)
(3){
(4)int x,y =0;
(5)scanf("%d",&x);
(6)while (x>0)
(7){
(8)y=y*10+x %10;
(9)x = x/10;
(10)}
(11)printf("y=%d",y);
(12)}
阅读上述程序,回答问题:
(1)第1行的功能是什么?
(2)在第2行中,main函数前面为什么有void?(3)说明第4行的功能。

(4)设输入整数127,写出履行该程序的运行结果。

(5)申明该程序的功能。

1
MOOC研究资料答:
(1)是指将XXX这个头文件包罗进来(2)前面加的void或int透露表现main函数的返回值,也即程序退出后的返回值。

void透露表现没有返回值,int透露表现返回一个整型数据。

c语言程序阅读题目(带解释).doc

c语言程序阅读题目(带解释).doc
printf("\nstring_a=%s\nstring_b=%s\n",a,b);
}
void copy_string(char *from,char *to)
{ for(;*from!='\0';from++,to++)
*to=*from;
*to='\0';
}
5.下面程序的运行的功能是BASIC
{
long int f;
if(m<0)
printf("data error!\n");
else if(m==0||m==1)
f=1;
else
f=fac(m-1)*m;
return f;
}
7.下面程序执行的结果是:li 3
Zhang 3
Wang 2
统计选票数目
输入如下数据:
Li
Zhang
Li
Li
Wang
#include<stdlib.h>
struct NODE
{
int num;
struct NODE *next;
};
void main( )
{
struct NODE *p,*q,*r;
int sum=0;
p=(struct NODE*) malloc(sizeof(struct NODE));
q=(struct NODE *) malloc(sizeof(struct NODE));
}
15.输入87653142,下面程序运行的结果是7531
#include<stdio.h>(取出数字中的奇数并组成新的数字)
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

阅读程序题【2.1】以下程序的输出结果是。

main(D ) { float a;printf("%g",a);}A) 0.00000e+00 B) 0.0 C) 1.00000e-07 D) 0【2.2】下面程序的输出结果是B____。

#include <stdio.h>main( ){ int x=10;{ int x=20;printf ("%d,", x);}printf("%d\n", x);}A) 10,20 B) 20,10 C) 10,10 D) 20,20【2.3】以下程序的输出结果是___B_。

main(){ unsigned int n;int i=-521;n=i;printf("n=%u\n",n);}//变量i中的负号传送给变量n后,因n是无符号数,已不作为负号处理。

【2.4】以下程序的输出结果是。

main(D ){ int x=10, y=10;printf("%d %d\n", x――, ――y);}A) 10 10 B) 9 9 C) 9 10 D) 10 9【2.5】以下程序的输出结果是___B。

main(){ int n=1;printf("%d %d %d\n",n,n++,n--);} // C语言在执行printf()时,对函数中的表达式表列的处理顺序是从后向前,即先处理n- -,再处理n++,最后处理n,A) 1 1 1 B) 1 0 1 C) 1 1 0 D) 1 2 1【2.6】以下程序的输出结果是____。

main(){ int x=0x02ff,y=0x0ff00;printf("%d\n",(x&y)>>4|0x005f);}A) 127 B) 255 C) 128 D) 1【2.7】以下程序的输出结果是____。

main(){ int a=1;char c='a';float f=2.0;printf("%d\n",(!(a==0),f!=0&&c=='A'));}A) 0 B) 1【2.8】下面程序的输出结果是____。

main(){ int a=1,i=a+1;do{ a++ ;}while( !~i++ > 3);printf("%d\n",a);}A) 1 B) 2 C) 3 D) 4【2.9】下面程序的输出结果是____。

main(){ int a=111;a=a^00;printf("%d,%o\n",a,a);}A) 111,157 B) 0,0 C) 20,24 D) 7,7【2.10】下面程序的输出结果是____。

main(){ char s[12]= "a book";printf("%.4s",s);}A) a book! B) a book!<四个空格》C) a bo D) 格式描述错误,输出不确定【2.11】下面程序的输出结果是____。

main(){ int a,b;scanf("%2d%3d",&a,&b);printf("a=%d b=%d\n",a,b);}A) a=12 b=34 B) a=123 b=45 C) a=12 b=345 D) 语句右错误【2.12】以下程序段的输出结果是。

int a=10,b=50,c=30;if(a>b)a=b;b=c;c=a;printf("a=%d b=%d c=%d\n",a,b,c);A) a=10 b=50 c=10 B) a=10 b=30 c=10C) a=50 b=30 c=10 D) a=50 b=30 c=50【2.13】以下程序的输出结果是。

main() { int a=0,b=1,c=0,d=20;if(a) d=d-10;else if(!b)if(!c) d=15;else d=25;printf("d=%d\n",d);}A) d=10 B) d=15 C) d=20 D) d=25【2.14】下面程序的输出结果为。

main(){ int a=1,b=0;switch(a){ case 1: switch (b){ case 0: printf("**0**");break;case 1: printf("**1**");break;}case 2: printf("**2**");break;}}A) **0** B) **0****2** C) **0****1****2** D) 有语法错误【2.15】以下程序的输出结果是。

main()int v1=0,v2=0,v3=0,v4=0,k;for(k=0;s[k];k++)switch(s[k]){ case '1': v1++;case '3': v3++;case '2': v2++;default: v4++;}printf("v1=%d, v2=%d, v3=%d, v4=%d\n",v1,v2,v3,v4);}A) v1=4,v2=2,v3=1,v4=1 B) v1=4,v2=9,v3=3,v4=1C) v1=5,v2=8,v3=6,v4=1 D) v1=4,v2=7,v3=5,v4=8【2.16】下面程序的输出是。

main(){ int x=1,y=0,a=0,b=0;switch(x){ case 1: switch(y){ case 0: a++;break;case 1: b++;break;}case 2: a++;b++;break;}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=2【2.17】下面程序的输出是____。

main(){ int num=0;while(num<=2){ num++;printf("%d\n",num);}}A) 1 B) 1 C) 1 D) 12 2 23 34【2.18】下面程序的输出结果是____。

main(){ int a=1,b=0;do{ switch(a){ case 1: b=1;break;case 2: b=2;break;default : b=0;}b=a+b;}while(!b);printf("a=%d,b=%d",a,b);}A) 1,2 B) 2,1 C) 1,1 D) 2,2【2.19】从键盘上输入"446755"时,下面程序的输出是____。

#include <stdio.h>main(){ int c;while((c=getchar())!='\n')switch(c -'2'){ case 0:case 1: putchar(c+4);case 2: putchar(c+4);break;case 3: putchar(c+3);default: putchar(c+2);break;}printf("\n");}【2.20】下面程序的输出结果是____。

main(){ int k=0;char c='A';do{ switch(c++){ case 'A': k++;break;case 'B': k--;case 'C': k+=2;break;case 'D': k=k%2;contiue;case 'E': k=k+10;break;default: k=k/3;}k++;}while(c<'C') ;printf("k=%d\n",k);}A) k=1 B) k=2 C) k=3 D) k=4【2.21】下面程序的输出结果是____。

main(){ 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);}}A) 39 81 B) 42 84 C) 26 68 D) 28 70【2.22】下面程序的输出结果是____。

#include <stdio.h>main( ){ int i,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+1)];for(i=0;i<3;i++)k+=p[i]*2;printf("%d\n",k);}A) 20 B) 21 C) 22 D) 23【2.23】假定从键盘上输入"3.6,2.4<回车>",下面程序的输出是____。

#include <math.h>main(){ float x,y,z;scanf("%f,%f",&x,&y);z=x/y;while(1){ if(fabs(z)>1.0){ x=y;y=z;z=x/y;else break;}printf("%f\n",y);}A) 1.500000 B) 1.600000 C) 2.000000 D) 2.400000【2.24】下面程序的输出结果是____。

main(){ int i,j,x=0;for(i=0;i<2;i++){ x++;for(j=0;j<-3;j++){ if(j%2)continue;x++;x++;}printf("x=%d\n",x);}A) x=4 B) x=8 C) x=6 D) x=12【2.25】下面程序的输出结果是____。

main(){ int i,j,k=10;for(i=0;i<2;i++){ k++;{ int k=0;for(j=0;j<=3;j++){ if(j%2) continue;k++;}k++;}printf("k=%d\n",k);}A) k=4 B) k=8 C) k=14 D) k=18【2.26】下面程序的输出结果是____。

相关文档
最新文档