C语言复习资料答案

上传人:jin****ng 文档编号:68154497 上传时间:2022-04-01 格式:DOC 页数:8 大小:78KB
收藏 版权申诉 举报 下载
C语言复习资料答案_第1页
第1页 / 共8页
C语言复习资料答案_第2页
第2页 / 共8页
C语言复习资料答案_第3页
第3页 / 共8页
资源描述:

《C语言复习资料答案》由会员分享,可在线阅读,更多相关《C语言复习资料答案(8页珍藏版)》请在装配图网上搜索。

1、C语言复习题一填空题1、 一个C程序由若干函数构成,其中有且只能有一个main(主)函数。2、 C语言中的基本数据类型有整形、字符型、实型(浮点型) 和 枚举型 。3、 若变量a是数字字符,将其转换成相应的数值用什么语句int a=a-48 。4、 将数学表达式 y=sin(ax)+ln(a+x)+e(ax)写成 C 语言表达式为y=sin(a*x)+log(a+x)+exp(a*x)。5、 设x、t均为int型变量,则执行语句x=10 ; t=x&x10 ;后,t的值为 0 。6、若有定义 struct stchar name20; float score; int age;贝9 sizeo

2、f (struct st ) 为 26。7、在C语言中,关键字都用( 小写)大写或小写; C语言是通过有且仅有一个( 主函数执行)。8、 C语言中构造类型数据有哪三种:(数组 )、(共用体 )、(结构体 )。9、若 k=sizeof(int) , I=sizeof(float),贝U k= (2) ,I= (4)。10、 符号&堤( 逻辑与)运算符,&a是指(a的首地址 )。11、 能表述 20x30 或 x20&x30|x=0)&(c1=0)&(c1= 9)C.0=c1=0)|(cl=9)7、设有如下枚举类型定义:enum Ian guageBasic,Assembly,Ada=100,CO

3、BOL,Fortra n;请问枚举变量Assembly的值是(A )。(A) 1(B) 0(C) 101(D) 997、执行语句for(i=0;i1O;i+);后,变量i的值为(A )A. 1OB .9C .OD .1&下列语句的循环次数为(A ) int x=5;D .无限次while(x)x-;break;A. 1B .5C .6三程序阅读题1、写出下面程序运行的结果:11,19,30,1void mai n()int a=10,b=20,c=30,d; d=+a=20 | C+ ; printf( “ d,%d,%d,%”,a,b,c,d);2、写出下面程序运行的结果:3,1,0,0 v

4、oid mai n()int a=1,b=2,c=3;printf(“ d,%d,%d,%”,a=b=c,a=b=c,a=(b=c),a=(b=c);3、 下列程序的功能是计算1-3+5- 7+-99+101的值,请在 处填空。mai n() int i , t = 1 ,s = 0;for ( i = 1 ; i =0:k_)if(akak-1) =temp=ak_ _;-aik=ak-1;ak-1=temp;else break ;for(k=0; k=8;k+)printf(“ 7d ,ak);5、 下列程序的功能是将字符串s中所有的空格字符删去,请在 处填空。mai n() char

5、*s =“ Our teacher teaches C Ian guage” ;inti , j ;for ( i=j=0 ; si !=0; i+ )if ( si !=s+ = s i;_else sj= 0 亠;printf (n%s,s);6、 下面程序运行的结果是_x仁10 x2=25 x=100亠。static int x=5;void mai n () void f1();void f2();int x=10;f1();f2();printf(“ x(1)=%”,x);void f1() x+=20;printf( “ x(2)=%d, ” ,x);void f2() int x

6、=100; printf( “ x(3)=%d, ” ,x);7、函数mm用来求阶乘,请将程序补充完整:void mai n() long s=0,i,mm(i nt k);for(i=1;i11;i+)s=s+mm(i);printf( “ %ld ” ,s);long mm(i nt k) long t=1,j;for(j=1;j=k;j+) t=t*j_ ; return(t) :&程序实现给数组 a赋值,并通过指针的方式输出数组void mai n() int a6,i;int *p :for(i=0;i6;i+) scanf(“ d &ai);p=a;for(i=0;i6;i+)pr

7、intf( “ %3d*(p_i)_): printf( n“);四编程题1、从键盘输入一个正整数n,求n!#inelude long fact(int n);void mai n()int n;prin tf(E nter a in teger: n);sea nf(%d, &n); printf(n!=%l ,fact(n);long fact(i nt n)long p = 1;int i;for(i=1; i = n; i+)p = p*i;a的值,请将程序补充完整。#include void main()int n,i;long int t=1;sca nf(%d,&n); for(

8、i=1;i=n:i+) t=t*i;prin tf(%d!=%ldn, n,t);return p;2、输出 100 999 的所有水仙花数。水仙花数是指 3位数的各位数字的立方和等于这个位数本身。 例如 ,153=1*1*1+5*5*5+3*3*3#include int narcissusi(nt n);void main()int i;for(i=100; i=999;i+)if( narcissus(i) = 1)printf( %8d ,i);printf( n );int narcissusi(nt n)int k,m,j;k = n/100; /hundrends placem

9、= (n%100)/10;j = n%10;if ( k*k*k + m*m*m + j*j*j)= n)return 1;elsereturn 0;3、一个数如果恰好等于它的因子之和, 这个数就称为 “完数”,编写程序找出 15000 中的所有完数。 #include int completeNum(int n);void main()int i;for(i =1; i=5000; i+)if( completeNum(i) = 1) printf( %8d ,i);printf( n );int completeNum(int n)int k,s=1;for( k=2; kn; k+)if

