江西财经大学2008年专升本试卷C语言答案
- 格式:doc
- 大小:37.00 KB
- 文档页数:3
专升本C语言历年考试题及答案解析Revised final draft November 26, 2020专升本C语言历年考试题及答案一、单项选择题1. C语言源程序文件经过C编译程序编译连接之后生成一个后缀为__C____的文件。
A、”.c”B、“.obj”C、“.exe”D、“.bas”2. 以下选项中不正确的整型常量是_C____。
A、 12LB、 -10C、 1,900D、 123U3. 表达式___C___的值是0。
A、3%5B、3/5.0C、3/5D、3<54. 表达式 !(x>0||y>0) 等价于__D___。
A、!x>0||!y>0B、!(x>0)||!(y>0)C、!x>0&&!y>0D、!(x>0)&&!(y>0)5. 若变量已正确定义并赋值,表达式__D____不符合C语言语法。
A、4&&3B、+aC、a=b=5D、int(3.14)6. 若变量已正确定义,执行语句scanf("%d%d%d ",&k1,&k2,&k3);时,___B___是正确的输入。
A、2030,40B、20 30 40C、20, 30 40D、20, 30,407. 执行语句printf(” __D____”, 2); 将得到出错信息。
A、%dB、%oC、%xD、%f8. 设变量定义为“int s[ ]="hello\nworld\n";”,则数组s中有__B____个元素。
A、12B、13C、14D、159. 设变量定义为“int a[2]={1,3}, *p=&a[0]+1;”,则*p的值是___B__。
A、2B、3C、4D、&a[0]+110. 若变量已正确定义并赋值,表达式 -k++ 等价于__A____。
专升本C语言历年考试题及答案一、单项选择题1. ___D___是合法的用户自定义标识符。
A、b-bB、floatC、<fr>D、_isw2. 若变量已正确定义并赋值,表达式___B___不符合C语言语法。
A、a*b/c;B、3.14%2C、2, bD、a/b/c3. ___C__是不正确的字符常量。
A、'n'B、'1'C、"a"D、'101'4. 在C 程序中,用___B__表示逻辑值“真”。
A、1B、非0 的数C、非1 的数D、大于0 的数5. __C____把x、y定义成float类型变量,并赋同一初值3.14。
A、float x, y=3.14;B、float x, y=2*3.14;C、float x=3.14, y=x=3.14;D、float x=y=3.14;6. 若变量已正确定义,表达式___C___的值不是2。
A、2&3B、1<<1C、a==2D、1^37. 若变量已正确定义,语句“if(a>b) k=0; else k=1;”和__C____等价。
A、k=(a>b)?1:0;B、k=a>b;C、k=a<=b;D、a<=b ? 0 : 1;8. 设变量定义为“int a, b;”,执行下列语句时,输入_D____,则a和b的值都是10。
scanf("a=%d, b=%d",&a, &b);A、10 10B、10, 10C、a=10 b=10D、a=10, b=109. 下列程序的输出结果是__D___。
fun(int a, int b, int c){ c =a*b; }void main( ){ int c;fun(2,3,c);printf(”%dn”,c);}A、0B、1C、6D、无法确定10. 在C程序中,若对函数类型未加说明,则函数的隐含类型为__A___。
2006年江西财经大学专升本选拔考试试卷考试科目:C语言程序设计一、请按要求写出表达式(每小题4分,共16分)。
1、设x和y分别表示两门课程的成绩,请写出一门是优秀且另一门不及格的逻辑表达式。
优秀的要求是不低于90分,不及格是指低于60分。
2、设str1和str2是两个字符数组名,请写出对这两个字符串进行逐个字符匹配的循环条件表达式。
3、任意三个大于0的数a、b、c,写出判断a、b、c能构成三角形三条边的逻辑表达式。
4、设a、b、c、d分别表示4个学生某课程的成绩,请写出至少有一个学生的成绩在90分以上,且至少有一个学生的成绩在60分以下的逻辑表达式。
二、指出程序运行的输出结果(每小题6分,共18分)1、#include <stdio.h>void main() {int a=1, b=9;do {b-=a;a++;} while (b-->0);printf(“a=%d, b=%d\n”, a, b);}2、#include <stdio.h>void main() {char ch[2][10]={“6937”, “254”}, *p;int i, sum;for (i=0; i<2; i++) {p=ch[i];sum=0;while (*p!=′\0′)sum=10*sum+*(p++)-…0‟;printf(“sum=%d\n”, sum);}}3、#include <stdio.h>void fun() {char c;c=getchar();if (c=='$') printf("%c", c);else {fun();printf("%c", c);}}void main() {fun();}输入:ABC$DEF(回车)三、程序填空题(每空2分,共20分)1、找出三个字符串中的最小者。
C语言程序设计开/闭卷:闭专业测绘工程班级室主任签字:一、1、以下叙述中正确的是A) C语言比其他语言高级B) C语言可以不用编译就能被计算机识别执行C) C语言以接近英语国家的自然语言和数学语言作为语言的表达形式D) C语言出现的最晚,具有其他语言的一切优点2、C语言中用于结构化程序设计的三种基本结构是A) 顺序结构、选择结构、循环结构B) if、switch、breakC) for、while、do-whileD) if、for、continue3、在一个C程序中A) main函数必须出现在所有函数之前B) main函数可以在任何地方出现C) main函数必须出现在所有函数之后D) main函数必须出现在固定位置4、下列叙述中正确的是A) C语言中既有逻辑类型也有集合类型B) C语言中没有逻辑类型但有集合类型C) C语言中有逻辑类型但没有集合类型D) C语言中既没有逻辑类型也没有集合类型5、下列关于C语言用户标识符的叙述中正确的是A)用户标识符中可以出现在下划线和中划线(减号)B)用户标识符中不可以出现中划线,但可以出现下划线C)用户标识符中可以出现下划线,但不可以放在用户标识符的开头D)用户标识符中可以出现在下划线和数字,它们都可以放在用户标识符的开头6、以下叙述中正确的是A)构成C程序的基本单位是函数B)可以在一个函数中定义另一个函数C)main()函数必须放在其他函数之前D)C函数定义的格式是K&R格式7、应用数据库的主要目的是A)解决数据保密问题B)解决数据完整性问题C)解决数据共享问题D)解决数据量大的问题8、一个C语言程序是由A)一个主程序和若干子程序组成B)函数组成C)若干过程组成D)若干子程序组成9、请选出可用作C语言用户标识符的是A)void,define,WORDB)a3_b3,_123,IFC)FOR,--abc,CaseD)2a,Do,Sizeof10、下列各数据类型不属于构造类型的是A)枚举型B)共用型C)结构型D)数组型11、在16位C编译系统上,若定义long a;,则能给a赋40000的正确语句是A)a=20000+20000;B)a=4000*10;C)a=30000+10000;D)a=4000L*10L12、以下不正确的叙述是A)在C程序中,逗号运算符的优先级最低B)在C程序中,APH和aph是两个不同的变量C)若a和b类型相同,在计算了赋值表达式a=b后b中的值将放入a中,而b 中的值不变D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值13、sizeof(float)是A)一个双精度型表达式B)一个整型表达式C)一种函数调用D)一个不合法的表达式14、若x,i,j和k都是int型变量,则计算表达式x=(i=4,j=16,k=32)后,x的值为A)4B)16C)32D)5215、设有定义:int n=0,*p=&n,**q=&p,则下列选项中正确的赋值语句是A)p=1;B)*q=2;C)q=p;D)*p=5;16、以下叙述中正确的是A)C程序的基本组成单位是语句B)C程序中的每一行只能写一条语句C)简单C语句必须以分号结束D)C语句必须在一行内写完17、计算机能直接执行的程序是A)源程序B)目标程序C)汇编程序D)可执行程序18、以下关于宏的叙述中正确的是A)宏名必须用大写字母表示B)宏定义必须位于源程序中所有语句之前C)宏替换没有数据类型限制D)宏调用比函数调用耗费时间19、以下选项中正确的定义语句是A)double a;b; B) double a=b=7C)double a=7,b=7; D)double,a,b;20、以下不能正确表示代数式2ab/cd 的C语言表达式是A)2*a*b/c/d B)a*b/c/d*2C)a/c/d*b*2 D)2*a*b/c*d21、C源程序中不能表示的数制是A)二进制B)八进制C)十进制D)十六进制22、检查软件产品是否符合需求定义的过程称为A)确认测试B)集成测试C)验证测试D)验收测试23、数据流图用于抽象描述一个软件的逻辑模型,数据流图由一些特定的图符构成。
05年C语言六、单项选择(10分,每题1分)1.下列变量定义正确的是________A. int 2ab; B。
float a〉b; C。
char $123 D. int *per;2.若有说明int a=1,x=2,y=3;下列不是C语言合法表达式的是A. ++9B. (float)(x) C。
a++ D. (float)x+y3.若有说明int i=1,j=2,k=3;表达式i&&j&&k的值为A。
1 B。
2 C。
3 D. 44.若有说明int a,b; 下面输入函数调用语句正确的是A。
scanf(“%d%d”,a,b); B. scanf(“%d%d”,&a,&b);C。
scanf(%d%d,a,b); D。
scanf(%d%d,&a,&b);5.下列不是关系表达式的是A。
3>5 B. 1<2〉3 C. !3〉5 D.1+2〉36。
下列对数组的定义正确的是A. int a(10);B. int a[10];C. int a{10};D.int a10;7。
下列对C程序结构的说法不正确的是A。
C程序是由一系列函数构成的 B.C程序可以有多个main()函数C.C程序中函数名不可以和变量名相同 D。
C程序中可以定义函数8.若有说明int *p,a[10],j=3;下列指针变量赋值错误的是A.p=&j;B.p=&a[j];C.p=a; D。
p=0x1000;9.若有说明int a=4;执行语句a>〉1后,变量a的值A.1B.2 C。
3 D。
410。
以只读的方式打开文本文件“test。
txt”的正确方法是A。
fopen(“test.txt",”r”); B. fopen(“test。
txt",”rb”);C。
fopen(“test”,"r”); D. fopen(“test.txt");七、填空题(10分,每题1分)a)若有说明a=-1;printf(“%d,%x,%o\n",a,a,a)的输出结果是______________。
往年专升本c语言试题及答案一、单项选择题1. C语言中,用于定义一个结构体类型的关键字是:A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项不是C语言中合法的变量名?A. _123B. intC. sumD. $amount答案:B3. 在C语言中,用于定义一个函数的关键字是:A. functionB. defC. voidD. int答案:D4. 在C语言中,一个整数除以一个浮点数的结果是:A. 整数B. 浮点数C. 字符串D. 错误答案:B5. 下列哪个选项是C语言中的逻辑运算符?A. %B. &&C. &&D. ==答案:B二、填空题1. C语言中,用于定义一个整型变量的关键字是________。
答案:int2. 一个C语言程序的执行从________函数开始。
答案:main3. 在C语言中,________运算符用于计算两个整数的和。
答案:+4. 用于定义一个字符型变量的关键字是________。
答案:char5. C语言中,________运算符用于判断两个表达式是否相等。
答案:==三、编程题1. 编写一个C语言程序,计算并输出100以内所有偶数的和。
```c#include <stdio.h>int main() {int sum = 0;for (int i = 1; i <= 100; i++) {if (i % 2 == 0) {sum += i;}}printf("The sum of even numbers within 100 is: %d\n", sum);return 0;}```2. 编写一个C语言程序,实现输入一个字符串,然后输出其逆序字符串。
```c#include <stdio.h>#include <string.h>int main() {char str[100];scanf("%s", str);int len = strlen(str);for (int i = len - 1; i >= 0; i--) {printf("%c", str[i]);}printf("\n");return 0;}```四、简答题1. 请简述C语言中数组和指针的关系。
专升本C语言历年考试题及答案解析(word版可编辑修改)编辑整理:尊敬的读者朋友们:这里是精品文档编辑中心,本文档内容是由我和我的同事精心编辑整理后发布的,发布之前我们对文中内容进行仔细校对,但是难免会有疏漏的地方,但是任然希望(专升本C语言历年考试题及答案解析(word版可编辑修改))的内容能够给您的工作和学习带来便利。
同时也真诚的希望收到您的建议和反馈,这将是我们进步的源泉,前进的动力。
本文可编辑可修改,如果觉得对您有帮助请收藏以便随时查阅,最后祝您生活愉快业绩进步,以下为专升本C语言历年考试题及答案解析(word版可编辑修改)的全部内容。
专升本C语言历年考试题及答案一、单项选择题1。
C语言源程序文件经过C编译程序编译连接之后生成一个后缀为__C____的文件.A、".c"B、“.obj”C、“。
exe”D、“.bas"2. 以下选项中不正确的整型常量是_C____.A、 12LB、—10C、 1,900D、 123U3。
表达式___C___的值是0。
A、3%5B、3/5.0C、3/5D、3〈54. 表达式!(x>0||y〉0) 等价于__D___。
A、!x>0||!y〉0B、!(x〉0)||!(y〉0)C、!x〉0&&!y>0D、!(x〉0)&&!(y〉0)5。
若变量已正确定义并赋值,表达式__D____不符合C语言语法.A、4&&3B、+aC、a=b=5D、int(3。
14)6. 若变量已正确定义,执行语句scanf(”%d%d%d ”,&k1,&k2,&k3);时,___B___是正确的输入。
A、2030,40B、20 30 40C、20, 30 40D、20, 30,407。
执行语句 printf(" __D____”, 2); 将得到出错信息.A、%dB、%oC、%xD、%f8。
专升本c语言真题及答案解析C语言真题及答案解析近年来,随着社会的发展和对高素质人才的需求增加,考试成为许多人提升学历和职业发展的重要途径。
而在考试中,C语言成为了不可或缺的一部分。
以下将针对C语言真题进行解析,帮助广大考生更好地备考。
一、选择题解析1. 下列关于C语言程序的说明中,哪个是正确的?A. 函数的定义一定在主函数前面B. 函数的定义和主函数的定义可以随意排序C. 主函数的定义必须在函数的定义前面D. 函数的定义和主函数的定义不能分别放在不同的源程序文件中答案解析:选项C正确。
在C语言中,主函数的定义必须在函数的定义前面,否则编译器无法识别函数的声明,会报错。
2. 下列程序段执行后i的值为多少?int i = 5;do{--i;}while(i--);A. 1B. 2C. 3D. 4答案解析:选项D正确。
循环语句do-while先执行一次循环体,再判断条件是否成立。
在本题中,i的初始值为5,经过一次循环体后,i的值变为4。
然后条件判断i--,结果为4,再次执行循环体,i的值减1变为3。
此时i的值为3,满足循环条件,再次执行循环体,i的值为2。
然后条件判断i--,结果为2,再次执行循环体,i的值减1变为1。
此时i的值为1,满足循环条件,再次执行循环体,i的值为0。
然后条件判断i--,结果为0,再次执行循环体,i的值减1变为-1。
此时i的值为-1,不满足循环条件,循环结束。
所以最终i的值为4。
二、填空题解析1. 下列关于C语言程序的命令中,用于定义某个常量的关键字是__。
答案解析:const。
关键字const用于定义某个常量,表示该变量的值不能被修改。
2. 下列代码段中,第一个#的作用是__。
#include <stdio.h>答案解析:预处理命令。
#include是一个预处理命令,用于包含系统的标准输入输出头文件<stdio.h>。
三、编程题解析题目:编写一个C语言程序,输入一个正整数n,输出1到n之间所有能被3整除但不能被5整除的数。
专升本C语言历年考试题及答案一、单项选择题1. C语言源程序文件经过C编译程序编译连接之后生成一个后缀为__C____的文件。
A、”.c”B、“.obj”C、“.exe”D、“.bas”2. 以下选项中不正确的整型常量是_C____。
A、12LB、-10C、1,900D、123U3. 表达式___C___的值是0。
A、3%5B、3/C、3/5D、3<54. 表达式!(x>0||y>0) 等价于__D___。
A、!x>0||!y>0B、!(x>0)||!(y>0)C、!x>0&&!y>0D、!(x>0)&&!(y>0)5. 若变量已正确定义并赋值,表达式__D____不符合C语言语法。
A、4&&3B、+aC、a=b=5D、int6. 若变量已正确定义,执行语句scanf("%d%d%d ",&k1,&k2,&k3);时,___B___是正确的输入。
A、2030,40B、20 30 40C、20, 30 40D、20, 30,407. 执行语句printf(” __D____”,2); 将得到出错信息。
A、%dB、%oC、%xD、%f8. 设变量定义为“int s[ ]="hello\nworld\n";”,则数组s中有__B____个元素。
A、12B、13C、14D、159. 设变量定义为“int a[2]={1,3}, *p=&a[0]+1;”,则*p的值是___B__。
A、2B、3C、4D、&a[0]+110. 若变量已正确定义并赋值,表达式-k++ 等价于__A____。
A、-(k++)B、(-k)++C、-(k+1)D、-(++k)11. 在C 语言程序中,在函数内部定义的变量称为__D____。
A、全局变量B、全程变量C、外部变量D、内部变量12. 若x是整型变量,表达式(x= 的值是__D___ 。
往年专升本c语言试题及答案一、选择题(每题2分,共20分)1. C语言中,用于定义变量的关键字是:A. defineB. varC. letD. int答案:D2. 下列哪个是合法的C语言常量?A. 1.2EB. .5e2C. 0xGHID. 1e.2答案:B3. 在C语言中,哪个运算符用于计算两个数的乘积?A. *B. /C. +D. -答案:A4. 以下哪个是C语言中的合法标识符?A. 2variableB. variable2C. variable#2D. variable$2答案:B5. C语言中,哪个关键字用于声明一个函数?A. functionB. methodC. procedureD. void答案:D6. 在C语言中,哪个语句用于结束一个循环?A. continueB. breakC. exitD. return答案:B7. 下列哪个是C语言中数组的正确声明方式?A. int array[]B. int [10] arrayC. int array[10]D. int 10 array答案:C8. 以下哪个是C语言中的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello" + "World"D. "Hello", "World"答案:A9. 在C语言中,哪个函数用于计算两个数的和?A. sum()B. add()C. plus()D. None of the above答案:D10. C语言中,哪个关键字用于定义一个结构体?A. structB. unionC. classD. type答案:A二、填空题(每题2分,共20分)1. 在C语言中,一个基本的数据类型是________。
答案:int2. 一个C语言程序的执行是从________函数开始的。
专升本c语言在线试题及答案一、选择题(每题2分,共20分)1. C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 在C语言中,以下哪个选项是正确的字符串定义?A. char str[] = "Hello";B. char str[] = 'Hello';C. char str = "Hello";D. char str[] = {"Hello"};答案:A3. 下列关于C语言函数的描述,错误的是?A. 函数可以没有返回值B. 函数可以有多个返回值C. 函数可以有默认参数D. 函数可以是递归的答案:C4. 在C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B5. 下列关于C语言数组的描述,正确的是?A. 数组可以是多维的B. 数组的大小在编译时确定C. 数组可以动态分配D. 数组的索引从1开始答案:B6. 在C语言中,以下哪个关键字用于定义一个枚举类型?A. enumB. unionC. structD. typedef答案:A7. 下列关于C语言指针的描述,错误的是?A. 指针可以指向任何类型的数据B. 指针可以被赋值为NULLC. 指针可以被赋值为0D. 指针不能被赋值为负数答案:D8. 在C语言中,以下哪个选项是正确的宏定义?A. #define PI 3.14B. #define PI = 3.14C. #define PI 3.14D. #define PI 3.14答案:A9. 下列关于C语言文件操作的描述,错误的是?A. 文件操作需要包含头文件stdio.hB. 文件指针是FILE类型的C. 文件操作函数需要以"fopen"开始D. 文件操作完成后需要调用"fclose"关闭文件答案:C10. 在C语言中,以下哪个关键字用于声明一个变量?A. intB. floatC. charD. all of the above答案:D二、填空题(每题2分,共10分)1. 在C语言中,使用________关键字可以定义一个函数。
2010年转升本选拔考试《C语言程序设计》试卷参考答案一、用C语言描述下列命题(共16分,每小题2分)1.(x*x)/(a*a)+(y*y)/(b*b)<12.a>0&&b>0&&c>0&&(a*a==b*b+c*c||b*b=a*a+c*c||c*c==a*a+b*b)3.a<60 || b<60 || c<604.char * fun(char *,char *);5.fopen(“abc.bin”, “rb”);6.char * p[4];7.struct date{int year;int month;int day;};8.abs(x-y)>=10 && abs(x-y)<30二、根据要求画图表示算法(共10分,每小题5分)2、三、程序阅读题(共24分,每小题4分)1.182.程序功能为统计数组中负数的个数,并求出所有负数的和。
3.k=5,n=44.2 1 13 2 15 3 25.6 8 116.2 5 9四、程序填空(共20分,每空2分)1.①x<=0 || x>=1000 ②x/10%10 或 (x-a*100)/102. ③j++ ④' \0'3. ⑤w+i+1,w+i+2 ⑥w[i-1]='\0' 或w[strlen(w)-1]= '\0'4.⑦a[i] ⑧a[i+1]5.⑨Person st[] ⑩st[k].name,x[i]五、程序设计题(共30分)1、参考解答:(8分)/*爱因斯坦曾出过这样一道数学题:有一条长阶梯,若每步跨2阶,最后剩下1阶;若每步跨3阶,最后剩下2阶;若每步跨5阶,最后剩下4阶;若每步跨6阶,最后剩下5阶;只有每步跨7阶,最后才正好1阶不剩。
编程求这条阶梯至少有多少阶*/#include<stdio.h>void main() {int x; //设共有x阶for(x=7;;x+=7)if(x%2==1 && x%3==2 && x%5==4 && x%6==5){printf("共有%d阶",x);break;}}2、参考解答:(10分)/*张三说李四在说谎,李四说王五在说谎,王五说张三和李四都在说谎,现问这三个人中到底谁说的是真话,谁说的是假话。
专升本C语言历年考试题及答案江西财经大学2005年专升本选拔考试《C语言程序设计》试卷(考试时间120分钟,总分100分)一、用C语言描述下列命题(共16分,每小题2分)1、a、b和c均为整型变量,a和b中有一个大于c。
2、数学公式:a acb24 2-+-b的C语言表达式(注:sqrt( )为开方函数)。
3、写出100内的自然数x,能被3或7整除的表达式。
4、写出判断字符变量ch是阿拉伯数字字符的表达式。
5、写出满足x<60或90≤x≤100的C语言表达式。
6、写出平面上的点(x,y)落在单位圆内的表达式。
7、数组p[10]的各元素用于保存指向char型的指针,写出该数组的定义。
8、有名为max的函数,其功能是对两个int型参数x、y进行计算,返回其中的较大者,写出该函数的说明部分。
二、根据要求画出流程图或N-S图(共10分,每小题5分)1、用流程图或N-S图表示以下算法。
输入x的值,按下列函数计算y的值,并输出y的值。
2、画出打印以下图案的算法流程图或N-S图。
&& && & && & & &三、程序阅读题(共20分,每小题4分)1、# include <stdio.h>void main( ) {int i,sum=0;for(i=1;i<=30;i++)if(i%3!=0) continue;else sum=sum+i;printf(“sum=%d\n”,sum);}请叙述上面程序的功能,并写出程序的运行结果。
2、void main( ) {int a,b,x=1,y=1;scanf("%d%d",&a,&b);if (a>0) x=x+y;if (a<b) x=2*y;else if (a==b) y=5;else y=x+y;printf("x=%d,y=%d\n",x,y);}假设输入为: 2 -3<CR>, 则程序运行后的输出结果为:3、void main() {int a[3][3]={2,4,6,8,10,12,14,16,18};int sum=0, i, j;for ( i=0; i<3; i++)for ( j=0; j<3; j++ )if (i==j) sum+=a[i][j];printf(“sum=%d\n”,sum) ;}请叙述上面程序的功能,并写出程序的运行结果。
2008年普通高等学校专升本全省统一考试计算机参考答案(理工类)一、单项选择题(每小题1分,共70分)二、填空题(每空1分,共30分)空号空号空号空号三、(10分)C++语言程序:#include<iostream>using namespace std;int main(){int x,y;cin>>x>>y;if (x<y){int temp=x; x=y; y=temp;}cout<<x<<"\t"<<y<<endl;return 0;}Basic语言程序:Input x,yIf x<y thentemp=x : x=y : y=temp end ifprint x,yend15602.C++语言程序:#include<iostream>using namespace std;int main(){int num;cin>>num;if (num % 2==0)num=num*num;elsenum=num-1;cout<<num<<endl;return 0;}Basic语言程序:Input numIf (num MOD 2==0) thennum=num*num elsenum=num-1end ifPrint numEnd四、(10分)C++语言程序:#include<iostream>using namespace std;int main(){ double x,fx;cin>>x;if (x<0) fx=-x;if (x>=0 && x<10) fx=2*x+7;if (x>=10) fx=5*x-16.0/7.0;cout<<fx<<endl;return 0;} Basic语言程序:Input xif (x<0) then fx=-xif (x>=0 and x<10) then fx=2*x+7 if (x>=10) then fx=5*x-16.0/7.0 print fxend五、(10分)C++语言程序:#include<iostream>using namespace std;int main(){ double sum,fz,t,fm; int n=500;sum=0; fz=2; fm=1;for(int i=1;i<=n;i++){ t=fz/fm;sum=sum+t;fm=fz+fm;fz=fz+2;}cout<<sum<<endl;return 0; }Basic语言程序:N=500Sum=2/1.0fz=2 .0 : fm=1.0 For i=2 to NFm=fm+fzFz=2*iT=fz/fmSum=sum+T Next iPrint "sum=";sum End六、(10分)C++语言程序:#include<iostream>using namespace std;int main(){ int i,j,n;do{cin>>n;}while (n<1 || n>9);for (i=1;i<=n;i++){ for (j=1;j<=30-i+1;j++)cout<<" ";for (j=1;j<=i;j++)cout<<j<<" ";for (j=i-1;j>0;j--)cout<<j<<" ";cout<<endl;}return 0;}Basic语言程序:For i=1 to nPrint tab(30-i);For j=1 to iPrint j;Next jFor j=i-1 to 0 step -1Print j;Next jPrintNext iEnd七、(10分)C++语言程序:#include<iostream>using namespace std;int main(){ int i,n=0;double score,sum=0;const int number=120;for (i=1;i<=number;i++){ cin>>score;if (score>=60) {n++;cout<<score<<"\t";if (n % 8==0) cout<<endl;}sum=sum+score;}cout<<endl;double ave=sum/number;cout<<"平均分="<<ave<<endl;cout<<"及格率="<<(n*1.0/number*100)<<"%"<<endl;return 0; }Basic语言程序:Dim score(120) as doubleSum=0 : Num=1For i=1 to 120 step 1Score(i)=Inputbox("请输入学生的成绩:") Next iFor i=1 to 120 step 1If (score(i)>=60) thenNum=Num+1Print spc(10);score(i);If (num mod 8=0) then printEnd ifSum=sum+score(i)Next iAverage=sum/numRot=num/120Print "平均分=";Average,"及格率=";RotEnd。
2010年转升本选拔考试《C 语言程序设计》试卷一、用C 语言描述下列命题(共16分,每小题2分)1.一椭圆方程为: 12222=+by a x ,写出平面上点p(x,y)落在椭园内的条件。
2.写出a ,b ,c 三个整数能作为直角三角形三边的条件。
3.a 、b 和c 均为整型变量,它们中至少有一个小于60,请用表达式进行描述。
4.写出名为fun 的函数声明语句,该函数用于对传入的二个字符串进行比较,并返回较大串的地址。
5.以只读方式打开名为abc.bin 的二进制文件,请写出相关的函数调用语句。
6.定义一个数组p ,该数组包含4个元素,它的每一元素均用于保存整型量的地址。
7.写出定义数据类型date 的语句,类型date 用于表示日期,包括年、月、日。
8.写出使得条件10≤|x -y|<30不成立的C 语言表达式。
二、根据要求画图表示算法(共10分,每小题5分)1.y 是关于x 的函数,函数表示如下:请画出根据输入的x 值来计算y 的流程图(或N-S 图)。
2.从键盘输入10个数,现要找出其中最大数并输出最大数在10个数中序号,请画出相应的算法流程图(或N-S 图)。
三、程序阅读题(共24分,每小题4分)1.写出以下程序的运行结果。
#include<stdio.h>void main(){int a[ ]={2,4,6,8,10};int y=0,x,*p;p=&a[1];for(x=0; x<3; x++)y+=*(p+x);printf("%d\n",y);}2.阅读以下程序,请描述该程序的功能。
#include<stdio.h>void main(){int a[10]={1,-3,0,-5,10,6,-8,9,6,-7};int i,s=0,count=0;for(i=0; i<10; i++)if(a[i]<0){s+=a[i], count++;}else continue;printf ("s= %d, count=%d\n", s ,count);}0<x <1 1≤x <2 2≤x <3 3≤x <4⎪⎪⎩⎪⎪⎨⎧-+---=17412132x x x x x x y3.阅读以下程序,写出程序的运行结果。
专升本c语言历年试题及答案文库专升本C语言历年试题及答案文库一、选择题1. 下列关于C语言的描述中,错误的是()。
A. C语言是一种高级编程语言B. C语言可以直接被计算机执行C. C语言具有结构化的特点D. C语言具有丰富的库函数答案:B2. 在C语言中,用于定义字符型变量的关键字是()。
A. intB. charC. floatD. double答案:B二、填空题1. C语言中,用于定义字符串的字符数组的声明方式是:char str[20] = "Hello"; 其中数组的长度是()。
答案:202. 在C语言中,使用()关键字可以定义一个函数。
答案:void 或者 int 或者其他类型三、简答题1. 简述C语言中指针的概念。
答案:指针是一种变量,它存储了另一个变量的内存地址。
通过指针,程序可以间接访问和修改变量的值。
2. 解释C语言中的数组和指针的关系。
答案:在C语言中,数组名可以被当作指向数组第一个元素的指针。
因此,数组和指针密切相关,指针可以用来遍历数组。
四、编程题1. 编写一个C语言程序,实现求两个整数的和。
答案:```c#include <stdio.h>int main() {int num1, num2, sum;printf("Enter two numbers: ");scanf("%d %d", &num1, &num2);sum = num1 + num2;printf("The sum is: %d\n", sum);return 0;}```2. 编写一个C语言程序,实现字符串的反转。
答案:```c#include <stdio.h>#include <string.h>int main() {char str[100], reversed[100];printf("Enter a string: ");gets(str);for (int i = 0; str[i] != '\0'; i++) {reversed[i] = str[strlen(str) - 1 - i];}reversed[strlen(str)] = '\0';printf("Reversed string: %s\n", reversed);return 0;}```五、论述题1. 论述C语言在现代编程语言中的地位和作用。
专升本C语言历年考试题及答案江西财经大学2005年专升本选拔考试《C语言程序设计》试卷(考试时间120分钟,总分100分)一、用C语言描述下列命题(共16分,每小题2分)1、a、b和c均为整型变量,a和b中有一个大于c。
2、数学公式:a acb24 2-+-b的C语言表达式(注:sqrt( )为开方函数)。
3、写出100内的自然数x,能被3或7整除的表达式。
4、写出判断字符变量ch是阿拉伯数字字符的表达式。
5、写出满足x<60或90≤x≤100的C语言表达式。
6、写出平面上的点(x,y)落在单位圆内的表达式。
7、数组p[10]的各元素用于保存指向char型的指针,写出该数组的定义。
8、有名为max的函数,其功能是对两个int型参数x、y进行计算,返回其中的较大者,写出该函数的说明部分。
二、根据要求画出流程图或N-S图(共10分,每小题5分)1、用流程图或N-S图表示以下算法。
输入x的值,按下列函数计算y的值,并输出y的值。
2、画出打印以下图案的算法流程图或N-S图。
&& && & && & & &三、程序阅读题(共20分,每小题4分)1、# include <stdio.h>void main( ) {int i,sum=0;for(i=1;i<=30;i++)if(i%3!=0) continue;else sum=sum+i;printf(“sum=%d\n”,sum);}请叙述上面程序的功能,并写出程序的运行结果。
2、void main( ) {int a,b,x=1,y=1;scanf("%d%d",&a,&b);if (a>0) x=x+y;if (a<b) x=2*y;else if (a==b) y=5;else y=x+y;printf("x=%d,y=%d\n",x,y);}假设输入为: 2 -3<CR>, 则程序运行后的输出结果为:3、void main() {int a[3][3]={2,4,6,8,10,12,14,16,18};int sum=0, i, j;for ( i=0; i<3; i++)for ( j=0; j<3; j++ )if (i==j) sum+=a[i][j];printf(“sum=%d\n”,sum) ;}请叙述上面程序的功能,并写出程序的运行结果。
2008年转升本选拔考试《C 语言程序设计》试卷答案
一、用C语言描述下列命题(本题共8小题,每小题3分,共24分)
1、 y 为int 型,满足能同时被3,5整除的表达式。
y%3==0&&y%5==0
2、把下列数学表达式转换为C 语言表达式:()21211
wL R + 1/sqrt(1/(R*R)+1/((w*L)*(w*L)))
2、 表示ch 不是小写英文字母的表达式。
ch>=’a ’&&ch<=’z ’
4、条件10〈|a-b|<20的C 语言表达式。
fabs(a-b)>10&&fabs(a-b)<20
5、x 、y 和z 均为int 型,x 和y 中仅有一个小于z 。
x<z)&&(y>=z)||(x>=z)&&(y<z) 或 (x<z)+(y<z)==1
6、定义一个数组a[10],其数组元素为指向float 的指针。
float * a[10]
7、定义一个交通信号灯(Transportation_light )的枚举类型及其变量light 。
,其中列举的常量有红、黄、绿(red,yellow,green )三色控制灯。
enum Transportation_light { red,yellow,green } light;
8、写出一个函数 f1()的说明部分,函数的返回值为指向int 数据的指针。
int *f1()
二、根据要求画出NS图流或流程图(本题共1小题,每小题6分,共6分) 1、有一分数序列:
12,23 ,35,58,813
…
试求前10项之和。
三、程序阅读题(本题共4小题,每小题5分,共20分)
1程序运行后的输出结果为: 1 2
2 4
2程序运行后的输出结果为:f(6)=0
3 程序运行后的输出结果为: 105,28,342.50
4程序运行后的结果为:Teac
四、程序填空(本题共3小题,每小题6分,共18分)
1、①__b=I!=20?i+1:0___ ②___c____
2、①___posi=i_____ ②___a[j]>a[posit]___ ③ __sort[s,10]_____
3、①__**p或(*p)[0]或p[0][0]__ ②__*(*p+j)_ ③ ___arr___
五、程序设计题(本题共4小题,共32分)
1#include <stdio.h>
void main()
{
int year;
for(year=2000;year<2100;year++)
if(year%4==0&&year%100!=0||year%400==0)
printf("%d ",year);
}
2、#include <stdio.h>
void main()
{ int i,j,k,m,z,sum,yz[100];
for(m=1;m<1000;m++)
{ k=m/2;
i=0;
sum=0;
for(j=1;j<=k;j++)
if(m%j==0)
{ yz[i]=j;
sum+=yz[i++];
}
if(sum==m)
{ printf("\nm=%d\nyin zi=",m);
while(i!=0)
printf("%d ",yz[--i]);
}
}
}
4、编一程序,将字符串的第m个字符开始的全部字符复制到另一个字符串中。
要求在主函数中输入字符串及m值并输出结果,在被调用函数中完成复制。
(14分)#include <stdio.h>
#include <string.h>
void subcopy(char *str, char *substr, int n)
{ char *ch_p;
ch_p=str+n-1;
while(*ch_p)
{ *substr=*ch_p;
substr++;
ch_p++;
}
}
void main()
{ int m;
char string[120],substring[120];
printf("\nstring=");
gets(string);
printf("\nm=");
scanf("%d",&m);
subcopy(string,substring,m);
puts(substring);
}。