精心打造东北大学近四年C语言理论考试试题及答案
东北大学C语言机考试题全

7 8 9 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 40 41 42 43 44 45在物理实验中,获得5个数据{0.89,0.78,0.0009,0.67,0.56},其中有一个数据小于0.001,此数据无效,将此无效在跳水比赛中,有10个评委共同打分,评分规则是去除最高分和最低分,然后计算剩余8个评委分数的平均分作为已知一有序序列1,2,4,6,12,14,要求从键盘输入一个整数,将此整数插入到此有序序列中。
要求输出原始数组和从键盘读入一整数,判断其在数组3,23,-7,8,9,10中是否存在,假设此数组中不存在重复的数字。
若存在,则删除(2)当x大根据下面的函数关系,对输入的每个x值,计算出相应的y值并输出结果。
(1)当x小于1时,y等于2+cos(x)从键盘读入一个实数,对其进行四舍五入处理,要求精确到到小数点后两位。
例如输入12.345,其结果为12.35;输从键盘输入三个整数a、b、c,输出其中最小的数。
从键盘输入三个整数a、b、c,输出其中最大的数。
从键盘输入一个百分制成绩,将其转换为等级'A'、'B'、'C'、'D'、'E'后输出成绩。
转换规则为:90分以上为'A 输入一个3位的正整数,判定该正整数是否为一个回文数。
(所谓回文数是指正读和反读都相同的数,例如131)。
从键盘输入一个字母表示的成绩,将其转换为分数。
规则是'A'对应95、'B'对应85、'C'对应75、'D'对应65、'E'输入一个整数,将其数值按小于10,10~99,100~999,1000以上分类并显示(例如:输入358时,显示358 is 1(2)当x大于根据下面的函数关系,输入X,计算Y,要求输出结果保留两位小数。
东大C语言及程序设计网考复习资料答案

东北大学继续教育学院C语言及程序设计复习题第一部分(填空题):1.按照C语言规定的用户标识符命名规则,不能出现在标识符中的是()。
A.大写字母B.连接符C.数字字符D.下划线答案:B2.下面关于计算机正确的是( )。
A.计算机由硬件系统和软件系统两部分构成B.只要有硬件系统,计算机就能工作C.计算机只能处理文本信息D.计算机只能处理计算问题答案:A3.( )是c语言提供的合法的数据类型关键字。
A.IntB.longC.CharD.integer答案:B4.面向过程的高级语言包括( )。
A.C,JA V AB.C,BASICC.C++.NET,ASPD.C,VB答案:B5.软件按功能可以分为: 应用软件、系统软件和支撑软件(或工具软件)。
下面属于应用软件的是( )。
A.编译程序B. 操作系统C.教务管理系统D.汇编程序答案:C6.以下选项中关于C语言常量的叙述错误的是()。
A.所谓常量,是指在程序运行过程中,其值不能被改变的量B.常量分为整型常量、实型常量、字符常量和字符串常量C.常量可分为数值型常量和非数值型常量D.经常被使用的变量可以定义成常量答案:D7.下面描述中正确的是()。
A.C语言提供了专门的输入/输出语句B.C语言调用输入/输出函数时需要使用include命令包含头文件C.C语言可以直接使用输入/输出函数D.输入/输出函数所在的头文件是stdlib.h答案:B8.假设有char型变量c1,c2,执行下面程序段:c1=gatchar();c2=gatchar();printf(“c1=%c,c2=%c\n”,c1,c2);如果c1和c2的值分别为字符a和b,则从键盘正确的输入方式是()。
A.ab<回车>B.a<回车>b<回车>B.C.a<空格>b<回车> D.a<tab>b<回车>答案:A9.下面描述中正确的是()。
东北大学机械学院C语言考试题库及答案

东北大学机械学院C语言答案题目:根据下面的函数关系,对输入的每个x值,计算出相应的y值并输出结果。
5 题目:输入一个整数,当为65时显示A,66时显示B,68时显示C,其他值时显示END。
(可选用switch 语句编写)6 题目:编写程序将用户输入的字母进行大小写转换。
7 题目:编程判断输入的正整数是否即是5的倍数又是7的倍数。
若是则输出该数;否则输出-1。
8 题目:输入一个整数,判断它是奇数还是偶数并输出。
9 题目:从键盘输入二个整数a、b,将其按大到小排列。
10 题目:找出不超过1000的十位数字为1,个位数字为3或7的所有数。
例如:13、17、113、317等。
11 题目:输入一个整数,判断该数是否能被3,5,7整除,并输出以下信息之一:(1)能同时被3,5,7整除;(2)能被其中两数(要指出哪两个)整除;(3)被其中一个数(要指出哪一个)整除;(4)不能被3,5,7任一个整除。
12 题目:输入一个5位的正整数,判定该正整数是否为一个回文数。
(所谓回文素数是指正读和反读都相同的数,例如12321)。
13 题目:假设变量a、b、c为整数,从键盘读入a、b、c的值,当a为1时显示b与c之和,a为2时显示b与c之差,a为3时显示b与c之积,a为4时显示b/c之商,其他数值不做任何操作。
14 题目:输入一个整数,将其数值按小于10,10~99,100~999,1000以上分类并显示(例如:输入358时,显示358 is 100 to 999)。
15 题目:从键盘读入三角形三边,判断能否组成三角形,若可以组成三角形,输出三角形的面积。
16 题目:从键盘读入三角形三边,判断能否组成三角形,若可以组成三角形,输出三角形的类型(等边、等腰、直角、一般)。
17 题目:计算二次方程的根。
18 题目:给出一个不多于5位的正整数,求出它是几位数,分别打印出每一位数字,然后再按逆序打印出各位数字。
19 题目:从键盘输入三个整数a、b、c,输出其中最大的数。
东北大学C语言机考试题全

主观题
Page 5
程序设计 题 程序设计 题 程序设计 题 程序设计 题 程序设计 题 程序设计 题 程序设计 题 程序设计 题 程序设计 题
程序设计 题 程序设计 题 程序设计 题 程序设计 题
2 0.113396 2 0.948186 3 0.045317 3 0.886919 3 0.150624 3 0.43147 3 0.060552 3 0.69595 3 0.409323 3 0.848001 1 0.483078 1 0.662013 2 0.060207 2 0.498132
题号 7
8
9
12
13 14 15 16 17 18 19 20
21
22 23 24 25 26 27 28 29 30
主观题 Page 1
主观题 31 32 33 34 35 36 37 38 40 41 42 43 44 45
Page 2
主观题
题目 在物理实验中,获得5个数据{0.89,0.78,0.0009,0.67,0.56},其中有一个数据小于0.001,此数据无效,将此 无效数据删除。要求编制函数cleandata(double *p)实现数据的清理工作,并在主函数输出删除之前的数组和 在跳水比赛中,有10个评委共同打分,评分规则是去除最高分和最低分,然后计算剩余8个评委分数的平均分作 为最终成绩。要求编制打分函数pscore(double *p),输入一次跳水动作中,10个评委打出的成绩,并计算此 动作的最终成绩。在主函数中调用此函数计算某次动作的分数。 已知一有序序列1,2,4,6,12,14,要求从键盘输入一个整数,将此整数插入到此有序序列中。要求输出原始数组 和插入之后的数组。要求编制函数insert(int *p,int d)实现此功能,在主函数调用此函数。 提示:例如输入整数位7,首先要找到7在整个序列中的位置,然后将7插入到当前位置。 从键盘读入一整数,判断其在数组3,23,-7,8,9,10中是否存在,假设此数组中不存在重复的数字。若存在,则 删除此数;否则,提示此数不存在。要求:编制函数remove(double *p,double d)实现数据的清理工作,并输 出原始数据和删除后的数据。 根据下面的函数关系,对输入的每个x值,计算出相应的y值并输出结果。 (1)当x小于1时,y等于2+cos(x) (2)当x大于等于1且x小于2时,y等于x的平方加上sin(x) (3)当x大于等于2时,y等于(x-2)的平方根; 要求:按格式输出x和y的值,要求小数点后保留3位。 从键盘读入一个实数,对其进行四舍五入处理,要求精确到到小数点后两位。例如输入12.345,其结果为 12.35;输入12.341,其结果为12.34。
东北大学C语言期末题库.

C 语言提纲总体上必须清楚的 :1 程序结构是三种 : 顺序结构 , 循环结构 (三个循环结构 , 选择结构 (if 和 switch2 读程序都要从 main(入口 , 然后从最上面顺序往下读 (碰到循环做循环 , 碰到选择做选择。
3 计算机的数据在电脑中保存是以二进制的形式 . 数据存放的位置就是他的地址 .4bit 是位是指为 0 或者 1。
byte 是指字节 , 一个字节 = 八个位 .5 一定要记住二进制如何划成十进制。
概念常考到的:1、编译预处理不是 C 语言的一部分,不再运行时间。
C 语言编译的程序称为源程序,它以 ASCII 数值存放在文本文件中。
2、每个 C 语言程序中 main 函数是有且只有一个。
3、在函数中不可以再定义函数。
4、算法的是一定要有输出的,他可以没有输入。
5、 break 可用于循环结构和 switch 语句。
6、逗号运算符的级别最低。
第一章1合法的用户标识符考查:合法的要求是由字母,数字,下划线组成。
有其它元素就错了。
并且第一个必须为字母或则是下划线。
第一个为数字就错了。
关键字不可以作为用户标识符号。
main define scanf printf 都不是关键字。
迷惑你的地方 If 是可以做为用户标识符。
因为 If 中的第一个字母大写了,所以不是关键字。
2实型数据的合法形式:2.333e-1 就是合法的,且数据是 2.333×10-1。
考试口诀:e 前 e 后必有数, e 后必为整数。
.3字符数据的合法形式 ::'1' 是字符占一个字节, "1" 是字符串占两个字节 (含有一个结束符号。
'0' 的 ASCII 数值表示为 48, 'a' 的 ASCII 数值是 97, 'A'的 ASCII 数值是 65。
4 整型一般是两个字节 , 字符型是一个字节,双精度一般是 4个字节:考试时候一般会说,在 16位编译系统,或者是 32位系统。
大学C语言考试题库(含答案)

单项选择================================================== 题号:1482执行以下程序段后,输出结果和a的值是()。
int a=10; printf("%d",a++);A、11 和10B、11 和11C、10 和11D、10 和10答案:C题号:2100已知字符'A'的ASCⅡ代码值是65,字符变量c1的值是'A',c2的值是'D'.执行语句printf("%d,%d",c1,c2-2);后,输出结果是A、65,66B、A,BC、65,68D、A,68答案:A题号:5055相同结构体类型的变量之间,可以()。
A、比较大小B、地址相同C、赋值D、相加答案:C题号:3217int a[10];合法的数组元素的最小下标值为()。
A、1B、0C、10D、9答案:B题号:45能正确表示逻辑关系:" a≥10或a≤0 "的C语言表达式是A、a>=0 | a<=10B、a>=10 or a<=0C、a>=10 && a<=0D、a>=10 || a<=0答案:D题号:157main(){int x=1,a=0,b=0;switch (x){ case 0: b++;case 1: a++;case 2: a++;b++;} printf("a=%d,b=%d",a,b); }该程序的输出结果是( )A、2,2B、2,1C、1,1D、1,0答案:B题号:4784设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为()。
A、不确定B、doubleC、intD、float答案:B题号:1647以下程序中,while循环的循环次数是______ main(){int i=0;while(i<10){if(i<1) continue;if(i==5) break;i++;}}A、死循环,不能确定次数B、6C、4D、1答案:A题号:191若有说明语句:char c='\72';则变量c()。
东北大学c语言编程试题及其答案

东北大学C语言题库第一部分(选择题)1、构成C语言的基本单位是________。
你的答案是:正确答案是:B过程函数语句命令2、设x为整型变量,不能正确表达数学关系:5<x<10的c语言表达式是_____。
你的答案是:正确答案是:A5<="">x>5&&x<10x==6||x==7||x==8||x==9!(x<=5)&&(x<10)3、在C语言中,逻辑运算符的优先级从高到低的排列顺序为_____。
你的答案是:正确答案是:D&&、||、!||、&&、!&&、!、||!、&&、||4、下面语句中,正确的是_____。
你的答案是:正确答案是:Dprintf("%c\n","student");printf("%c\n","c");printf("%s\n",&a);printf("%s\n","hello");5、对于for(表达式1;;表达式3)可以理解为_____。
你的答案是:正确答案是:Bfor(表达式1;0;表达式3)for(表达式1;1;表达式3)for(表达式1;表达式1;表达式3)for(表达式1;表达式3;表达式3)6、执行下面程序段的结果是_____。
main() { int x=1,a=0,b=0; switch(x) { case 0:b++; case 1:a++; case 2:a++;b++; } printf("a=%d,b=%d",a,b); }你的答案是:正确答案是:Ba=1,b=1a=2,b=1a=1,b=0a=2,b=27、执行下面程序段的结果是_____。
东北大学(秦皇岛)c语言考试题8

东北大学(秦皇岛)c语言考试题8一、选择题答案1. 有以下程序段int x=3do{ printf("%d",x-=2); }while (!(--x));其输出结果是A) 1B) 3 0C) 1 -2D) 死循环你所选择的答案是:*,正确答案是:C ×2. 假定以下程序经编译和连接后生成可执行文件PROG.EXE,如果在此可执行文件所在目录的DOS提示符下键入:PROG ABCDEFGH IJKL<回车>,则输出结果为main( int argc, char *argv[])){ while(--argc>0) printf("%s",argv[argc]);printf("\n");}A) ABCDEFGB) IJHLC) ABCDEFGHIJKLD) IJKLABCDEFGH你所选择的答案是:*,正确答案是:D ×3. 以下程序的输出是struct st{ int x; int *y;} *p;int dt[4]={ 10,20,30,40 };struct st aa[4]={ 50,&dt[0],60,&dt[0],60,&dt[0],60,&dt[0],};main(){ p=aa;printf("%d\n",++(p->x));}A) 10B) 11C) 51D) 60你所选择的答案是:*,正确答案是:C ×4. 以下选项中,非法的字符常量是A) '\t'B) '\17'C)"n"D) '\xaa'你所选择的答案是:*,正确答案是:C ×5. 若要打开A盘上user子目录下名为abc.txt的文本文件进行读、写操作,下面符合此要求的函数调用是A) fopen("A:\user\abc.txt","r")B) fopen("A:\\user\\abc.txt","r+")C) fopen("A:\user\abc.txt","rb")C) fopen("A:\\user\\abc.txt","w")你所选择的答案是:*,正确答案是:B ×6. 以下不能正确进行字符串赋初值的语句是A) char str[5]="good!";B) char str[]="good!";C) char *str="good!";D) char str[5]={'g','o','o','d'};你所选择的答案是:*,正确答案是:A ×7. 若有以下程序:#include "stdio.h"main(){int k=2,i=2,m;m=(k+=i*=k);printf("%d,%d\n",m,i);}执行后的输出结果是A) 8,6B) 8,3C) 6,4D) 7,4你所选择的答案是:*,正确答案是:C ×8. 有一函数,1 (x>0)y= 0 (x=0)-1(x<0)以下程序段中不能根据x值正确计算出y值的是A) if(x>0) y=1;else if(x==0) y=0;else y=-1;B) y=0;if(x>0) y=1;else if(x<0) y=-1;C)y=0;if(x>=0);if(x>0) y=1;else y=-1;D)if(x>=0)if(x>0) y=1;else y=0;else y=-1;你所选择的答案是:*,正确答案是:C ×9. 有以下程序段int n=0,p;do{scanf("%d",&p);n++;}while(p!=12345 &&n<3);此处do-while循环的结束条件是A) P的值不等于12345并且n的值小于3B) P的值等于12345并且n的值大于等于3C) P的值不等于12345或者n的值小于3D) P的值等于12345或者n的值大于等于3你所选择的答案是:*,正确答案是:D ×10. 若有说明:int n=2,*p=&n,*q=p;,则以下非法的赋值语句是A) p=q;B) *p=*q;C) n=*q;D) p=n;你所选择的答案是:*,正确答案是:D ×11. 有以下程序float fun(int x,int y){ return(x+y); }main(){ int a=2,b=5,c=8;printf("%3.0f\n",fun(int)fun(a+c,b),a-c));}程序运行后的输出结果是A) 编译出错B) 9C) 21D) 9.0你所选择的答案是:*,正确答案是:B ×12. 有以下程序void fun(char *c,int d){ *c=*c+1;d=d+1;printf("%c,%c,",*c,d);}main(){ char a='A',b='a';fun(&b,a); printf("%c,%c\n",a,b);}程序运行后的输出结果是A)B,a,B,aB) a,B,a,BC) A,b,A,bD) b,B,A,b你所选择的答案是:*,正确答案是:D ×13. 在一个C程序中()。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
精心打造东北大学近四年C语言理论考试试题及答案!!!会有用的。
东北大学C语言期末考试题及答案(1)1、构成C语言的基本单位是___B____。
过程函数语句命令2、设x为整型变量,不能正确表达数学关系:5<x<10的c语言表达式是__B___。
5x>5&&x<10x==6||x==7||x==8||x==9!(x<=5)&&(x<10)3、在C语言中,逻辑运算符的优先级从高到低的排列顺序为__D___。
&&、||、!||、&&、!&&、!、||!、&&、||4、下面语句中,正确的是__D___。
printf("%c\n","student");printf("%c\n","c");printf("%s\n",&a);printf("%s\n","hello");5、对于for(表达式1;;表达式3)可以理解为__B___。
for(表达式1;0;表达式3)for(表达式1;1;表达式3)for(表达式1;表达式1;表达式3)for(表达式1;表达式3;表达式3)6、执行下面程序段的结果是__B___。
main() { int x=1,a=0,b=0; switch(x) { case 0:b++; case 1:a++; case 2:a++;b++; } printf("a=%d,b=%d",a,b); }a=1,b=1a=2,b=1a=1,b=0a=2,b=27、执行下面程序段的结果是__D___。
int x=0; do { printf(“-”,x--); }while (x);打印出321打印出23不打印任何结果陷入死循环8、设x=10,y=5;z=15,执行下面一段程序后z的结果是__C___。
If(x>y) if(y>z)x=y; else z=y;76549、如果一个函数被说明为static,那么__B___。
该函数只能被main函数调用该函数能被当前文件的函数调用,但不能被其他文件的函数调用该函数不能被当前文件的函数调用,可以被其他文件的函数调用任何文件的函数都可以调用该函数10、下面关于局部变量的描述中,错误的是__D___。
函数的局部变量的有效范围只能在本函数函数的形式参数也是局部变量局部变量的名称不能和函数同名称不同的函数中不能定义相同名称的局部变量11、下列初始化字符数组的语句中,错误的是__A___。
char str[5]="hello";char str[]={'h','e','l','l','o','\0'};char str[5]={"hi"};char str[100]="";12、引用数组元素时,数组下标可以是__D___。
整型常量整型变量整型表达式以上均可13、已知:char str[10],*p=str; 下面的语句中正确的是__B___。
str="ABC";p="ABC";*str="ABC";*p="ABC";14、下面语句中,错误的是___D__。
int i;int *p;p=&i;int i,*p;p=&a;int i,*p=&a;int i,*p;*p=i;15、下面对于结构体类型的描述正确的是__A___。
结构体类型的大小为各成员变量所占内存的总和结构体类型变量与简单数据类型变量的引用规则一致。
结构体类型的大小为其成员中所占内存空间最大的变量的大小结构体类型的大小为其最后一个成员中所占内存空间的大小16、C语言规定:在一个源程序中,main函数的位置____C____。
必须在最开始必须在系统调用的库函数的后面可以任意必须在最后17、表达式18/4*sqrt(4.0)/8值的数据类型是 ___C____。
intfloatdouble不确定18、在c语言中,char型数据在内存中的存储形式是 ___D___。
补码反码原码ASCII码19、阅读以下程序,当输入的数据形式为:25,13,10<CR>时,正确的输出结果为___D___。
main() { int x,y,z; scanf("%d%d%d",&x,&y,&z); printf("x+y+z=%d\n",x+y+z); }x+y+z=48x+y+z=35x+z=35不能确定20、有如下程序 void main() { float x=2.0,y; if(x<0.0) y=0.0; else if(x<10.0) y=1.0/x; else y=1.0;printf(“%f\n”,y); } 该程序的输出结果是( C )。
0.0000000.2500000.5000001.00000021、判断char型变量s是否为小写字母的正确表达式是__C____。
'a'<=s<='z'(s>='a')&(s<='z')(s>='a')&&(s<='z')('a'<=s)and('z'>=s)22、执行以下语句后,y 的值为___A___。
int x,y,z; x=y=z=0; ++x || ++y && ++z;12不确定值23、有如下程序段:int number=0; while(number++<=3) printf(“%d\n”,number++); 则正确的执行结果是___C___。
2 3 40 1 21 32 424、有如下程序 void main() { int n=9; while(n>6) { n--;printf(“%d”,n); } } 该程序段的输出结果是__B___。
9878768765987625、要使以下程序段输出10个整数,请在空格中填入一个整数。
for(i=0;i<=___B___;printf("%d\n",i+=2));1518201026、设函数fun的定义形式为:fun(char ch,float x){…} 则以下对函数fun的调用语句中正确的是___B___。
fun(“abc”,3)t=fun(‘D’,5)fun(‘ab’,3)fun(‘78’,1)27、函数求sum(int n)的功能是计算自然数1到n的和,即1+2+…+n。
Main() { printf("The sum=%d\n",sum (10)); } int sum(int n){ int s=0,i; for(i=0;i<=n;i++) _____B_____ } 请从备选答案中选择一答案,补全程序。
s=s+n;return s;s=s+i;return s;return s;return s+=I;28、设函数fun的定义形式为 int fun(int a[],int n) { int s=0,i=0;for(i=0;i<n;i++)s+=a[i]; return s; } main() { int a[10]={1,2,3,4,5};printf("sum=%d", fun(&a[2],2)); } 则程序的运行结果为___C___。
357929、若有说明:int a[10];则对数组元素的正确引用是___D____。
a[10]a[3,5]a(5)a[10-10]30、以下不正确的定义语句是___B___。
double x[5]={2.0,4,0,6,0,8,0,10.0};int y[5]={0,1,3,5,7,9};char c1[]={'1','2','3','4','5'};char c2[]={'\x10','\xa','\x8'};31、下面程序的运行结果是___B____。
#include "stdio.h" main() { char str[]="SWLIA",c; int k; for(k=0;(c=str[k])!='\0';k++) { switch(c) { case 'I':++k;break; cSWASW*SW*ASW32、以下能正确进行字符串赋值操作的是___D___。
char s[5]={"12345"};char s[5]={'1','2','3','4','5',‘6’};char *s;*s="12345";char *s="12345";33、以下程序段的运行结果是___C___。
Char a[ ]="program", *p; p=a; while (*p!='g') { printf("%c", *p-32); p++; }PROgramPROGRAMPROproGRAM34、若有说明:char *pc[ ]={"aaa", "bbb", "ccc", "ddd"};,则以下叙述正确的是__C____。
*pc[0]代表的是字符串"aaa"的首地址*pc[0]代表的是字符'a'的首地址pc[0]代表的是字符串"aaa"的首地址pc[0]代表的是字符'a'的首地址35、下列程序的运行结果是___B___。
#include <stdio.h> #include <string.h> void f (char *s, int n) { char a,*q1,*q2; q1=s;q2=s+n-1; while(q1<q2) { a=*q1++; *q1=*q2--; *q2=a;} } main() { char b[]="ABCDEFG"; f(b, sGAGGAGAAGAAGAGGFEDCBAAGADAGA36、定义如下的结构体描述同学信息 struct Student { unsigned long id; char name[30]; char class[30]; }s; 假设此同学的序号为1002,姓名为黎明,班级为冶金3班,则描述正确的为___C__。