ImageVerifierCode 换一换
格式:DOCX , 页数:27 ,大小:22.25KB ,
资源ID:6238409      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6238409.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言练习题汇总.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言练习题汇总.docx

1、C语言练习题汇总一、判断 变量根据其作用域的范围可以分作局部变量和全局变量. 答案: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程序中 , 函数既可以嵌套定义 , 也可以嵌套调用.答案:Nint i=20;sw

2、itch(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; 它的作用是将数组各行第一列的元素赋初值,其余元素值为0。答案:YC语言的函数可以嵌套定义

3、.答案: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:(x=z)&(y=z)答案:A4、设有说明:char c

4、; 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:必须在最后答案:C11、下列字符序列中,不可用作C语言标识符的是()。A:b7

5、0B:#abC:symbolD:a_1答案:B(标识符只能包含字母、数字、下划线,且数字不能放首位)12、在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:p

6、1=&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:*(p+

7、)=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); retur

9、n 0; 答案:=(答案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*/ 【

10、?】; for(i=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;【?】=(答案4)=*s第4题 (15.0分) 题号:27功能:输出100到1000之间的各位数字之和

11、能被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 *str_to) int i=0; /*SPACE*/ for(; (*(【?】)=*(str_from+i)!=0; i+) ;int main() static char array_str120=i

12、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个整数按从小到大顺序排序。说明:每一趟均找到未排好序的数中的最小数的位置,然后将其交换到正确的位置#include #define N 10int main() int i,j,k,t,aN; for(i=0;i=N

13、-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+) printf(%5d,ai); printf(n); return 0;答案:=(答案1)=k=i=(答案2)=jN或ji第7题 功能:打印出如下字母塔。最后一行字母前无空格 A BBB CCCCCDD

14、DDDDD #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 或 %c, 65 + i第8题 功能:从读入的整数数据中,统计大于零的整数个数和小于零的 整数个数。用输入零来结束输入,程序中用变量i统计大于 零的整数个数,用变量j统计小于零的整数个数。#i

15、nclude 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;答案:=(答案1)=i + 1=(答案2)=j + 1=(答案3)=&n程序改错第1题 功能:求出数组中最大数和次最大数,并把最大数和a0中的数 对调、次最大数和a1中的数对调。#include

16、 #define N 20void fun ( int a, int n ) int i, m, t, k ; for(i=0;i2;i+)/*两次循环,分别找最大数和次大数*/ /*FOUND*/ m=0; for(k=i;kam) k=m; t=ai;ai=am;am=t; int main( ) int bN=11,5,12,0,3,6,9,7,10,8, n=10, i; for ( i=0; in; i+ ) printf(%d , bi); printf(n); /*FOUND*/ fun (int bN, n); for ( i=0; iam) m=k;=(答案3)=fun(b,

17、n);第2题 功能:利用条件运算符的嵌套来完成此题:学习成绩=90分的同 学用A表示,70-89分之间的用B表示,60-69分之间的用C表示, 60分以下的用D表示。#include int main() int score; /*FOUND*/ char *grade; printf(please input a scoren); /*FOUND*/ scanf(%d,score); if (score100) printf(超出范围!); else /*FOUND*/ switch(score) case 9: case 10: grade=A; break; case 7: case 8

18、: grade=B; break; case 6: grade=C; break;/*FOUND*/ case else: grade=D; printf(%d belongs to %cn,score,grade); return 0;答案:=(答案1)=char grade;=(答案2)=scanf(%d,&score);=(答案3)=switch(score/10)=(答案4)=default:=或=case 0:case 1:case 2:case3:case 4:case 5:第2题 (15.0分) 题号:153/*- 【程序改错】-功能:编写函数求2!+4!+6!+8!。-*/#i

19、nclude int sum(int n) int i,j,t,s; /*FOUND*/ s=1; for(i=2;i=n;i=i+2) t=1; /*FOUND*/ for(j=1;j=n;j+) t=t*j; s=s+t; /*FOUND*/ return(t);int main() printf(this sum=%ldn,sum(8); return 0;答案:=(答案1)=s=0;=(答案2)=for(j=1;j=i;j+)=(答案3)=return s;第3题 (10.0分) 题号:92/*- 【程序改错】-功能:求二分之一的圆面积,函数通过形参得到圆的半径,函数 返回二分之一的圆面积。例如:输入圆的半径值:19.527 输出为:s = 598.950017。-*/#include #include /*FOUND*/double fun( r) double s; /*FOUND*

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1