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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

1C语言期末考试A.docx

1、1C语言期末考试A第 1页 共10页扬州大学试题纸(20132014学年第1学期) 全校非计算机专业统考 课程 C及C+语言程序设计 (闭)卷注意:1 请用答题纸答题,将答案填于相应的题号内。否则不给分。2 请认真填写并仔细核对答题纸上的学院、系科、班级、学号及姓名等。3 请将试卷和答题纸分开上交。一、 单选题(每小题2分,共30分)1以下叙述中,正确的是 (1) 。A. main函数必须放在程序的开始B. main函数必须放在程序的最后C. 在一个函数体内可以定义另外一个函数D. 程序的执行总是从main函数开始,一般回到main函数结束2下列声明变量的语句中,错误的是 (2) 。A. in

2、t _5; B. double int_ C. char For D. float US$3若有声明“char c=72;”,则变量c (3) 。A. 包含1个字符 B. 包含2个字符C. 包含3个字符 D. 声明明不合法4判断char型变量c1是否为小写字母的正确表达式为 (4) 。A. a=c1=a)&(c1=c1)|(z=a)&(c1=z)5下列语句中,能正确进行字符串赋值操作的语句是 (5) 。A. char s15 =ABCDE; B. char s2=A,B,C,D,E;C. char s3 10=ABCDE; D. char s45=A,B,C,D,E;6以下关于break和co

3、ntinue语句的叙述中,正确的是 (6) 。A. break和continue语句都可以出现在switch语句中B. break和continue语句都可以出现在循环体中C. 在循环语句和switch语句之外允许出现break和continue语句D. 执行循环语句中的break或continue语句都将立即终止循环7设有声明“int a=1,b=2,c=3,d=4,x;”,则执行下列程序段后,x的值为 (7) 。if(ab) if(cd) x=1; else if(a100) break;B. for ( ; ; );C. int k=0; do +k; while (k=0);D. in

4、t s=36; while (s); -s;14. C语言规定,函数返回值的类型是由 (14) 。A. return语句中的表达式类型所决定B. 调用该函数时的主调函数类型所决定C. 调用该函数时系统临时决定D. 在定义该函数时所指定的函数类型所决定15. 若有结构定义及结构变量声明如下:struct pupil char name20; int age; char sex; pup5, *p; p=pup;则下列scanf函数调用语句中,对结构变量成员引用错误的是 (15) 。A. scanf (“%s”, pup0.name); B. scanf (“%d”, pup0.age);C. s

