c语言学习知识试题说明语句2.doc

上传人:小** 文档编号:2539018 上传时间:2020-04-19 格式:DOC 页数:23 大小:34.09KB
返回 下载 相关 举报
c语言学习知识试题说明语句2.doc_第1页
第1页 / 共23页
c语言学习知识试题说明语句2.doc_第2页
第2页 / 共23页
点击查看更多>>
资源描述

《c语言学习知识试题说明语句2.doc》由会员分享,可在线阅读,更多相关《c语言学习知识试题说明语句2.doc(23页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、若有说明语句:char c=72;则变量c()。A.说明不合法,c的值不确定B.包含2个字符C.包含3个字符D.包含1个字符以下程序的输出结果是main() int a = 2, b =5; printf(“a=%d,b=%dn”,a, b); A.a=%2,b=%5B.a=%d,b=%dC.a=%d,b=%dD.a=2,b=5若已定义的函数有返回值,则以下关于该函数调用的叙述中错误的是()。A.函数调用可以出现在表达式中B.函数调用可以作为独立的语句存在C.函数调用可以作为一个函数的实参D.函数调用可以作为一个函数的形参以下语句中,不能实现回车换行的是()。A.fprintf(stdout,

2、n);B.fwrite(n,1,1,stdout);C.printf(n);D.putchar(n);下列程序的输出结果为()。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);A.28.000000B.27.500000C.28.500000D.27.000000以下运算符中,优先级最高的运算符是()。A.=B.|C.!D.%已知ch是字符变量,以下不正确的赋值语句是()A.ch=b;B.ch=b;C.ch=x61+3;D.ch=141;若有int w=12;,对以下程序段,描述正确的是().while(

3、w=0) w=w-1;A.循环是无限循环B.循环体执行了10次C.循环体语句执行了一次D.循环体语句一次也不执行以下不正确的if语句形式是()。A.if(x!=y) scanf(%d,&x); else scanf(%d,&y);B.if(xy&x!=y);C.if(x=y) x+=y;D.if(x b) c = 1; else if(a = b) c = 0; else c = -1; return ( c );A.-1B.1C.2D.0一个C程序的执行是从()。A.本程序文件的第一个函数开始,到本程序main函数结束B.本程序的main函数开始,到main函数结束C.本程序的main函数开

