郑州大学远程教育C语言考试试卷

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

int main(){
int i=1,j=0,n=5,m=7;
for(i;i<n;i++){
for(j;j<m;j++){
switch(i){
case 1:
printf(" ");
break;
case 2:
printf(" ");
case 3:
printf(" ");
case 4:
printf(" ");
A、0
B、1
C、2
D、10
6、以下不合法的表达式是(C):(1分) A、x=y=200; C、5+x=10;
B、5+(x=10); D、y+x==10;
7、以下程序运行后,main() {char *s="abcde"; s+=2; printf("%d\n",s); },输出结果是(D)(1分)
A、cde
B、字符 c 的 ASCII 码值
C、字符 cቤተ መጻሕፍቲ ባይዱ的地址
D、值不确定
8、在以下关于 C 语言的叙述中,正确的说法是(B):(1分)
A、C 语言比汇编语言快
B、C 语言比 FORTRAN 语言快
C、C 语言比 FORTRAN 语言和汇编语言都快
D、C 语言比 FORTRAN 语言慢
9、已说明 int a=256,执行语句 printf(”%x” ,a);的结果是(A)(1分)
int n = 0; scanf("%d", &n); while(n>0)
{ printf("%d", n%10); n /= 10; } }
5、 编写程序,用双循环结构输出下列三角形: 1111111 22222 333 4
(10分)
请将你解答本题所写的源程序粘贴到下面
#include<stdio.h>
6、函数原型有什么作用? (5分)
1.抽象函数。如果能找到原型,可以知道问题的结果,我们从而朝着那个方向努力。 比如 f(ab)=f(a)+f(b)原型是对数函数。我们可以知道 f(1)=0,还可以知道函数定义域肯定在(0,正无穷。 2.构造函数。比较大小之类的 3.解决实际应用题。
三、编程题(6道小题,共60分) 1、编写程序,计算并输出下面级数前 n 项(n=50)的部分和。
}
printf(“%d”:i);
}
printf(“\n”);
m=m-2;
}
return 0;
}
break; break; break;
6、编写程序。从键盘输入100个数,将正数升序排列到数组的前端,把0放在中间,负数按降序排列在0的后面。 (10分)
请将你解答本题所写的源程序粘贴到下面
#include<stdio.h> int main() { double test[100],test1[100],test2[100]; int i,m,j=0,k=0,cnt=0; double temp;printf("请输入100个数:"); for(i=0;i<100;i++)
char a[]="acegikm"; char b[]="bdfhjlnpq"; char c[80],*p; int i=0,j=0,k=0; while(a[i]!='\0'&&b[j]!='\0') { if(a[i]<b[j]) c[k]=a[i++] ;
else c[k]=b[j++] ; k++;
A、100
B、256
C、0ffe
D、00ff
10、以下程序的输出结果是:main(){int x; for(x=1;x<10;x++) for(x=10;x<10;x++); printf("%d\n",x);}B (1分)
A、11
B、10
C、12
D、9
二、简答题(6道小题,共30分)
1、如何理解指针? (5分)
指针是 C 语言的精华部分,通过利用指针,能很好的利用内存资源,使其发挥最大的效率。有了指针技术,可以描 述复杂的数据结构,对字符串的处理可以更灵活,对数组的处理更方便,使程序的书写简洁,高效。 指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。
2、C 语言标识符的命名规则是什么?请举例说明。 (5分)
for(j=0;j<15-i;j++) if(a[j]<a[j+1]) { q=a[j]; a[j]=a[j+1]; a[j+1]=q; }
for(i=0;i<15;i++) printf("排列后的数为%d\n",a[i]);
}
4、写一程序:输入一个正整数,按十进制位从低到高输出。
(10分) 请将你解答本题所写的源程序粘贴到下面 #include<stdio.h> void main() {
i++; } printf("项数和 sun=%d\n",sum);
}
2、写函数完成将已按升序排好的两个字符串 a 和 b 中的字符按升序归并到字符串 c 中。
(10分) 请将你解答本题所写的源程序粘贴到下面 # include <stdio.h> # include <string.h> void main() {
1*2+2*3+3*4+4*5+……+n*(n+1)+…
(10分) 请将你解答本题所写的源程序粘贴到下面 void main()
{ int i,n,q,sum; printf("请输入要计算的项数:"); scanf("%d",&n); for(i=2,sum=0;i<=n;i++) {
q=i*(i+1); sum+=q;
以是不同类型
2、对于16位系统中,C 语言中整数 -8在内存中的存储形式是(D):(1分)
A、1111 1111 1111 1000
B、1000 0000 0000 0000
C、1000 0000 0000 1000
D、1111 1111 1111 0111
3、设 x 和 y 均为 int 型变量,则以下语句:x+=y; y=x-y; x-=y; 的功能是(D)(1分)
A、把 x 和 y 按从大到小排列
B、把 x 和 y 按从小到大排列
C、x 中为原来 x 和 y 的值的和
D、交换 x 和 y 中的值
4、在 C 语言中,不正确的常量是(B)(1分) A、0xf6 C、.5e-6
B、0876 D、+3e+2
5、以下程序的输出结果是:main(){int x, y=0; for(x=1;x<10;x++) for(x=10;x<10;x++) y++; printf("% d\n",y);}A(1分)
#include<*.h> #include"*.h"
从缺省的系统库文件中查找头文件 先从用户工作目录中查找,没有找到再从系统库文件中找
5、静态变量有什么特点? (5分)
静态局部变量 它与局部变量的区别在于: 在函数退出时, 这个变量始终存在, 但不能被其它 函数使用, 当再次进入该函数时, 将保存上次的结果。其它与局部变量一样。 2. 静态全程变量 Turbo C2.0允许将大型程序分成若干独立模块文件分别编译, 然后将所有模块 的目标文件连接在一起, 从而提高编 译速度, 同时也便于软件的管理和维护。静态全程变量就是指只在定义它的源文件中可见而在其它源文件中不可见 的变量。它与全程变量的区别是: 全程变量可以再说明为外部变量(extern), 被其它源文件使用, 而静态全程变量 却不能再被说明为外部的, 即只能被所在的源文件使用。 特点一:静态变量的值是共享。特点二:不需要对象实例化就可以使用。
【ZZJ 网上考试系统 v10.1】 本套软件使用权属于:郑州大学远程教育学院 (学期:131) 考试课程:6517.C 语言程序设计(第3次考试) 考试时间:120分钟 考场:123.15.57.116 考试日期:2013-10-16
考号:13053177003 姓名:曹光辉
剩余时间: 55:23
命名规则:以字母或下划线开始,由字母、数字或下划线组成的符号串。如 abc,_a12等
3、你是如何理解 C 语言中的变量的? (5分)
其值可以改变的量叫做变量。一个变量应该有一个名字(标识符),它表示内存中的某个存储单元,在该存储单元中 存放变量的值。
4、文件包含的两种格式是什么?有什么区别? (5分)
} c[k]='\0'; if(*(b+j)!=’\0’ )p=b+j;
else p=a+i; strcat(c,p); puts(c); }
3、用起泡法对数组中15个实数进行排序。
(10分) 请将你解答本题所写的源程序粘贴到下面 #include<stdio.h> void main() {
int i,j,q,a[15]; printf("请输入要排列的数:"); for(i=0;i<15;i++) scanf("%d",&a[i]); for(i=0;i<15;i++)
保存交卷帮助
本卷共有3大题。
一、单项选择题(10道小题,共10分)
1、C 语言并不是非常严格的算法语言,在以下关于 C 语言的不严格的叙述中,错误的说法是(B):(1分)
A、有些不同类型的变量可以在一个表达式中运算
B、大写字母和小写字母的意义相同
C、在赋值表达式中赋值号(=)左边的变量和右边的值可 D、同一个运算符号在不同的场合可以有不同的含义
} return 0; }
考号:13053177003 姓名:曹光辉
剩余时间: 55:23
保存交卷帮助
强烈建议您使用 IE 6.0以上,屏幕分辨率1024×768以上,真彩,小字体浏览
scanf("%lf",&test[i]); for(i=0;i<100;i++)
if(test[i]>0) test1[j++]=test[i]; Else if(test[i]<0) test2[k++]=test[i]; Else cnt++; for(i=0;i<j;i++) for(m=0;m<j-i;j++) if(test1[m]>test1[m+1]) { temp=test[m]; test1[m]=test1[m+1]; test1[m+1]=temp; } for(i=0;i<k;i++) for(m=0;m<k-i;j++) if(test2[m]<test2[m+1]) { temp=test[m]; test2[m]=test2[m+1]; test2[m+1]=temp; } for(i=0;i<j;i++) test[i]=test1[i]; for(i=0;i<cnt;i++) test[j++]=0; for(i=0;i<k;i++) test[j++]=test2[i]; for(i=0;i<100;i++) { printf("%lf",test[i]); if((i+1)%10==0) printf("\n");
相关文档
最新文档