5、cnaf (“%c”, &(p-sex); D. scanf (“%d”, &(*p).age);第 2 页 共10页裁剪框第3页 共10页 二、填空题(每空1分,共20分)1. 除goto语句外,C语言中的转移语句还有return, (1) , (2) 。2. 设有变量声明如下:int a=9;float y=3.5;则表达式a%5和7/4+y的值分别为 (3) 、 (4) 。3在C语言中,分别用 (5) 和 (6) 表示逻辑“真”值和逻辑“假”值。4把数学表达式 改写成C语言表达式为 (7) ,计算这类表达式时通常要包含头文件 (8) 。5在C语言中,根据生存期的不同,可将变量分为静态存储

6、类别和动态存储类别。具体有extern、register、 (9) 和 (10) 。6C语言中有!、& 、| 三个逻辑运算符,其中优先级高于算术运算符的是 (11) ,三个运算符中,优先级最低的是 (12) 。7. 设有声明“int x,a=5, b=8; ”,则执行语句“x=7; x+=x-=x+x;”后,x的值为 (13) 。而程序段“a+=b;b=a-b;a-=b;”的功能是 (14) 。8. 若有声明语句如下:int a34=1,2,3,4,5,6,7,8;则执行该语句后,a12= (15) ,a21= (16) 。9. 若有声明“char s10=China;”,则表达式sizeof

7、(s)的值为 (17) ;表达式strlen(s)的值为 (18) 。10. 在C语言源程序中,以“#”开头的命令被称为 (19) 命令,它们是在 (20) 被处理的。裁剪框第 3 页 共8页第4页 共10页 三、 阅读程序写出结果(每小题4分,共20分)1. 运行以下程序,若输入数据为:2014,则输出结果为 。注:用表示回车。main() int a,t=0; scanf(%d, &a); while(a) t=t*10+a%10; a/=10; printf(%d, t ); 2. 以下程序运行时的输出结果是 。#include void main ( ) int i=4; while

8、(i0) switch (i%2) case 0: i-; case 1: i-;break; i-; printf (%d, i); 3以下程序运行时的输出结果是 。#include void fun(int *x,int y) *x=*x+y; y=5;void main(void) int a2=1,2; fun(&a0,a1); printf(%3d%3dn,a0,a1);裁剪框第 4 页4. 下列程序运行时的输出结果是 。#include void main() char a20=2013,b10=14; int i=0,j=0; while(ai)i+; while(bj) ai+

9、=bj+; ai=0; printf(%s,a+2);5. 下列程序运行时,若输入数据为10,则输出结果是 。#include void main () int b16, x, k, r, i; printf (input x:); scanf(%d,&x); k=-1; /* 变量k用作b数组的下标 */ while (x!=0) r=x%2; b+k=r; x/=2; for(i=k;i=0;i-) printf(%d, bi); 四、 完善程序题(每空1分,共30分)1. 下列程序的功能是输出100以内的个位数为6且能被6整除的所有整数。#include void main() int

10、i, j; for(i=0; (1) ;i+) j=i*10+6; if ( (2) ) continue; printf(%d, j); 第 5 页 共10页裁剪框2. 以下程序中,函数fun的功能是实现N行N列方阵的转置,即实现aij与aji的交换。算法提示:以主对角线为界,上三角区域中的元素与下三角区域中的对应元素交换。#include stdio.h#define N 3void fun(int a N) int i,j,t; for(i=0;iN;i+) for(j=0;j (3) ;j+) (4) ; aij=aji; (5) ; void main() int bNN,i,j;

11、for(i=0;iN;i+) for(j=0;jN;j+) scanf(%d, (6) ); fun(b); for(i=0;iN;i+) for(j=0;jN;j+) printf(%4d,bij); printf(n); 3. 下列程序中,函数gcd的功能是用欧几里德算法求两个正整数的最大公约数。#include stdio.hint gcd(int m,int n)int r;while(n!=0)r= (7) ;m=n;n= (8) ;return (9) ;void main()int a,b,t;printf(Please input a and b: );scanf(%d%d,&

12、a,&b);if(a=6),然后验证6到n之间的所有偶数都可以分解为两个素数之和。#include stdio.h#include math.hint prime(int m) int g, h=sqrt(m); for( (11) ; g=6:); scanf(%d,&limit); while(limit6); for(n=6; n=limit; n+=2) for(k=3; k=n/2; k+=2) if (prime(k) &prime(j= (13) ) printf(%d=%d+%dn, n, k, j); break; 5. 用迭代法求的近似值。迭代公式为:。要求前后两次求出值的

13、差的绝对值小于10-6时迭代中止。#include #include float square (float a) float x0,x1;x0=a/2;x1=0.5*(x0+a/x0);while (fabs( (14) )=1.0e-6) x0=x1;x1= (15) ;return x1;void main()float a;scanf(%f,&a);if(a0) printf(n x is a negativen);else printf(sqrt(%.1f)=%.3fn, a, (16) );第 7 页 共10页裁剪框第 8 页 共10页6. 下列程序是利用插入排序法将n个数从大到小

14、进行排序,插入排序的算法思想如下:从一个空表开始,将待排序的数一个接一个插入到已排好序的有序表中(空表视为有序),从而得到一个新的、记录数增1的有序表。例如:当n=7时,待排序的数及每一趟有序表的变化情况如下:趟数有序表剩余待排序数初始状态空49386597761327第1趟49386597761327第2趟49386597761327第3趟65493897761327第4趟97654938761327第5趟97766549381327第6趟97766549381327第7趟97766549382713空请完善下列程序。#include void sort(int a,int n) int i

