收藏 分销(赏)

二级C语言填空题分类汇编.doc

上传人:二*** 文档编号:4510471 上传时间:2024-09-26 格式:DOC 页数:25 大小:156KB
下载 相关 举报
二级C语言填空题分类汇编.doc_第1页
第1页 / 共25页
亲,该文档总共25页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

1、青蓝是06年4月的,深红色是06年9月的,蓝色是07年4月的,罗兰色是07年9月的,绿色是08年4月,黑色是08年9月的, 浅橙色是09年3月的,深绿色是09年9月的,粉色是2010年3月的,表达式(6)已有定义:char c= ;int a=1,b;(此处c的初值为空格字符),执行b=!c&a;后b的值为【6】。【6】0(7)改变量已正确定义为整型,则表达式n=i=2,+i,i+的值为【7】。【7】3(6)设变量a和b已正确定义并赋初值。请写出与a-=a+b等价的赋值表达式【6】。【6】a=a-(a+b)或(a=-b)(6)表达式(int)(double)(5/2)+2.5)的值是【6】(6

2、)4(6)若有定义语句:int a=5;,则表达式:a+的值是 【6】 。(6)5(7)若有语句double x=17;int y;,当执行y=(int)(x/5)%2;之后y的值为 【7】 。(7)1(6)设x为int型变量,请写出一个关系表达式 【6】 ,用以判断x同时为3和7的倍数时,关系表达式的值为真。(x%3=0)&(x%7=0)条件表达式(8)下列程序运行后的输出结果是 【8】。(8)【8】1main( ) int x,a=1,b=2,c=3,d=4;x=(ab)?a:b; x=(xx)?x:d;printf(%dn,x);输出(6)若变量a,b 已定义为int 类型并赋值21 和

3、55,要求用printf 函数以a=21,b=55 的形式输出,请写出完整的的输出语句 【6】 。(6)【6】printf(a=%d,b=%d,a,b);(6)设有定义:float x=123.4567;,则执行下列语句后的输出结果是【6】。(6)【6】123.460000printf(%fn,(int)(x*100+0.5)/100.0);(7)下列程序运行后的输出结果是 【7】。(7)【7】10 11main( ) int m=011,n=11;printf(%d %dn,+ +m,n+ +);(6)执行下列程序时,输入1234567,则输出结果是【6】。(6)【6】12 34#inclu

4、de main( )int a=1,b;scanf(%2d%2d,&a,&b); printf(%d%dn,a,b);(6)执行下列程序后的输出结果是【6】。【6】a=14main()int a=10;a=(3*5,a+4);printf(a=%dn,a);(7)若整型变量a和b中的值分别为7和9,要求按以下格式输出a和b的值:a=7b=9请完成输出语句:printf(【7】,a,b);。【7】a=%dnb=%d(7)若变量x、y已定义为int类型且x的值为99,y的值为9,请将输出语句printf(【7】,x/y);补充完整,使其输出的计算结果形式为:x/y=11 (7)x/y=%d(8)以

5、下程序运行后的输出结果是 【8】 。(8)1 0#include main() int x=20; printf(“%d”,0x20); printf(“%dn”,0x&x20); If语句(7)有以下程序4#include main() int a=1,b=2,c=3,d=0; if(a=1)if(b!=2)if(c=3) d=1;else d=2; else if(c!=3) d=3;else d=4; else d=5;printf(“%dn”,d);程序运行后的输出结果是 【7】 。For循环语句(10)下列程序的输出结果是【12】 。(10)【12】ACE#include main(

6、 )int i;for(i=a;if;i+ +,i+ +) printf(%c,i-a+A);printf(n);(8)若有定义:int k;,以下程序段的输出结果是【8】。【8】#2#4for(k=2;k6;k+,k+)printf(#%d,k);(9)以下程序的定义语句中,x1的初值是【9】,程序运行后输出的内容是【10】【9】2【10】2 4 6 8#includemain()int x=1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,*p4,i;for(i=0;i4;i+)pi=&x2*i+1;printf(%d,pi0);printf(n);(8)以下程

