南京信息工程大学2009-2010(1)C语言期末考试试卷B.doc_第1页
南京信息工程大学2009-2010(1)C语言期末考试试卷B.doc_第2页
南京信息工程大学2009-2010(1)C语言期末考试试卷B.doc_第3页
南京信息工程大学2009-2010(1)C语言期末考试试卷B.doc_第4页
南京信息工程大学2009-2010(1)C语言期末考试试卷B.doc_第5页
已阅读5页,还剩4页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

南京信息工程大学试卷 2009 2010 学年 第 1学期 程序设计基础/C语言程序设计 课程试卷( B 卷) 本试卷共 9 页;考试时间 120分钟;任课教师 课程组 ;出卷时间 2010 年 1月 学院 专业 2009 年级 班 学号 姓名 得分 一、单项选择题 (每小题 1分,共 14分)1 C语言规定:在一个源程序中,main的位置 A)必须在最开始 B)必须在系统调用的库函数后面C)可以任意 D)必须在最后2C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符 A)必须为字母B)必须为下划线C)必须为字母或下划线D)可以是字母、数字和下划线中的任意一种3已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A和B,当从第一列开始输入数据时,正确的数据输入方式是 。int a1,a2; char c1,c2;scanf(“%d%c%d%c”,&a1,&a2,&c1,&c2);A)10A 20B B)10 A 20 BC)10A20B D)10A20 B4C语言对嵌套if语句的规定是:else总是与 。 A)其之前最近的if配对 B)第一个if配对 C)缩进位置相同的if配对 D)其之前最近的且尚未配对的if配对5.当a=1,b=3,c=5,d=4时,执行完下面一段程序后x的值是 。if (ab)if (cd) x=1;else if (ac) if (bd) x=2; else x=3; else x=6;else x=7; A)1 B)2 C)3 D)46.下述语句执行后,变量k的值是 。int k=1;while (k+B & CA | AB的值是 。7设有以下定义语句: int a32=10,20,30,40,50,60, (*p)2; p=a; 则表达式*(*(p+2)+1)的值为 。8设i,j,k均为int型变量,则执行完下面的for循环后,k的值为 。 for(i=0,j=10;i=j;i+,j-) k=i+j;9在一个C程序中,若要定义一个只允许本源程序文件中所有函数使用的全局变量,则该变量需要定义的存储类别为 。10C程序中,文件可以用 和二进制两种代码形式存放。11下面程序的运行结果是 #include#define S(x) 4*x*x+1void main ( ) int m=6,n=8 ; printf(“%dn”,S(m+n) ;三、程序阅读题(每题3分,共24分)1以下程序运行后的输出结果是 。#includeint main( )int a44=1,2,3,4,5,6,7,8,11,12,13,14,15,16,17,18;int i=0,j=0,s=0;while (i+4)if (i=2 | i= 4 ) continue ;j=0;do s+=aij; j+; while (j4) ;printf(%dn , s ); return 0;2下面程序的运行结果是 #includevoid copy_string(char *,char *);int main() char a=I am a top man.; char b=You are teachers.; copy_string(a,b); printf(nstring_a=%snstring_b=%sn,a,b); return 0;void copy_string(char *from,char *to) for(;*from!=0;from+,to+) *to=*from; *to=0;3.下面程序运行的结果是 #includeint main ( ) int k=1,n=463 ;do k*= n%10 ; n/=10 ; while (n) ;printf(“%dn”,k);return 0;4按键盘上的Ctrl键回车后,下面程序执行结果是 #include int main() char c; printf(Enter a character:); c=getchar(); if(c=0&c=A&c=a&c=z) printf(The character is a lower lettern); else printf(The character is other charactern); return 0;5.若输入的值是32,写出下面程序的运行结果是 。#include #includevoid fun(int);int main ( ) int n ; scanf(“%d”,&n); printf(“%d=”,n); if (n0) printf(“-”); n = fabs(n); fun(n);return 0;void fun (int n) int k,r ; for (k=2; k1) printf(“*”); r = n % k ; if (n!=1) printf(“%dn”,n); 6下面的程序的输出结果的第一行是 ,第二行是 ,第三行是 。#includeint main() char *s=1221;int k=0,a=0,b=0;do if(k%2=0) a=a+sk-0;continue;b=b+sk-0;while(s+k);printf(k=%dn a=%d nb=%dn,k,a,b);return 0;7以下程序执行后输出的结果是 #include int main( ) FILE *fp; int i,k=0,n=0;fp=fopen(d1.dat,w);for(i=1;i4;i+) fprintf(fp, %3d,i);fclose(fp);fp=fopen(d1.dat,r);fscanf(fp, %d%d,&k, &n); printf(%d,%dn,k, n) ;fclose(fp); return 0;8.下面程序的运行结果是 #includeint fun (char *);int main ( ) char *a=”abcdef” ; printf(“%dn”,fun(a) ; return 0; int fun (char *s) char *p=s; while (*p) p+ ; return (p-s) ;四、程序填空题(每空2分,共20分)1下面程序是是找出2009年到2050年的所有闰年,补足所缺语句,使程序完整。#includeint main()int year,leap;for(year=2009;year=2050;year+)if( 1 )if(year%100=0)if( 2 )leap=1;elseleap=0;elseleap=1;elseleap=0;if(leap=1)printf(%d 是闰年!n,year);return 0;2下面程序按公式求和并输出结果,请填空使程序完整。 #includeint main ( ) 3 ; int k ; for (k=1 ; k=100 ; k+) s+=k ; for (k=1 ; k=50 ; k+) s+=k*k ; for (k=1 ; k=10 ; k+) s=s+ 4 ; printf(“sum=%f”,s); return 0;3函数arraycopy()是使数组a的内容复制到数组b中,当ai=-999时结束。#include int arraycopy( int a,int b);int main()static int a=1,2,3,4,5,6,7,8,9,10,-999; int b100, i = 0; arraycopy(a,b) while(bi!=-999) printf(%d , bi+); return 0;int arraycopy(int a,int b)int i=0; while(ai!=-999) 5 ; i+; bi= 6 ; return 0;4.下面函数的作用是通过递归的方法将字符串倒置,请填空使程序完整。void fun(char s ,int l,int h) if ( 7 ) return ; else char t ; fun ( 8 ); t = sl , sl=sh , sh=t ; 5下面min()函数的功能是:查找带头结点的单向链表,将结点数据域的最小值作为函数的返回值。补足所缺语句。struct nodeint data;struct node *next;int min(struct node *head)struct node *p;int n;p=head;n=p-data;for(p=p-next;p; 9 )if( 10 ) n=p-data;return n;五、编程题(第1小题8 分,第2小题12分,共 20分)1输入一个整数,判断它是否为回文数。如输入121,输出是回文数;输入123,输出不是回文数。2字符统计(1)函数 int ff(char *str,ch

温馨提示

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

评论

0/150

提交评论