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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

级电信C语言期末考前例题.docx

1、级电信C语言期末考前例题*P112 4.6*根据函数写一程序,输入x值,输出y值。解: #include main( )int x, y;printf(输入x:);scanf(%d, &x );if( x 1 ) y = x;printf(x=%3d, y=x=%dn, x, y );else if ( x 10 ) y = 2 * x - 1;printf(x=%3d, y=2*x-1=%dn, x, y );else y = 3 * x - 11;printf(x=%3d, y=3*x-11=%dn, x, y ); *P113 4.8 *给一个百分制成绩,要求输出等级A、B、C、D、E。

2、90分以上为A,8090分为B,7079分为C,60分以下为D。#include main( ) float score; / 记录百分制成绩 char grade; / 记录等级 printf(请输入学生成绩:); scanf(%f, &score); while( score 100 | score = 90 ) grade = A; else if( score = 80 ) grade = B; else if( score = 70 ) grade = C; else if( score = 60 ) grade = D; else grade = E; printf(成绩是%5.1

3、f, 相应的等级是%cn, score, grade );*P140 5.3 *输入两个正整数m和n,求其最大公约数和最小公倍数。#include main( ) int m, n, max, min; scanf(%d%d, &m, &n ); / 最大公约数从两个数中较小的一个开始寻找 if( m n ) min = m; else min = n; while( min % m != 0 | min % n != 0) min+; printf(max=%d, min=%dn, max, min );*P140 5.8*打印出所有水仙花数,所谓水仙花数是指一个三位数,其各位数字立方和等于

4、该本身。例如:153是一个水仙花数,因为153 = 13 + 53 + 33。#include main( )int x = 100, a, b, c;while( x = 100 & x 1000 ) / 100999a = x % 10; / 个位b=x / 10 % 10; / 十位c= x / 100; / 百位if( x = a*a*a + b*b*b + c*c*c ) printf(%5d, x );x+;*P141 5.9*一个数如果恰好等于它的因子之和,这个数就称为完数。例如,6的因子为1、2、3,而6=1+2+3,因此6是完数。编程序找出1000之内的所有完数,并按下面格式

5、输出其因子:6 its factors are 1、2、3main( )int m, i, j, s;for( m = 6; m 1000; m+ ) / 考虑1000以内的自然数s = 1; / s表示因子的和,1是所有自然数的因子for( i = 2; i m; i+ ) /寻找m的所有因子if( m % i = 0 ) s = s + i; /如果i是因子if( m = s ) / m的因子和与m相等printf(%5d its fastors are 1 , m );for( j = 2; j m; j+ ) / 再次寻找m的所有因子并输出if( m % j = 0 )printf(%

6、d , j );printf(n);或main( )int m, i, j, s;for( m = 6; m 1000; m+ )s = m - 1;for( i = 2; i m; i+ )if( m % i = 0 ) / 如果i是m的因子s = s - i;/ 从s 中减去该因子if( s = 0 ) / 说明m与其因子和相等printf(%5d its fastors are 1 , m );for( j = 2; j m; j+ ) if( m % j = 0 )printf(%d , j ) ;printf(n);*P141 5-13*用迭代法求平方根迭代公式为:xn = xn-1

7、 - f(xn-1) / f (xn-1)#include #include main( ) float x0, x1, a; scanf(%f, &a ); / 求a的平方根 x1 = a / 2; / 迭代的初始值,可以给任意值 do x0 = x1; / 记录前一个近似值 x1 = ( x0 + a / x0 ) / 2; / 根据迭代公式计算新的近似值 while( fabs( x0 - x1 ) = 1e-5 ); / 比较前后两个近拟值 printf(%.3fn, x1 );*P141 5-14*用迭代法求方程的根迭代公式为:xn = xn-1 - f(xn-1) / f (xn-

8、1)#include #include main( ) double x0, x1, y; x1 = 1.5; / 给定一个初始近似值 do x0 = x1; / 记录前一个近似值 y = 2 * x0 * x0 * x0 - 4 * x0 * x0 + 3 * x0 - 6; / f(x0) x1 = x0 - y / ( 6 * x0 * x0 - 8 * x0 + 3 ); / 计算新的近似值 while( fabs(x1-x0) 1e-6 ); / 比较前后两个值 printf(x=%.3fn, x1 );*P141 5-15*用二分法求方程的根。#include #include m

9、ain( ) double m, a, b, fm, fa, fb ; a = -10; b = 10; /* -10, 10 之间有一个根 */while( fabs( b - a ) 1e-3 ) m = ( a + b ) / 2; /* 中点 */ fa = 2 * a * a * a - 4 * a * a + 3 * a - 6; fb = 2 * b * b * b - 4 * b * b + 3 * b - 6; fm = 2 * m * m * m - 4 * m * m + 3 * m - 6; if( fm * fa 0 ) /* f(m) 与 f(a) 同号 */ a

10、= m; else b = m; printf( x = %.3fn, (a+b) / 2 );*例题*编程计算级数的近似值#include #include main( ) int n; float ex, x, item; x = 1; / 近似计算e1 ex = 1; item = 1; n = 1; while( 1 ) item *= x / n+; / 计算一项 ex += item; / 累加 if( fabs(item) 1e-6 ) break; printf(%fn, ex);*例题*编程近似计算定积分#include #include main( ) float a, b