7、序的输出结果是【8】。【8】1#includemain()int i,j,sum;for(i=3;i=1;i-)sum=0;for(j=1;j=i;j+)sum+=i*j;printf(%dn,sum);(10)有以下程序(10)0 1 123#include main() int f,f1,f2,i; f1=0;f2=1; printf(“%d %d”,f1,f2); for(i=3;i=5;i+) f=f1+f2; printf(“%d”,f); f1=f2; f2=f; printf(“n”);程序运行后的输出结果是 【10】 。(11)有以下程序101418#include main(

8、) int a33=1,2,3,4,5,6,7,8,9;int b3=0,i;for(i=0;i3;i+) bi=ai2+a2i;for(i=0;i3;i+) printf(%d,bi);printf(n);程序运行后的输出结果是 【11】 。While 语句(9)有下列程序,若运行时从键盘输入:18,11,则程序的输出结果是 【9】。(9)【9】1 1main( ) int a,b;printf(Enter a,b: ); scanf(%d,%d,&a,&b);while(a! =b) while(ab)a-=b;while(ba)b-=a;printf(%3d%3dn,a,b);(10)下

9、列程序的功能是:将输入的正整数按逆序输出。例如:若输入135 则输出531。请填空。(10)【10】n/=10 或n=n/10#includemain( ) int n,s;printf(Enter a number : ); scanf(%d,&n);printf(Output: );do s=n%10; printf(%d,s); 【10】;while(n! =0);printf(n);(8)下列程序的输出结果是【9】。(8)【9】54321#include main() int n=12345,d;while(n! =0) d=n%10;printf(%d,d);n/=10; (9)有下

10、列程序段,且变量已正确定义和赋值(9)【10】k=n 【11】k+for(s=1.0,k=1;k=n;k+ +) s=s+1.0/(k*(k+1) );printf(s=%fnn,s);请填空,使下列程序段的功能与之完全相同s=1.0;k=1;while( 【10】)s=s+1.0/(k*(k+1) ); 【11】;printf(s=%fnn,s);(7)当执行下列程序时,输入1234567890,则其中while循环体将执 【7】0#includemain()char ch;while(ch=getchar()=0)printf(#);(8)有以下程序(8)不能#include main(

11、) char c1,c2; scanf(“%c”,&c1); while(c190)scanf(“&c”,&c1); c2=c1+32; printf(“%c, %cn”,c1,c2);程序运行输入65回车后,能否输出结果、结束运行(请回答能或不能)【8】。(9)以下程序运行后的输出结果是【9】(9)s=0#include main( )int k=1,s=0; do if(k&2)!=0)continue; s+=k;k+; while(k10); printf(“s=&d/n; ”,s)(10)下列程序运行时,若输入labced12df 输出结果为【10】(10)1AbCeDf2dF#in