15、,j,t; for(i=1; i=0)&(taj) (18) ; j-; (19) ; void main() int a10,i; printf(nEnter 10 number:); for(i=0; i=9; i+) scanf(%d,&ai); (20) ; for(i=0;i10;i+) printf(%5d,ai);裁剪框7. 下列程序中,函数seln的功能是按下列要求产生随机数:(1)产生的随机数在x,y内;(2)产生的随机数的个数为n个;(3)这n个随机整数互不相同且不同于a指向的长度为m的数组中的任何一个;(4)把产生的符合条件的随机整数依次写入b指向的数组中。请完善程序。#

16、include #include #define N 10void seln(int *a,int m,int *b,int n,int x,int y) int i,j,k,t; srand(time(NULL); /* srand为随机数发生器的初始化函数 */ i=0; while(in) t=(rand()%(y-x)+ (21) ; /* rand为随机数发生器,产生一个 x,y 内的随机整数*/ for(j=0;jm;j+) /*检查在a指向的长度为m的数组中是否包含t */ if(t=aj) break; if( (22) ) for(k=0;ki;k+) if(t=bk) br

17、eak; if(k=i) (23) =t; main() int a6=1,11,21,5,15,25,b20,i; seln( (24) ,b,N,1,30); for(i=0;iN;i+) /*请设计宽度为5的格式输出b数组*/ printf( (25) ,bi); printf(n); 第 9 页 共10页第10页 共10页8下列程序中,函数fun的功能是:统计str指向的一行以“.”结束的文本中单词的个数,并计算单词的平均长度(取整数),单词的个数存放于n所指向的变量中,函数返回单词的平均长度。请完善程序。#include #include int fun(char str,int *

18、n) int i,ave,flag=0,count; count=strlen(str)-1; for(i=0;stri!=.;i+) if(stri= ) (26) ; count-; else if(flag=0) (27) ; flag=1; ave= (28) ; return (29) ; void main() char str80=Must pass the examination; int i,n=0,aver; aver=fun( (30) ); printf(%d,%dn,n,aver); getch();裁剪框一、 单选题(根据题号依次填入,每小题2分,共30分。)123

19、456789101112131415二、 填空题(每空1分,共20分)(1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) 三、 阅读程序写出结果(每小题4分,共20分)1. 2 . 3. 4. 5. 四、 完善程序题(每空1分,共30分)(1) (2) (3) (4) (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) (15) (16) (17) (18) (19) (20) (21) (22) (23) (24) (25)

20、(26) (27) (28) (29) (30) C及C+语言程序设计答题纸学院_班级_学号_姓名_题目一二三四总分得分合分人阅卷人复核人核分人C及C+语言程序设计一、 单选题(每小题2分,共30分)123456789101112131415DDADCBACBDDACDB二、填空题(每空1分,共20分)(1) continue (2) break((1)(2)可交换) (3) 4 (4) 4.5 (5) 1 (6) 0 (7) sqrt(x+y)/(a+b) (8) math.h (9) static (10) auto((9)(10)可交换) (11) ! (12) | (13) 0 (14

21、) 交换a,b的值 (15) 0 (16) 7 (17) 10 (18) 5 (19) 预处理 (20) 编译前 三、阅读程序写出结果(每小题4分,共20分)1. 4102 2 . -1 3. 3, 2 4. 1314 5. 1010 四、 完善程序题(每空1分,共30分)(1) i10或i=9 (2) j%6!=0或j%6 (3) ji 或 j=i (4) t=aij (5) aji=t (6) &bij (7) m%n (8) r (9) m (10) a,b (11) g=2 (12) return 1 (13) n-k (14) x0-x1或x1-x0 (15) 0.5*(x0+a/x0) (16) square(a) (17) i-1 (18) s+i (19) aj+1=t (20) sort(a,10) (21) x+1 (22) j=m (23) bi+ (24) a,6 (25) %5d (26) flag=0 (27) (*n)+ (28) count/(*n) (29) ave (30) str,&n 答案

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2