2008C程序设计期末试卷(B).doc_第1页
2008C程序设计期末试卷(B).doc_第2页
2008C程序设计期末试卷(B).doc_第3页
全文预览已结束

下载本文档

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

文档简介

杭州电子科技大学学生考试卷( B )卷考试课程C语言程序设计考试日期2008年 月 日成 绩课程号教师号任课教师姓名考生姓名学号(8位)年级专业说明: 请将全部答案都书写在最后页答卷纸上,否则答题无效。试题一 判断题 (共10分)1. 不同类型的变量在内存中占用存储空间的大小是一样的。2. 循环语句中可以含有continue语句和break语句。3. 指针变量是把另一个变量的地址作为其值的变量。4. 表达式 23.4%2 是合法的C语言表达式。5. 若指针变量指向一维数组的第一个元素,将指针变量加整数3,即指针后移3个元素。6. 数组名不仅是一个数组的名字符号,它是一个指针表示数组在内存的首地址。7. C语言任何类型的数据在计算机内部都是以二进制形式存储的。8. 格式符“%x”是按8进制输出整数。9. 如果s1、s2是两个字符串,C语言程序中可以用s1=s2比较这两个字符串是否相等。10. 结构体类型中各成员项的数据类型可以不同。试题二、单选题,根据题目从A、B、C、D中选择一个正确的选项(共10分)1. 有定义double x=1,y; 表达式y=x+3/2的值是( )。A、1B、2C、2.0D、2.52. 设有整型变量a, b, c,其中a,b的值分别为15与19,计算表达式“c=(a%2=0)?a:b”后,c的值是( )。 A、0 B、1 C、15 D、193. 下列各语句序列中,能够将变量u、s中最大值赋值到变量t中的是( )。A、t=s; if(us) t=u;B、if(us) t=u; t=s;C、if(us) t=s; else t=u;D、t=u; if(us) t=s;4. 若有float a=2.5,b=6.3, *pa=&a; *pa*=3;pa=&b; 则正确的是( )。 A、pa的值是2.5 ; B、*pa的值是6.3 C、*pa的值是7.5 D、pa的值是6.3;5. 若有数组定义:int a34;则对a中数组元素的正确引用是( )。A、a31B、a34 C、a3144D、a2,16.若有 int i,j,n = 8 ; 连续执行下述两条赋值语句后,i, j和n的值分别是( )。 i = n+ ; j =+n ; A、i = 8 j = 9 n = 10 B、 i = 8 j = 8 n= 9 C、i = 9 j = 8 n = 9 D、i = 8 j = 10 n = 107.下列哪一个语句是正确的定义字符变量并对其进行初试化( )。 A、char a=?; B、char a=*; C、char a=%; D、char a=m;8.下面程序段的输出结果是( )。#includevoid fun(int px,int pa,int *pb)*pb=pa+px; pa=*pb+px;void main() int x=4,a=2,b=2; fun(x,a,&b); printf(%d,%d,a,b); A、2, 2 B、2, 6 C、6, 2D、6, 69与while(x)等价的是( )。A、while(x = 0) B、while(x != 0)C、while(x = 1) D、while(x != 1)10若x是double型变量,n是int型变量,执行时输入3 1.25后,使x=1.25,n=3的语句是( )。A、scanf(%lf%d, &n, &x);B、scanf(%lf%d, &x, &n);C、scanf(%d%lf, &n, &x); D、scanf(%d%,lf, &n, &x);试题三、程序阅读(共24分)1. 阅读下列程序,并写出程序执行结果。#includevoid main() int x,d,s=0,k=0; scanf(%d,&x); /输入5782 do d=x%10; k=k*10+d; s+=d; x/=10; while(x!=0); printf(k=%d,s=%dn,k,s); 2阅读下列程序,并写出程序执行结果。#include void main() int k=1;第1页 共4页(B)switch(k) case 1: putchar(P); case 2: case 3: putchar(Q); break; case 4: putchar(R); default: putchar(S); 3阅读下列程序并回答下面的问题。#include void main() void fun(int *x,int y); int k,a,b; scanf(%d,%d,&a,&b); /输入462,538 fun(&b,a); printf(a=%d,b=%d,a,b);void fun(int *x,int y) *x=*x/10*10+y%10; /第10行 y=*x; /第11行问题1:写出程序运行结果。问题2:若将第10、11行语句分别改为: y=y/10*10+*x%10; *x=y;写出程序运行结果。4阅读下列程序并回答问题。#include void main() int data1, data2, res; char op; scanf(%d, &data1); op = getchar();while(op!= =) scanf(%d, &data2); switch(op) case +: res = data1+data2; break; case -: res = data1-data2; break; case *: res = data1*data2; break; case /: res = data1/data2; break; default: res = 0; data1 = res; op = getchar(); printf(%dn, res); 问题1:程序运行时,输入5/2=,则输出结果? 问题2:程序运行时,输入2*10-10=,则输出结果? 试题四、程序填空题。按程序功能,在划线部分填写适当的内容。 (共28分)1程序读入时间数值,将其加一秒后输出,时间格式为hh:mm:ss,即时:分:秒,当小时数等于24时,置为0.(如:输入 5:38:49, 则输出05:38:50;输入 05:38:59, 则输出05:39:00)。【程序】#include void main() int hour,minute,second; scanf(%d:%d:%d, (1) ); second+; if(second=60) (2) ; second=0; if (minute=60) hour+; minute=0; if( (3) ) hour=0; printf(%02d:%02d:%02d,hour,minute,second);2. 输入班级50个学生的数学成绩,计算平均成绩,并统计高于平均成绩的人数。【程序】#include #define N 50void main() float scoreN,sum=0,aver; int i,count=0; printf(请输入学生成绩n);for(i=0;iN;i+) scanf(%f, (1) ); sum+=scorei; (2) ;for(i=0;iN;i+) (3) ;第 2页 共4页(B) printf(“平均成绩=%.2fn”,aver); printf(“高于平均分人数=%dn”, (4) );3程序功能:输入一个字符串(少于80个字符),将字符串中的所有英文字母转换为大写字母,同时删除其中除英文字母外的其它字符,输出新字符串,然后再判断新字符串是否对称。(字符串对称是指:字符串从左到右读与从右到左读都一样)程序运行示例1:输入一个字符串: Madam Im AdamMADAMIMADAMYes程序运行示例2:输入一个字符串: elephantELEPHANTNo【程序】#include #include void main( ) int flag, i, k, j; char str80; printf(输入一个字符串: ); gets(str); i =k =0; while(stri != 0) if (isalpha(stri) / isalpha判断字母函数 if(stri=a&stri=z) (1) ; else strk=stri; (2) (3) ; strk=0;puts(str);flag = 1; for(j=k-1,k = 0; k j; k+, (4) ) if(strk != strj) flag=0; break; if( flag ) printf(Yesn); else printf(Non); 4. 程序功能:下面程序将6至10000之间的亲密数对输出到文件c:tempdata.txt中。若两个数a、b是亲密数对,则a的因子和等于b、b的因子和等于a,且a不等于b。(如亲密数对:(220,284)、(284,220)、(1184,1210)) #include #include void main() int a,b,c,i; FILE *fp; fp= (1) ; for(a=6; a=10000 ;a+) b=0; for(i=1;i=a/2;i+

温馨提示

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

最新文档

评论

0/150

提交评论