12、clude main( ) chara =0,ch; while(ch=getchar()!=n) if(a%2!=0&(cha&ch=z) ch=ch-a+A; a+;putchar(ch); printf(“n”);(9)以下程序运行后的输出结果是 【9】 。(9)5#include main() int a=1,b=7; do b=b/2;a+=b; while (b1); printf(“%dn”,a);(8)有以下程序7#include main() int m,n;scanf(%d%d,&m,&n);while(m!=n) while(mn) m=m-n;while(mn) n=n

13、-m; printf(“%dn”,m);程序运行后,当输入14 63 时,输出结果是 【8】 。Switch语句(9)下列程序的运行结果是【9】。【9】#&main()int a=2,b=7,c=5;switch(a0)case 1:switch(b0)case 1:printf();break;case 2:printf(!);break;case 0:switch(c=5)case 0:printf(*);break;case 1:printf(#);break;case 2:printf($);break;default:printf(&);printf(n);(9)以下程序的输出结果是

14、【9】。【9】9911#includemain()int j,a=1,3,5,7,9,11,13,15,*p=a+5;for(j=3;j;j-)switch(j)case 1:case 2:printf(%d,*p+);break;case 3:printf(%d,*(-p); 函数调用(8)下列程序的运行结果是【8】。【8】m=4 k=4 i=5 k=5int k=0;void fun(int m)m+=k;k+=m;printf(m=%dk=%d,m,k+);main()int i=4;fun(i+);printf(i=%dk=%dn,i,k);9(为什么k=5,调用函数是单向)(12)请

15、将以下程序中的函数声明语句补充完整 (12)max(int a,int b)#include int _【12】_;main( ) int x,y,(*p)();scanf(“%d%d”,&x,&y); p=max; printf(“%dn”,(*p)(x,y);int max(int a,int b)return (ab?a:b);(11)有以下程序3025#include int a=5;void fun(int b) int a=10; a+=b;printf(“%d”,a);main() int c=20; fun(c);a+=c;printf(“%dn”,a);程序运行后的输出结果是

16、 【11】 。(15)有以下程序1 3 6#include fun(int x) if(x/20) run(x/2); printf(“%d ”,x);main() fun(6);printf(“n”); 程序运行后的输出结果是 【15】 。一维数组(10)下列程序的运行结果是: 【10】 。(10)【10】11fun(int t ,int n)int i,m;if(n= =1)return t0;elseif(n=2)m=fun(t,n-1); return m;main( ) int a =11,4,6,3,8,2,3,5,9,2;printf(%dn,fun(a,10);(14)执行下列

17、程序的输出结果是【18】。(14)【18】3 7 15#include main( ) int i,n4=1;for(i=1,i=3;i+ +) ni=ni-1*2+1;printf(%d,ni);(16)下列程序的输出结果是【17】。【17】10int fun(int*x,int n)if(n=0)return x0;else return x0+fun(x+1,n-1);main()int a=1,2,3,4,5,6,7;printf(%dn,fun(a,3);(11)以下程序的输出结果是【12】。【12】4#includemain()int a5=2,4,6,8,10,*p;p=a;p+

18、;printf(%d,*p);(10)以下程序的输出结果是【10】。【10】3#include#define N 5int fun(int*s,int a,int n)int j;*s=a;j=n;while(a!=sj)j-;return j;main()int sN+1;int k;for(k=l;k=N;k+)sk=k+l;printf(%dn,fun(s,4,N);(11)有以下程序,程序执行后,输出结果是【11】(11)7777654321#include void fun (int *a) a0=a1;main()int a10=10,9,8,7,6,5,4,3,2,1,i; fo

19、r(i=2;i=0;i-) fun&ai; for(i=0;i10;i+) printf(“&d”,ai); printf(“n”);(10)有以下程序135#include main() int a=1,2,3,4,5,6,*k3,i=0;while(i3) ki=&a2*i;printf(%d,*ki);i+;程序运行后的输出结果是 【10】 。static(11)以下程序的输出结果是【11】。【11】15#includeint fun(int x)static int t=0;return(t+=x);main()int s,i;for(i=l;i=5;i+)s=fun(i);print

20、f(%dn,s);二维数组(8)下列程序的输出结果是 【8】 。(8)【8】30main( ) int a33=1,2,9,3,4,8,5,6,7,i,s=0;for(i=0;i3;i+ +) s+ =aii+ai3-i-1;printf(%dn,s);(13)设有定义语句:int a3=0,12;,则数组元素a12的值是【13】。【13】0(12)以下程序按下面指定的数据给x数组的下三角置数,并按如下形式输出,请填空。43 72 6 91 5 8 10#includemain()int x44,n=0,i,j;for(j=0;j=j;【12】)n+;xij=【13】;for(i=0;i4;i

21、+)for(j=0;j=i;j+)printf(%3 d,xij);printf(n);【12】i(9)有以下程序123569#include main() int i,j,a3=1,2,3,4,5,6,7,8,9;for(i=0;i3;i+)for(j=i;j0)str2*i=stri;str2*i-1=*;i-;printf(%sn,str);main( ) char str40;scanf(%s,str); insert(str);(11)现有两个C 程序文件T18.c 和myfun.c 同在TC 系统目录(文件夹)下,其中T18.c 文件如下:(11)【11】!knahT#includ

22、e #include myfun.cmain( )fun( );printf(n);myfun.c 文件如下:void fun( ) char s80,c; int n=0;while(c=getchar( )! =n) sn+ +=c;n-;while(n=0) printf(%c,sn-);当编译连接通过后,运行程序T18 时,输入Thank!则输出结果是: 【11】 。(11)下列程序的输出结果是【13】。(11)【13】efgh#include #include char *fun(char *t) char *p=t;return (p+strlen(t)/2);main( )cha

