C练习题汇总19页word.doc
《C练习题汇总19页word.doc》由会员分享,可在线阅读,更多相关《C练习题汇总19页word.doc(19页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、如有侵权,请联系网站删除,仅供学习与交流C练习题汇总【精品文档】第 19 页一、判断 变量根据其作用域的范围可以分作局部变量和全局变量. 答案:YC语言的switch语句中case后只能为整型或字符型常量或常量表达式 答案:Ywhile和dowhile循环不论什么条件下它们的结果都是相同的.答案:N逻辑表达式-5&!8的值为1.答案:N循环结构中的continue语句是使整个循环终止执行 答案:N若有说明int c;则while(c=getchar();是正确的C语句。答案:Y表达式 (j=3, j+) 的值是4.答案:NC语言中%运算符的运算对象必须是整型.答案:Y在C程序中 , 函数既可以
2、嵌套定义 , 也可以嵌套调用答案:Nint i=20;switch(i/10) case 2:printf(A); case 1:printf(B);的输出结果为A。答案:N两个字符串中的字符个数不相同时也可进行字符串大小的比较 答案:Ychar *p=girl;的含义是定义字符型指针变量p,p的值是字符串girl。答案:N如果有一个字符串,其中第十个字符为n,则此字符串的有效字符为9个。答案:N如果函数值的类型和return语句中表达式的值不一致,则以函数类型为准。答案:YC语言中只能逐个引用数组元素而不能一次引用整个数组。答案:Yint a34=1,5,9; 它的作用是将数组各行第一列的元
3、素赋初值,其余元素值为0。答案:YC语言的函数可以嵌套定义.答案:N函数strlen(ASDFGn)的值是7。答案:N二、单项选择 1、若有说明: int a34=0;则下面正确的叙述是()。A:只有元素a00可得到初值0B:此说明语句不正确C:数组a中各元素都可得到初值,但其值不一定为0D:数组a中每个元素均可得到初值0答案:D2、若有下列定义,则对a数组元素a2地址的正确引用是()。 int a5,*p=a;A:*(p+5)B:*p+2C:*(a+2)D:*&a5答案:C3、为表示关系xyz,应使用C语言表达式A:(x=y)&(y=z)B:(x=y) AND (y=z)C:(x=y=z)D
4、:(x=z)&(y=z)答案:A4、设有说明:char c; int x; double z;则表达式c*x+z值的数据类型为A:floatB:intC:charD:double答案:D5、能正确表示逻辑关系: a10或a0 的C语言表达式是A:a=10 or a=0 | a=10 & a=10 | a=y&chb!=c和a(b!=c)的执行顺序是一样的B:!a!=(b!=c)表达式的值为1C:a|(b=c)执行后b的值为0D:a&bc的结果为假答案:B10、C语言规定,在一个源程序中,main函数的位置()。A:必须在最开始B:必须在系统调用的库函数的后面C:可以任意D:必须在最后答案:C1
5、1、下列字符序列中,不可用作C语言标识符的是()。A:b70B:#abC:symbolD:a_1答案:B12、在C语言中,能代表逻辑值“真”的是()。A:TrueB:大于0的数C:非0整数D:非0的数答案:D13、任何一个C语言的可执行程序都是从_开始执行的.A:程序中的第一个函数B:main( )函数的入口处C:程序中的第一条语句D:编译预处理语句答案:B14、下列语句中,不正确的是()。A:char a2=1,2;B:int a2=1,2;C:char a2=1,2,3;D:char a2=1;答案:C15、若有说明:int *p1,*p2,m=5,n;以下均是正确赋值语句的选项是()。A
6、:p1=&m;p2=&p1B:p1=&m;p2=&n;*p1=*p2;C:p1=&m;p2=p1;D:p1=&m;*p2=*p1;答案:C16、在C语言中,调用函数除函数名外,还必须有()。A:函数预说明B:实际参数C:( )D:函数返回值答案:C17 、以下叙述中正确的是 ()。A:C程序中注释部分可以出现在程序中任意合适的地方B:花括号“和”只能作为函数体的定界符C:构成C程序的基本单位是函数,所有函数名都可以由用户命名D:分号是C语句之间的分隔符,不是语句的一部分答案:A18、变量p为指针变量,若p=&a,下列说法不正确的是()。A:&*p=&aB:*&a=aC:(*p)+=a+D:*(
7、p+)=a+答案:D19、int a=3,b=2,c=1;if(abc)a=b;else a=c;则a的值为()。A:3B:2C:1D:0答案:C20、在以下给出的表达式中,与 do-while(E)语句中的(E)不等价的表达式是()。A:(!E=0)B:(E0|E0)C:(E=0)D:(E!=0)答案:C21、若用数组名作为函数的实参,传递给形参的是()。A:数组的首地址B:数组第一个元素的值C:数组中全部元素的值D:数组元素的个数答案:A22、putchar函数可以向终端输出一个()。A:整型变量表达式值B:实型变量值C:字符串D:字符或字符型变量值答案:D三、程序填空 共2题 (共计25
8、分)第1题功能:从键盘上输入一个正整数,判断其是否是回文数。说明:所谓回文数是指顺序读与反序读都是一样的数,如121、25852都是回文数。 将整数的各位依次存入数组a中,然后再进行判断#include int main() int num,a10,r; int i=0,j,flag=1; /*flag作为是否为回文的标志*/ scanf(%d,&num); if (num=j;i-,j+) if (aj=ai) /*SPACE*/ else flag=0; break; /*SPACE*/ if (【?】) printf(是回文n); else printf(不是回文n); return 0
9、;答案:=(答案1)=ai=r=(答案2)=continue 或 flag=1=(答案3)=flag 或flag != 0或flag = 1=或=i0第2题 功能:用冒泡排序法对数组a 进行由小到大的排序。#include void fun(int a,int n) int i,j,t; /*SPACE*/ for (j=0; 【?】;j+) /*SPACE*/ for (i=0; 【?】;i+) /*SPACE*/ if(【?】) t=ai; ai=ai+1; ai+1=t;int main() int i,a10=3,7,5,1,2,8,6,4,10,9; /*SPACE*/ for(i=
10、0;i10;i+) printf(%3d,ai); return 0;答案:=(答案1)=j=n-1或jn=(答案2)=in-j-1或iai+1=(答案4)=fun(a,10)第3题 (10.0分) 题号:76功能:找出数组中最大值和此元素的下标,数组元素的值由键盘 输入。#include void main() int a10,*p,*s,i; for(i=0;i10;i+) /*SPACE*/ scanf(%d, 【?】); /*SPACE*/ for(p=a,s=a;【?】10;p+) /*SPACE*/ if(*p【?】*s) s=p; /*SPACE*/ printf(max=%d,
11、index=%dn,【?】,s-a);答案:=(答案1)=a + i或 &ai=(答案2)=p-a=(答案3)=(答案4)=*s第4题 (15.0分) 题号:27功能:输出100到1000之间的各位数字之和能被15整除的所有数, 输出时每10个一行。#include int main() int m,n,k,i=0; for(m=100;m0)或while(n!=0)或while(n)=(答案4)=printf(n)或puts(n)或putchar(n)第5题 功能:用函数调用方式,实现字符串的复制。#include void string_copy(char *str_from, char
12、*str_to) int i=0; /*SPACE*/ for(; (*(【?】)=*(str_from+i)!=0; i+) ;int main() static char array_str120=i am a teacher.; char array_str220; /*SPACE*/ 【?】(array_str1, array_str2); /*SPACE*/ 【?】(array_str2=%sn,array_str2); return 0;答案:=(答案1)=str_to+i=(答案2)=string_copy=(答案3)=printf第6题 功能:以下程序是用选择法对10个整数按从
13、小到大顺序排序。说明:每一趟均找到未排好序的数中的最小数的位置,然后将其交换到正确的位置#include #define N 10int main() int i,j,k,t,aN; for(i=0;i=N-1;i+) scanf(%d,&ai); /*输入10个整数*/ for(i=0;iN-1;i+) /*SPACE*/ /*SPACE*/ for(j=i+1; 【?】;j+) if(ajak) k=j; /*SPACE*/ if(【?】) t=ai; ai=ak; ak=t; printf(output the sorted array:n); for(i=0;i=N-1;i+) pri
14、ntf(%5d,ai); printf(n); return 0;答案:=(答案1)=k=i=(答案2)=jN或ji第7题 功能:打印出如下字母塔。最后一行字母前无空格 A BBB CCCCCDDDDDDD#include int main() int i,j,k; /*SPACE*/ for(i=0;【?】;i+) for(j=0;j3-i;j+) printf( ); /*SPACE*/ for(k=1;k=【?】;k+) /*SPACE*/ printf(【?】); printf(n); return 0;答案:=(答案1)=i=3或i4=(答案2)=2*i+1=(答案3)=%c,A+i
15、 或 %c, 65 + i第8题 功能:从读入的整数数据中,统计大于零的整数个数和小于零的 整数个数。用输入零来结束输入,程序中用变量i统计大于 零的整数个数,用变量j统计小于零的整数个数。#include int main() int n,i,j; printf(Enter iNT number,with 0 to endn); i=j=0; scanf(%d,&n); while(n!=0) /*SPACE*/ if(n0)i=【?】; /*SPACE*/ if(n0)j=【?】; /*SPACE*/ scanf(%d,【?】); printf(i=%4dn,i,j); return 0;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 练习题 汇总 19 word
限制150内