4、始,到本程序文件的最后一个函数结束D.本程序文件的第一个函数开始,到本程序文件的最后一个函数结束下面判断正确的是()。A.char *a=china;等价于 char *a;*a=china;B.char str10=china;等价于char str10;str=china;C.char c4=abc,d4=abc;等价于 char c4=d4=abc;D.char *s=china;等价于 char *s;s=china;以下所列的函数定义中,正确的是()A.void play(a as int,b as int)B.void play(int a,int b)C.void play(a:

5、int,b:int)D.void play(int a,b)若有int a=1,2,3,4; 则*(a+1),*(*a+1)的含义分别为()。A.&a01,3B.非法,2C.&a10,2D.a00,4以下叙述中正确的是A.C语言的每条可执行语句最终都将被转换成二进制的机器指令B.C语言的函数不可以单独进行编译C.C语言的源程序不必通过编译就可以直接运行D.C语言的源程序经编译形成的二进制代码可以直接运行以下程序的输出结果为()。main()int a=1,b=2,c=3,d=4,e=5; printf(%dn,func(a+b,b+c,c+a),(d+e); int func(int x,in

6、t y) return(x+y); A.15B.9C.函数调用出错D.13设有以下语句, 若0k4,下列选项中对字符串的非法引用是()。 char str42=aaa,bbb,ccc,ddd,*strp4; int j; for (j=0;j4;j+) strpj=strj;A.*strpB.strpkC.strkD.strp对用C语言编写的代码程序,以下叙述中哪个是正确的A.是一个源程序B.可立即执行C.经过编译解释才能执行D.经过编译即可执行一个算法应该具有“确定性”等五个特性,下面对另外4个特性的描述中错误的是A.可行性B.有穷性C.有零个或多个输出D.有零个或多个输入设变量定义为int

7、 a, b;,执行下列语句时,输入_,则a和b的值都是10. scanf(a=%d, b=%d,&a, &b);A.a=10 b=10B.10 10C.10, 10D.a=10, b=10以下叙述不正确的是()。A.C程序的基本组成单位是函数B.在C程序中,注释说明只能位于一条语句的后面C.一个C源程序必须包含一个main函数D.一个C源程序可由一个或多个函数组成若有说明:int a3=1,2,3,4,5,6,7;则a数组第一维的大小是()。A.3B.4C.无确定值D.2C语言的if语句嵌套时,if与else的配对关系是()。A.每个else总是与它上面的最近的if配对B.每个else总是与最

8、外层的if配对C.每个else总是与它上面的if配对D.每个else与if的配对是任意的函数的形式参数隐含的存储类型说明是()。A.staticB.registerC.externD.auto若想将一个字符数组a的内容存入另一个字符数组b中,下列正确的是:A.strcat(b,a);B.b=a;C.strcpy(b,a);D.strcpy(a,b);以下叙述不正确的是()。A.在C程序中,注释说明只能位于一条语句的后面B.一个C源程序必须包含一个main函数C.一个C源程序可由一个或多个函数组成D.C程序的基本组成单位是函数以下程序的输出结果是 main() int x, i; for(i =

9、 1; i = 100; i+) x = i;if( +x % 2 = 0) if( +x % 3 = 0 ) if( +x % 7 = 0) printf(“%d “, x); printf(“n”);若int a=2,则执行完表达式a-=a+=a*a后,a的值是A.0B.-2C.-8D.-4参加位运算的数据可以是任何类型的数据。 f十进制数15的二进制数是1111. t语句scanf(%7.2f,&a);是一个合法的scanf函数。 f若有定义和语句:int a;char c;float f;scanf(%d,%c,%f,&a,&c,&f); 若通过键盘输入:10,A,12.5,则a=10

10、,c=A,f=12.5. t在C语言中,函数的隐含存储类别是auto. f参加位运算的数据可以是任何类型的数据。 f如果想使一个数组中全部元素的值为0,可以写成 fint a10=0*10;while和dowhile循环不论什么条件下它们的结果都是相同的. f若有定义:int a=15,b=240;则表达式(a&b)&b|b)的结果为1。 t如果想使一个数组中全部元素的值为0,可以写成 int a10=0*10; t/*-【程序设计】-功能:输入一个字符串,过滤此串,只保留串中的字母字 符,并统计新生成串中包含的字母个数。例如:输入的字符串为ab234$df4,新生成的串为abdf 。-*/#

11、include #include #define N 80void bky(); fun(char *ptr) /*Begin*/ /* End */ main() char strN; int s; printf(input a string:);gets(str); printf(The origINal string is :); puts(str); s=fun(str); printf(The new string is :);puts(str); printf(There are %d char IN the new string.,s); bky();void bky() FIL

12、E *IN,*OUT; char sinN; int iOUT; IN=fopen(in.dat,r); if(IN=NULL) printf(Please Verify The Currernt Dir.it May Be Changed); OUT=fopen(out.dat,w); if(OUT=NULL) printf(Please Verify The Current Dir. it May Be Changed); fscanf(IN,%s,sin); iOUT=fun(sin); fprintf(OUT,%d %sn,iOUT,sin); fclose(IN); fclose(O

13、UT);【参考代码】int i,j;for(i=0,j=0;*(ptr+i)!=0;i+)if(*(ptr+i)=a|*(ptr+i)=A)*(ptr+j)=*(ptr+i);j+;*(ptr+j)=0;return(j);=【考生代码】/*- 【程序改错】-功能:编制统计营业员一天的营业额的程序,设程序采用一个循环 实现,每次循环输入一笔交易金额并累计营业额。由于营 业员一天完成的交易次数是不确定的,为此以最后附加输 入一笔0或负数交易额作为交易金额已全部输入结束的标志。 有以下统计营业员一天营业额的算法:统计营业员一天营业额 营业额清0; 输入第一笔交易额; while(交易额0.0) 累

14、计营业额; 输入下一笔交易额; 输出营业额;记一笔交易额为变量sale,营业额为sigma。-*/#includevoid main() /*ERROR*/ float sale,sigma sigma=0.0; printf(Enter sale data.n); /*ERROR*/ scanf(%f,sale); while(sale0.0) /*ERROR*/ sigma+=sale; printf(Enter next sale data(=0 to finish).n); scanf(%f,&sale); printf(Sigma of sale is %.2fn,sigma); =