23、r *str=abcdefgh;str=fun(str);puts(str);(10)下列程序的输出结果是【10】。【10】9#includemain()printf(%dn,strlen(IBMn0121);(11)已定义char ch=$;int i=1,j;,执行j!=ch&i+以后,i的值为【 】 【11】2(12)下列程序的输出结果是【12】。【12】5 4#includemain()char a=1,2,3,4,0;printf(%d%dn,sizeof(a),strlen(a);(13)以下程序的功能是:通过函数func输入字符并统计输入字符的个数。输入时用字符作为输入结束标志。

24、请填空。【13】n#includelong【14】;/*函数说明语句*/main()long n;n=func();printf(n=%ldn,n);long func()long m;for(m=0;getchar()!=;【15】);retum m;(12)有以下程序12 fabc de#include #include void fun(char *str) char temp;int n,i;n=strlen(str);temp=strn-1;for(i=n-1;i0;i-) stri=stri-1;str0=temp;main() char s50; scanf(%s,s); fun

25、(s); printf(%sn,s);程序运行后输入:abcdef,则输出结果是 【12】 。指针(17)下列程序的输出结果是【18】。【18】40#includemain()char*s1,*s2,m;s1=s2=(char*)malloc(sizeof(char);*s1=15;*s2=20;m=*s1+*s2;printf(%dn,m);(10)以下程序的输出结果是【11】。【11】3 5#includevoid swap(int*a,int*b)int*t;t=a;a=b;b=t;main()int i=3,j=5,*p=&i,*q=&j;swap(p,q);printf(%d%dn,

26、*p,*q);递归(12)以下程序的输出结果是【13】。【13】13#includevoid fun(int x)if(x/20)fun(x/2);printf(%d,x);main()fun(3);printf(n);预处理(15)下列程序的输出结果是【19】。(15)【19】55#include #define M 5#define N M+Mmain() int k;k=N*N*5;printf(%dn,k);结构体(18)设有说明:struct DATEint year;int month;int day;请写出一条定义语句,该语句定义d为上述结构体类型变量,并同时为其成员year、m

27、onth、day依次赋初值2006、10、1:【19】。【19】struct DATE d=2006,10,1;(13)以下程序中函数fun的功能是:统计person所指结构体数组中所有性别(sex)为的记录的个数,存入变量n中,并作为函数值返回。请填空。【14】personi.sex#include#define N 3typedef structint num;char nam10;char sex;SS;int fun(SS person)int i,n=0;for(i=0;iN;i+)if(【14】=M)n+;return n;main()SS WN=1,AA,F,2,BB,M,3,C

28、C,M;int n;n=fun(W);printf(n=%dn,n);(14)下列程序的运行结果为【14】(14)1001,ChangRong,1098.0#include #include struct Aint a;char b10;double c;void f (struct A*t);main()struct A a=1001,”ZhangDa”,1098.0; f(&a);printf(“%d,%s,%6.1fn”,a.a,a.b,a.c);void f(struct A *t)strcpy(t-b,”ChangRong”);(12)设有定义:&p.IDstruct person

29、int ID;char name12;p;请将scanf(“%d”, 【12】 );语句补充完整,使其能够为结构体变量p的成员ID正确读入数据。(14)有以下程序16#include typedef struct int num;double sREC;void fun1( REC x )x.num=23;x.s=88.5;main() REC a=16,90.0 ; fun1(a); printf(“%dn”,a.num);程序运行后的输出结果是 【14】 。字符串(13)有以下程序How are you? How#include main() char a20=”How are you?”

30、,b20; scanf(“%s”,b);printf(“%s %sn”,a,b);程序运行时从键盘输入:How are you?则输出结果为 【13】 。文件(19)设有定义:FILE*fw;,请将以下打开文件的语句补充完整,以便可以向文本文件readme.txt的最后续写内容。【20】afw=fopen(readme.txt,【20】);(14)以下程序从名为filea.dat的文本文件中逐个读入字符并显示在屏幕上。请填空。【15】filea.dat,r#include main()FILE*fp;char ch;fp=fopen(【15】);ch=fgetc(fp);while(!feof

