C语言实验十综合练习.doc_第1页
C语言实验十综合练习.doc_第2页
C语言实验十综合练习.doc_第3页
C语言实验十综合练习.doc_第4页
C语言实验十综合练习.doc_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

实验十 综合练习 【目的与要求】 1要求学生能够运用所学过的基础语法知识和基本编程技能进行综合练习。2独立完成3套模拟试题。【上机内容】模拟试题一一、选择题(每题1分 共15分)1设x,y为float型变量,则下列()为不合适的赋值语句A +x; B y=(float)3; C x=y=0; D x*=y+8;2若x为int 变量,则执行下列语句x的值为()x=65535;printf(“%dn”,x);A 65535 B 1C 无定值 D -13下面()不正确的转义符()A t B aC 081 D n4在C语言中,char类数据在内存中是以()形式存储的A原码 B反码C 补码 D ASCII码5以下变量名()是合法的。A break B $123C lotus_2_3 D 6判断char型变量c1是否为小写字符的最简单且正确的表达式()。A a=c1=z B (c1=a)&(c1=z)C (a=c1) D (c1=a)&(c1=z)7在C语言中,int,char,float所占用的内存。A 均为2个字节 B 由用户自己定义 C PC 机为2,1,4 D 2,2,48. 若有说明int x,y,下面程序()不能实现以下函数关系y=-1x0A if (x0) y=1;else y=0;C y=0; if (x=0) if (x0) y=1; else y=-1;D if (x=0) if (x0) y=1;else y=0; else y=-1;9while (!x)中(!x)与下面条件()等价A x= =0 B x= =1 C x!=1 D x!=0 10 以下不是无限循环的语句为()。A for (y=0,x=1;x=+y;x+);B for (;x+);C while (1) x+;D for (i=10;i-) sum+=i;11 若有以下语句,则下面()是正确的描述。Char x=”12345”;Char y=1,2,3,4,5;A x,y完全相同。B x,y不相同。 C x数组长度小于y数组长度。 D x,y字符串长度相等。 12 为了判断两个字符串s1 和s2是否相等,应当使用()。A if (s1= =s2) B if (s1=s2)C if (strcpy(s1,s2) D if (strcmp(s1,s2)= =0) 13 C程序中函数返回值的类型是由()决定。 A return语句中的表达式类型。B 调用该函数的主调函数类型。C 调用函数时临时决定。D 定义函数时所指定的函数类型。14 若 int t, a=5,b=6,w=1,x=2,y=3,z=4,则经过 t=(a=wx)&(b=yz)计算后变量t ,a, b的值分别为()A 0,0,0 B 0,0,6C 1,0,0 D 1,0,615 如果变量grade的值为1, 则运行下列程序段后输出结果为()switch(grade) case 1:printf(“an”);case 2:printf(“bn”);case 3:printf(“cn”);A a B abcC abc D ab二写出下列程序的运行结果(每题3分,共15分)1 main()int i,j,k;char space= ;for(i=0;i=5;i+)for (j=i;j=i;j+)printf(“%c”,space);for (k=0;k=5;k+)printf(“%c”,*);printf(“n”);2main()int n=0;while(n+=2)printf(“%dt”,n);printf(“%dn”,n); 3 main() int a33=1,2,3,4,5,6,7,8,9;int i,j,t;for (i=0;i3;i+)for (j=0;j3;j+)t=aij;aij=aji;aji=t;for (i=0;i3;i+) for(j=0;j3;j+)printf(“%4d ”,aij);printf(“n”);4 #include “string.h”main()char string120=”abcd”;char string2=”cdt”;strcat(string1,string2);printf(“%d”,strlen(string1);5 main() int count ,sum, x;count=sum=0;do scanf(“%d”,&x);if (x%2!=0) continue;count+; sum+=x; while (countj?(j-):(i-) k+;A 1,9,1 B 1,0,2 C -1,0,1 D 0,0,22 int i=0,j=0;int a=2,b=4,c=5,d=6;表达式(i=a-b)&(j=c-d)的结果是()A 1 B 0C -2 D -13若给定条件表达式(m)?(a+):(a-),则表达式m()A 等价于(m=0) B 等价于(m=1)C 等价于(m!=0) D 等价于(m!=1)4 下列程序运行结束后,n的值为()n=2;do n=n+n;n-; while (n20);A 21 B 22C 33 D 245已知数组a34,若给a12赋值5 ,下列操作正确的是()A a=5 B *a1=5C a2=0,5,3,4 D *(a1+2)=56文件包含的含义是指()A 定义常量 B 定义变量C 引入已说明的函数 D 引入标准函数7以下变量命名合法的是()A M.john B $123C lotus1_2_3 D 8下面关于”A”的说法正确的是()A 它代表一个字符常量 B 它代表一个字符串常量C 它代表一个字符a D 它代表一个变量9以下语句执行后变量c的结果是()int a=7,b=2;float c;c=a/b;A 3.5 B 3C 3.0 D 110 设定如下变量,则表达式5+b+i*f-d/e-a的结果是()int i;float f;double d;long int e;A 浮点型 B 长整型C 整型 D 双精型11 以下不正确的定义语句是()A double x5=2.0,4.0,6.0,8.0,9.0;B int y=5=0,1,3,5,7,9;C char c1 =1,2,3,4,5;D char c2 =x10,x1,x8;12指出哪一个不是C语言的赋值语句()A int a=1,b=3; B i+; C a=b=5; D y=int(i); 13 以下哪一个是无限循环的语句为()。A for (y=0,x=0;x=+y;x+);B for (x=1;x+);C i=15; while (x10) x-;D for (i=10;i5;i-) sum+=i;二写出下列程序的运行结果(每题3分,共15分)1#include “stdio.h”main()int i;for (i=1;i=5;i+) if (i%2) printf(“*”);else continue ;printf(“#”);printf(“$n”);2 main()int i;void function(void);for (i=0;i3;i+)function();void function(void)int i=1,j=1;static int k=1;i+;j+;k+;printf(“%d,%d,%d”,i,j,k);3 float x=1.0,y=2.0,z;main() double fun(void);z=fun();printf(“%f,%f,%fn”,x,y,z);double fun(void)int y,z;x=y=z=3.0;return(x+y+z);4main() int i=1,k=0;while (i-) k=k+k;printf(“k=%dn”,k);5main() int i,sum;i=1;for(sum=1;i=5;i+,sum-)sum*=sum;printf(“%d”,sum);三 编程(共59分)1设有一个字符串“This is a computer” ,请编程求字符“i”首次出现的位置。(8分)2 试编程求3*3二维数组中最大元素及其所在的行、列位置。(12分)3编写程序,计算并输出下面级数在求和过程中第一次出现和数大于999时的奇数项部分和OS2。(其中表示幂运算)1*2-2*3+3*4-4*5+(-1)(n-1)*n*(n+1)+ (13分)4有一张由9个学生每人8个数据组成的二维数据表。编写程序,要求将学生的总成绩按降序(由大到小)排列,计算并输出总分第二名学生的平均成绩。(13分)姓名 学号 年龄 政治 语文 数学 计算机 体育 总分李明 1 19 81 89 99 98 87张力 2 16 89 90 95 80 90王英 3 17 91 77 88 95 78赵锐 4 18 79 84 95 93 96周密 5 15 95 92 98 99 93吴川 6 17 78 88 85 86 80孙康 7 14 91 85 94 82 88郑重 8 15 90 92 94 90 95胡琴 9 16 75 85 87 94 905已知在正文文件da1.dat中,每个记录只有两项数据,第一项为一整数表示学生的学号,第二项为形如xx.x的一个实数,试统计计算并向文件t2.dat输出60分以上(含60分)的人数占总人数的比例R。(13分)模拟试题三一 选择题(每题2分 共20分)1下面关于”A”的说法正确的是()A 一个字符常量 B一个字符串常量 C 一个字符a D一个字符变量2使用字符串函数时,必须将()头文件包含在主程序中A“stdio.h” B”string.h”C “math.h” D”stdlib.h”3下面关于的说法不正确的是()A转义字符 B起换行作用C能用于输出语句 D也能用于打印机4C程序是由()构成A数据文件 B文本文件C 函数 D主函数和其他函数5下列关于函数的说法哪些是错误的()A可以单独执行 B可以嵌套调用C可以定义在主函数之前或之后D数组可以作为函数的参数6一般情况下,C语言是以()表示运算结果为逻辑真。A F B T C 1 D 07以下变量名()是合法的。A continue B $123C lotus_2_3 D 8一个C语言程序总是从()开始执行的。A 主过程 B主函数C子函数 D按书写顺序9PC机中,C语言的int,char,float所占用的内存为()字节。A 1, 2, 4 B 2,2,2C 2,1,4 D 2,2,410. 若k为float型,则下列程序执行结果为()k=2.0;while (k!=0)printf(“%d”,k);k-;printf(“n”);A 无限多次 B 0次C 1次 D 2次二 按题目要求填空完善下列程序(每题6分,共24分)1 按逆序输出一个字符串Void reversr(str)Char str;int len.i;char c;len=;for (i=0;i;i+) c=;stri=strlen-i-1;=c;#include main()char string256;gets(string);reverse(string);puts(string);2输出Fibonacci数列的前15项,要求每行输出5项。#define M 15main()int fibM;int i,fib0=1;fin1=1;for (i=2;iM;i+)=fibi-2+;for(i=0;iM;i+) if ( ) printf(“n”); ;3 用起泡法对10个按升序排序main()int a10=2,4,1,6,-1,34,56,78,-23,20;int i,j,k;for (j=0;j ;j+)for (i=0; ;i+)if ( ) k=ai; ;ai+1=k; 3 输出100-200间的所有素数及其个数main()int m,k,I,n=0for (m=101;m=200;m+) for (i=2;i=k;k+)if ( ) break;if ( ) printf(“%d “,m); n=n+1;printf(“%d”,n);三 编程(共56分)1编写程序,求下面级数前n项中偶数项的和ES。在求和过程中,以第一个绝对值大于9999的项为末项,计算并输出和数ES。(其中表示幂运算)1!-2!+3!-4!+(-1)(n-1)*n!+ (10分)2设计一个程序,对于从键盘输入的年、月、日,计算并输出相应是星期几。比如,1998年7月1日是星期三,要求输出形式为711998:。 (12分)提示 推算公式:s=yy-1+(yy-1)/4-(yy-1)/100+(yy-1)/400+ddw=s-7*(s/7)其中yy是年份数,dd是yy年元旦到日期d的总天数,w是星期序数,w=

温馨提示

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

评论

0/150

提交评论