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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

中山大学《高级语言程序设计一》实践试题.docx

1、中山大学高级语言程序设计一实践试题中大计算机及应用实践考试高级语言程序设计一实践考核试题及答案试题1. 有1,2,3,4个数字,能组成多少个互不相同且无重复数字的三位数? 都是多少? 编写程序, 在屏幕上打印输出这些三位数.解答:main()int a4=1,2,3,4;int i, j, k;for (i=0; i4; i+)for (j=0; j4; j+)for (k=0; k4; k+)if (i != j) & (j != k) & (i != k)printf (%8d, a*100+aj*10+ak);printf(n);试题2. 有一个整数, 加上100后是一个完全平方数, 再

2、加上168又是一个完全平方数, 编写程序求出该数是多少?解答:#include main()int i=10, j;long m=268, n=100;char flag=n;while (flag = n)for (j=i+1; j = sqrt(m); j+)if (m = (long)(j*j)printf (%dn, n-100);flag=y;break;i+;n=(long)i*i;m=n+168;试题3. 编写C程序, 要求能读入一正整数n, (n10), 并输出如下图形:122233333.nnnnn.nnnnn (共2n-1个n).333332221解答:main()int

3、i, j, n;printf (Please input n(19):n);scanf (%d, &n);for (i=1; i=n; i+)for (j=0; jprintf ( );for (j=0; j=1; i-)for (j=0; jprintf ( );for (j=0; j2*i-1; j+)printf (%d, i);printf (n);试题4. 编写C程序, 要求能读入两个整数m与n, 计算并读出m与n的绝对值的最大公约数及最小公倍数.解答:main()int m, n, a, b, t, div, mul;printf (Please input m,n:n);scan

4、f (%d,%d, &m, &n);if (m0) m=-m;if (n0) n=-n;if (m = 0) | (n = 0)div=0;mul=0;elseif (mN)a=n;b=m;elsea=m;b=n;dot=a%b;a=b;b=t;while (t != 0);div=a;mul=m*n/a;printf (the maximum common divisor of %d,%d is: %dn, m, n, div);printf (the minimum common multiple of %d,%d is: %dn, m, n, mul);试题5. 已知 e=1+1/1!+

5、1/2!+1/3!+.+1/n!, 试用上述公式求 e 的近似值.要求累加所有不小于10 -6的项值,部分程序给出如下, 请完成程序,实现以上功能.#include main()int i=1;float e, n;e=1.0; i=1;n=1.0;*在此编写代码*fun(int i)int j,k;k=1;for (j=1; j= 1e-6);printf (e=%fn, e);fun(int i)int j,k;k=1;for (j=1; j=i; +j)k=k*j;return (k);试题6. 请编写程序求出100200之间的所有素数, 并将结果在屏幕上显示出来.(素数是只能被1和它本

6、身整除的自然数)解答:main()int i, j;for (i=100; i=200; i+)for (j=2; jif (i%j=0) break;if (i=j)printf(%4d, i);试题7. 编写一个函数fun(str), 它的功能是: 统计由实参传来的一个字符中的字母,数字,空格和其它字符的个数. 部分源程序给出如下, 请勿改动主函数main和其它函数中的任何内容, 仅在函数fun的花括号中填入你编写的若干语句.#include int alph, digit, space, others;main()char text80;printf (n请输入一个字符串:n);gets

7、 (text);printf (字符串是:n);puts (text);alph = digit = space = others = 0;fun (text);printf (n%d个字母, %d个数字, %d个空格, %d个其它字符.n,alph, digit, space, others);fun(str)char str;.解答:#include int alph, digit, space, others;main()char text80;printf (please input a character string:n);gets (text);printf (the chara

8、cter string is:n);puts (text);alph = digit = space = others = 0;fun (text);printf (alph number: %d, digit number: %d, space number: %d, others number: %dn, alph, digit, space, others);fun(str)char str;int i=0;while (str!=)if (a = str) & (str = z) |(A = str) & (str = Z)alph+;else if (0 = str) & (str

9、= 9)digit+;else if (str = ) space+;else others+;i+;return;试题8. 编写一个程序, 它的功能是: 将一个3x3的矩阵转置, 例如: 运行程序时, 按行输入以下3x3的矩阵:1 2 34 5 67 8 9转置后的矩阵为:1 4 72 5 83 6 9解答:main()int a33, b33, i, j;printf (Please input a matrix:n);for (i=0; i3; i+)for (j=0; j3; j+)scanf (%d, &aj);bj=aj;for (i=0; i3; i+)for (j=0; j3;

10、 j+)printf (%8d, bj);printf (n);试题9. 编写程序打印如下的逆蛇形数字方阵.(用循环语句, 行数可变, 至少8行)1 12 11 102 13 16 93 14 15 84 5 6 7解答:main()int i, j, m=1, n, a8080;printf (please input n:n);scanf (%d, &n);for (i=0; i=i; j-)ajn-i-1=m+;for (j=n-i-2; ji; j-)aj=m+;for (i=0; ifor (j=0; jprintf (%4d, aj);printf (n);试题10. 正读和反读都

11、一样的字符串称为回文字符串, 在键盘上输入一个字符串,判别它是否回文字符串(字符串中字符的个数不得少于10).解答:#include main()char str80, flag=y;int i=0, j;printf (please input a string:n);gets (str);j=strlen (str);j-;while (i = j)if (str != strj)flag=n;break;elsei+;j-;if (flag = n)printf (the string is not palindrome!n);elseprintf (the string is pali

12、ndrome!n);1 n1对读入的任意n(n=0且n50), 能计算并输出y(n)的值.解答:int y(int n)if (n = 1) return (1);else return y(n-2) + 2* y(n-1);main()int n, f;printf (please input n:n);scanf (%d, &n);f=y(n);printf (y(n)=%dn, f);试题12. 编写C程序, 要求能读入一个字符串(100以内个字符, 其中有空格),计算并输出该字符串中所有大写英文字母的个数.解答:#include main()int i=0, n=0;char str1

13、00;printf (please input a string:n);gets (str);while (str != )if (A = str) & (str = Z) n+;i+;printf (the number is: %dn, n);试题13. 一个整数, 加上100后是一个完全平方数, 再加上168又是一个完全平方数,编写程序, 要求在100000以内的整数中找出所有满足上述性质的整数.解答:#include main()int i=10, j;long m=268, n=100;while (n100000)for (j=i+1; j = sqrt(m); j+)if (m

14、= (long)(j*j)printf (%8d, n-100);break;i+;n=(long)i*i;m=n+168;printf(n);试题14. 编写程序, 求1到100之间的奇数之和及偶数之和, 并将二者输出.解答:main()int i;int oddSum=0, evenSum=0;for (i=1; i= 1e-4);printf(PI=%fn, 4*pi);试题17. 编写程序, 生成Fibonacci数列f(i)的前20项(即i=20)并输出, 其中:0 i=1f(i) 1 i=2f(i-2)+f(i-1) i2解答:main()int n;static int f20=0,1;for (n=2; n20; n+)fn=fn-1+fn-2;for (n=0; n20; n+)if (n%5=0) printf (n);printf(%8d, fn);

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

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