31、(fp)putchar(ch);ch=fgetc(fp);putchar(n);fclose(fp);(13)以下程序用来判断指定文件是否能正常打开,请填空 (13)NULL#include main( )FILE *fp; if (fp=fopen(“test.txt”,”r”)=_ 【13】_) printf(“未能打开文件!n”); else printf(“文件打开成功!n”);函数功能(7)下列程序用于判断a、b、c 能否构成三角形,若能,输出YES,否则输出NO。当给a、b、c 输入三角形三条边长时,确定a、b、c 能构成三角形的条件是需同时满足三个条件:a+bc,a+cb,b+c

32、a。请填空。(7)【7】(a+bc)&(a+cb)&(b+ca)main( ) float a,b,c;scanf(%f%f%f,&a,&b,&c);if( 【7】 )printf(YESn); /*a、b、c 能构成三角形*/else printf(NOn); /*a、b、c 不能构成三角形*/(12)下列函数fun 的功能是返回str 所指字符串中以形参c 中字符开头的后续字符串的首地址,例如:str 所指字符串为:Hello!,c 中的字符为e,则函数返回字符串:ello!的首地址。若str 所指字符串为空串或不包含c 中的字符,则函数返回NULL。请填空。(12)【12】p+nchar

33、 *fun(char *str,char c) int n=0; char *p=str;if(p! =NULL)while(pn! =c&pn! = 0)n+ +;if(pn= = 0) return NULL;return( 【12】 );(13)下列程序的功能是:输出100 以内(不含100)能被3 整除且个位数为6 的所有整数,请填空。(13)【13】i10 【14】j%3!=0main( ) int i,j;for(i=0; 【13】 ;i+ +) j=i*10+6;if( 【14】 )continue;printf(%d,j);(14)下列isprime 函数的功能是判断形参a 是

34、否为素数,是素数,函数返回1,否则返回0。请填空(14)【15】return 0 【16】return 1int isprime(int a) int i;for(i=2;i=a/2;i+ +)if(a%i= =0) 【15】 ;【16】 ;(15)下列程序的功能是输入任意整数给n 后,输出n 行由大写字母A 开始构成的三角形字符阵列图形。例如,输入整数5 时(注意:n 不得大于10),程序运行结果如下:A B C D EF G H IJ K LM NO请填空完成该程序。(15)【17】ch+ 【18】printf(n); main( )int i,j,n; char ch=A;scanf(%

35、d,&n);if(n11)for(i=1;i=n;i+ +)for(j=1; jnext#include typedef struct node /*链表结点结构* char sub3;struct node *next;Node;Node fun(char s) *建立链表* void disp(Node *h) Node *p;p=h next;while( 【19】 )printf(%sn,P sub); p= 【20】 ; main( ) Node *hd;hd=fun( ); disp(hd); printf(n);(11)下列程序中,fun()函数的功能是计算x2-2x+6,主函数

36、中将调用fun()函数计算:y1=(x+8)2-2(x+8)+6y2=sin2(x)-2sin(x)+6请填空。(11)【11】x+8 【12】sin(x)#include math.hdouble fun(double x)return(x*x-2*x+6);main( ) double x,y1,y2;printf(Enter x: ); scanf(%lf,&x);y1=fun( 【11】);y2=fun( 【12】);printf(y1=%lf,y2=%lfn,y1,y2);(12)下列程序的功能是将N 行N 列二维数组中每一行的元素进行排序,第0 行从小到大排序,第1 行从大到小排序,第2 行从小到大排序,第3 行从大到小排序,例如:请填空。(12)【13】j+1 【14】i%2=1#define N 4void sort(int a N) int i,j,k,t;for(i=0;iN;i+ +)for(j=0;jN-1;j+ +)for(k= 【13】; kN;k+ +)/*判断行下标是否为偶数来确定按升序或降序来排序*/if( 【14】? aijaik) t=aij;aij=aik;aik=t;void outarr(int aNN) main( )int aaNN=2,3,4,1,8,6,5,7,11,12,10,9,15,14,16,13

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 通信科技 > 开发语言

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服