11、; / 定积分的上下限 float x, dx, sfx; a = 0; b = 3.14; dx = 1e-3; / 区间长度 for(x = a, sfx = 0;x = b;x += dx) sfx += dx * sin(x); printf(%fn, sfx);*P168 6-2*选择排序#include #define N 10main( ) int aN, t, i, j, min; printf(Input: ); for(i = 0;i N;i+) scanf(%d, &ai); / 输入数据 for(i = 0; i N-1; i+) min = i; / 记录下标 for

12、(j = i + 1; j N;j+) if( aj amin ) min = j; t = amin; / 交换 amin = ai; ai = t; for(i = 0;i N;i+) / 输出数据 printf(%d , ai);*蒙特卡洛近似计算*/近似计算定积分#include #include #include #include #define N 50000#define PI 3.1415926main( ) double x, y; unsigned num, j; srand(unsigned)time(NULL); num=0; for( j = 0;j N;j+) x

13、= (double)rand()/RAND_MAX*PI; y = (double)rand()/RAND_MAX; if( y sin(x) ) num+; printf(%lfn, (double)num/N*PI );/近似计算球体体积#include #include #include #define N 50000main( ) double x, y, z; unsigned num, j; srand(unsigned)time(NULL); num=0; for( j = 0;j N;j+) x = (double)rand()/RAND_MAX; y = (double)ra

14、nd()/RAND_MAX; z = (double)rand()/RAND_MAX; if(x*x+y*y+z*z n ) j = m; else j = n; while( j%m != 0 | j%n != 0 ) j+; return j;int maxdivisor( int m, int n ) int j; if( m n ) j = m; else j = n; while( m%j != 0 | n%j != 0) j-; return j;main( ) int a, b; printf(Input a&b:); scanf(%d%d, &a, &b ); printf(%

15、d %dn, minmult(a, b), maxdivisor(a, b);*P218 7-2*一元二次方程求根方法一:#include #include void getroot( float a, float b, float c ); / 函数声明void main( ) float a, b, c; printf(Inut a, b, c:); scanf(%f%f%f, &a, &b, &c ); / 输入系数 getroot(a,b,c); / 调用函数计算方程根void getroot( float a, float b, float c ) float d, x1, x2;

16、d = b*b - 4*a*c; x1 = ( -b + sqrt(d) ) / 2/ a; x2 = ( -b + sqrt(d) ) / 2/ a; printf(x1=%.1f x2=%.1fn, x1, x2 );方法二:#include #include void getroot( float a, float b, float c, float x3 ); / 函数声明void main() float a, b, c, x3; printf(Inut a, b, c:); scanf(%f%f%f, &a, &b, &c ); / 输入系数 getroot(a, b, c, x

17、); / 调用函数计算方程根 printf(x1=%.1f x2=%.1fn, x1, x2 );void getroot( float a, float b, float c , float x3) float d; d = b*b - 4*a*c; x1 = ( -b + sqrt(d) ) / 2/ a; x2 = ( -b + sqrt(d) ) / 2/ a;方法三:#include #include void getroot( float a, float b, float c , float *px1, float *px2 ) float d; d = b*b - 4*a*c;

18、 *px1 = ( -b + sqrt(d) ) / 2/ a; *px2 = ( -b + sqrt(d) ) / 2/ a;void main() float a, b, c, x1, x2; printf(Inut a, b, c:); scanf(%f%f%f, &a, &b, &c ); / 输入系数 getroot( a, b, c, &x1, &x2 ); / 调用函数计算方程根 printf(x1=%.1f x2=%.1fn, x1, x2 );*P218 7-3*质数int prime(int); / 函数声明void main( )int x; printf(输入一个正整数

19、nn); scanf(%d,&x); if( prime(x) ) printf(nn此数为素数nn); else printf(nn此数不是素数nn);int prime( int n)int k;for(k=2;kn;k+)if(n%k=0) /余数为0return 0;return 1; /* 是质数,返回1 */*排序,用函数实现*#include #define N 10/ 选择排序void selectsort( int a, int n ) int i, j, k, t; for(i = 0;i n - 1;i+) k = i; / 假设 for(j = i + 1;j n;j+

20、) if(aj ak) / 有更小的 k = j; / 用k记录其下标 t = ak; ak = ai; ai = t; / 起泡排序void bubblesort( int a, int n ) int j, i, t; for( j = 0; j n - 1; j+ ) for( i = 0; i ai+1 ) t = ai; ai = ai+1; ai+1 = t; main() int aN, i ; printf(Input :); for(i = 0;i N; i+) scanf(%d, &ai); bubblesort(a, N); / 函数调用 for(i = 0;i N;i+) / 输出结果 printf(%d , ai );*P219 7-13*勒德让多项式void main()float p(int,float);int n;float x;printf(输入n和xnn);scanf(%d%f,&n,&x);printf(nn%d阶勒德让多项式的值为:%fnn,n,p(n,x);float p(int n,float x)if(n=0) return 1;else if(n=1) return x;else return (2*n-1)*x-p(n-1,x)-(n-1)*p(n-2,x)/

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

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