10、 ( n%k = 0)s += k;if( s = n)return 1;else return 0;4、 有定义int a10=10,2,4,1,3,7,9,5,6,8;请用选择排序法将数组a中的元素按升序排列,并输出排序 后的结果#include void selectSort(int a, int n);void main()int a10 = 10,2,4,1,3,7,9,5,6,8 ;int i;selectSort(a,10);for(i =0; i10; i+)printf( %4d , ai);void selectSort(int a, int n)int i,j,k,tem

11、p;for(i =0; in; i+) k = i; for(j = i+1; j aj)k = j;if( k !=i)temp = ak;ak = ai;ai = temp;5、 从键盘输入两个整数m和n,编程求m和n的最大公约数以及最小公倍数。#include int div(int m, int n);int mul(int m, int n);void main()int m, n;int d, p;printf( Enter two integers( suppose mn), seperated by space:)n; scanf(%d %d ,& m,& n);printf(

12、 The greatest common divisor of %d and %d is: %dn, m, n, div(m,n); printf( The least common multiple of %d and %d is: %dn, m, n, mul(m,n);int div(int m, int n) int r= m%n; while( r0) m = n;n = r; r = m%n; return n;int mul(int m, int n)return m* n/div(m,n);6、请编写函数 sum(a,n),求sn=a+aa+aaa+.+aa.aa(n个a)的值

13、,并在主函数中调用该函数。其中a是一个数字 . 例如 , 若 a=2, n=5 时: Sn=2+22+222+2222+22222, 其值应为 24690. 根据下列已完成的 部分 , 完成未完成部分 (注: 在函数 sum 中不能定义新的变量 , 可不用已定义的某些变量 ).long sum(int a, int n) long sn, tn;int count;Jreturn(sn);#include long sum(int a, int n);void main()int n;long k = sum(2,5);printf( sum(2,5)=%ldn ,k);long sum(in

14、t a, int n)long sn=0, tn=a;int count,i;for(i =1; i=n; i+)sn += tn;tn = tn*10 + a;return sn;7、编程求一个学生 n 门课程的平均成绩。#include #define N 10void main()int i,n,s=0;int scoreN;printf( Enter numbers of classes:n); scanf(%d ,& n);printf( Enter classes scores:n);for( i = 0; i n; i+)scanf(%d , & scorei);s += scorei;printf( Average score = %f, (float )s/n);8、求 10 以的素数#include void main()int prim( int n);int i;for(i =1; i=10; i+)if( prim(i) = 1) printf( %4d ,i);printf( n );int prim(int n)int k,flag = 1;for(k=2; kn; k+)if( n%k = 0)flag = 0; break;return flag;

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


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