15、【改错3】错误【学生答案】sigma+=sale;【参考答案】sigma+=sale;sigma=sigma+sale;=/*- 【程序改错】-题目:统计数组中奇数元素之和并作为返回值传回主函数,并统计奇数元素的个数。 程序中共有4条错误语句,请改正错误。-注意:不可以增加或删除程序行,也不可以更改程序的结构。-*/#includeint N;int sum(int b,int m)int i,s=0;/*ERROR*/for(i=0;iN;i+)/*ERROR*/if(bi%2) s=s+bi;N+;/*ERROR*/return N;main()int a10=1,5,8,2,7,9,11

16、,45,12,58;int s;/*ERROR*/s=sum(a);printf(奇数和是:%dn,s);printf(奇数个数是:%dn,N);【改错1】错误【学生答案】for(i=0;iN;i+)【参考答案】for(i=0;im;i+)for(i=0;i=m-1;i+)=【改错2】错误【学生答案】if(bi%2) s=s+bi;N+;【参考答案】if(bi%2)s=s+bi;N+;=【改错3】错误【学生答案】return N;【参考答案】return s;return (s);=【改错4】错误【学生答案】s=sum(a);【参考答案】s=sum(a,10);/*- 【程序改错】-功能:先将

17、在字符串s中的字符按正序存放到t串中,然后把s中的 字符按逆序连接到t串的后面。例如:当s中的字符串为:“ABCDE”时,则t中的字符串应为: “ABCDEEDCBA”。-*/#include#include#includevoid fun(char *s,char *t) int i,sl; sl=strlen(s); /*ERROR*/ for(i=0;isl;i+) ti=si; for(i=0;isl;i+) /*ERROR*/ tsl+i=ssl-i; /*ERROR*/ tsl=0;main() char s100,t100; printf(nPlease enter string

18、 s:);scanf(%s,s); fun(s,t); printf(The result is:%sn,t); 【改错1】错误【学生答案】for(i=0;isl;i+)【参考答案】for(i=0;i=sl;i+)=【改错2】错误【学生答案】tsl+i=ssl-i;【参考答案】tsl+i=ssl-i-1;=【改错3】错误【学生答案】tsl=0;【参考答案】tsl+i=0;/*-【程序填空】-功能:打印出如下图案(菱形) * * * * * *-*/#include main() int i,j,k; /*FILL*/ for(i=0;_;i+) for(j=0;j=4-i;j+) printf

19、( ); /*FILL*/ for(k=1;k=_;k+) printf(*); printf(n); /*FILL*/ for(_;j3;j+) for(k=0;kj+3;k+) printf( ); for(k=0;k5-2*j;k+) printf(*); printf(n); 【空 1 】错误【学生答案】for(i=0;_;i+)【参考答案】i=3i=i4i=【空 2 】错误【学生答案】for(k=1;k=_;k+)【参考答案】2*i+1i*2+11+2*i1+i*2=【空 3 】错误【学生答案】for(_;j3;j+)【参考答案】j=0/*-【程序填空】-功能:用函数调用方式,实现字

20、符串的连接并输出。-*/#include void string_join(char str1, char str2) int i=0,j=0; /*FILL*/ while(str1i!=0) _; for(; str2j!=0; j+) /*FILL*/ str1i+=_; str1i=0;main() static char str120=I am ; char str220=a teacher.; /*FILL*/ string_join(_); /*FILL*/ printf(str1=_n,str1);【空 1 】错误【学生答案】while(str1i!=0)_;【参考答案】i+ii=i+1i+=1i=1+i=【空 2 】错误【学生答案】str1i+=_;【参考答案】str2j=【空 3 】错误【学生答案】string_join(_);【参考答案】str1,str2=【空 4 】错误【学生答案】printf(str1=_n,str1);【参考答案】%s

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com