上海市高等学校计算机等级考试试卷二级C语言程序设计A卷
2010年上海市高等学校计算机等级考试试卷二级C语言程序设计
请按题中的功能要求,编写程序并能得到正确的结果。将结果(包括 D_4_1.C文件和D_4_1.EXE文件)保存到指定目录中。 功能说明:编写程序,实现以下成绩处理功能(输出格式参见示例): (1)输入学生数n和n个成绩(整数类型,数组名记为a,假设 1≤n≤50); (2)统计n个学生中及格(≥60分)人数及其平均成绩(保留一位小 数); (3)统计n个学生中不及格(<60分)人数及其平均成绩(保留一位小 数)。 运行示例: 输入:8 70 99 50 88 53 48 60 78 输出:Pass:5,79.0 Fail:3,50.3 2.编程题2 编程要求: 请按题中的功能要求,编写程序并能得到正确的结果。将结果(包括 D_4_2.C文件和D_4_2.EXE文件)保存到指定目录中。 功能说明:编写程序,通过以下步骤验证一个正整数是否符合特定的规 则: (1)输入一个4位正整数n,将n分拆成a与b,a为n的低2位,b为n的高2 位; (2)计算a的所有因子之积,记为s(当1≤i<a时,如果a是i的倍数, 则i是a的因子); (3)如果s的低2位等于b,则输出"Yes",否则输出"No"; (4)将a,b,s的值保存到文本文件"D42.TXT"中。 输出格式参见以下示例。 运行示例1: 输入:4412 输出:12: 1*2*3*4*6=144, Yes 运行后文件内容:12 44 144 说明:输入数为4412(对应n)分拆为12(对应a)和44(对应b),12 的因子为1、2、3、4和6,累乘值为144(对应s),s的低2位和b相等, 输出"Yes"。a,b,s的值保存在文件中。
D. swap( p, q ); 13. 若有结构体定义及初始化语句: struct node { int num; float score; } stu[2]= {101,91.5,102,92.5},*p=stu; 则表达式p->score的结果是:_______ 。 A. 101 B. 91.5 C. 102 D. 92.5 14. 设有定义FILE *fp;将整数n以文本方式写到fp文件的语句: _______。 A. fp = fopen( "file.txt", "w" ); B. fprintf( fp, "%d", n ); C. fwrite( &n, sizeof(int), 1, fp ); D. fclose(fp); 15. 假定建立了如图6-14所示的链表结构,指针p指向如图6-14所示的 结点,则将r所指结点直接插入p所指结点后的语句是:_______。
2019年上海市高等学校计算机等级考试试卷二级C语言程序设计10页word
2019年上海市高等学校计算机等级考试试卷二级 C语言程序设计(本试卷考试时间 120 分钟)一、单选题 ( 本大题 15 道小题,每小题 1 分,共 15 分),从下面题目给出的A、B、C、D四个可供选择的答案中选择一个正确答案。
1. 以下C程序中预处理命令写法正确的是:答案: DA. #include (stdio.h)B. #include [stdio.h]C. #include {stdio.h}D. #include <stdio.h>2. 设有变量定义语句char a; 则下面的赋值语句中 ( ) 是正确的。
答案: AA. a='&';B. a="&";C. a=' ' ';D. a='16' ;3. 设有char ch; 与语句“ch=getchar();”等价的语句是:答案: DA. printf("%c",ch);B. printf("%c",&ch);C. scanf("%c",ch);D. scanf("%c",&ch);4. int a=2, b=5;则表达式21%9/(float)a+4/b*b的运算结果为( )。
答案: CA. 2B. 1C. 1.5D. 05. 能正确表示逻辑关系"a>=10 或 a<=0"的C语言表达式是( )。
答案: CA. a>=10 or a<=0B. a<=0|a>=10C. a<=0||a>=10D. a>=10 && a<=06. 设有int n=60;写出下列语句的运行结果switch (n/10)case 6: printf("@");break;case 5: printf("#");default: printf("$");答案: DA. @#$B. #$C. $D. @7. 设有int i; 以下语句中,循环次数为100次的语句是:答案: DA. for ( i=0; i<=100; i++ )B. for ( i=0; i<99; i++ )C. for ( i=1; i<99; i++ )D. for ( i=0; i<100; i++ )8. C程序中,用于提前结束本次循环、进行下一次循环的语句是( )。
06上海市计算机二级考试C语言
2006年上海市高等学校计算机等级考试试卷二级 (C 程序设计)(本试卷答卷时间为120分钟)试题一(28分,每小题4分)解答下列各小题,把解答写在答卷纸的对应栏内。
⑴ 设a ,b ,c 为整型并且a=3,b=5,c=7;写出下面表达式的值。
(注:对每小题求值时a=3,b=5,c=7保持不变)① c>b>a ② c%=a-b%1 ③ b/=c-b%4 ④ ++a==--b⑵ 简述break 和continue 语句在使用场合和功能方面的区别。
⑶ 执行下列程序后的输出结果是什么?void main() {int a, b, c;a=b=1;c=a++,b++,++b;printf("%d,%d,%d\n",a,b,c);}⑷ 执行下列语句后的输出结果是什么?#include <string.h>char s1[]="12345", s2[]="1234";printf("%d\n",strlen(strcpy(s1,s2)));printf("%s\n",s1+s2);⑸ 写出数学计算式|1|72sin x y +=的C 语言表达式。
⑹ 写出宏定义s(x,y)的含义,执行下列程序后的输出结果是什么?#define s(x,y) x=x+y,y=x-y,x=x-yvoid main() {int a=12, b=9;s(a,b);printf("a=%d\tb=%d\n",a,b);}⑺ 用文字描述以下程序段所完成的功能:FILE *fr, fw;fr=fopen("a.txt", "r")fw=fopen("b.txt","w");while(!feof(fr))fputc(fgetc(fr),fw);fclose(fr);fclose(fw);试题二(12分,每小题6分)阅读下列程序,把程序的输出结果写在答卷纸的对应栏内。
上海市计算机二级考试c语言答案
上海市计算机二级考试c语言答案1. 以下哪个是C语言中的关键字?A. intB. integerC. stringD. var答案:A2. C语言中,用于定义一个整型变量的关键字是?A. intB. floatC. charD. double答案:A3. 在C语言中,以下哪个运算符用于比较两个值是否不相等?A. ==B. !=C. <=D. >=答案:B4. C语言中,哪个函数用于计算并返回两个整数的和?A. sum(int a, int b)B. add(int a, int b)C. plus(int a, int b)D. calculate(int a, int b)答案:B5. 若有以下C语言代码段:```cint a = 10;int b = 20;a = b;```执行后,变量a的值是多少?A. 10B. 20C. 30D. 0答案:B6. 在C语言中,以下哪个函数用于输出字符串?A. printf()B. scanf()C. puts()D. get()答案:C7. 若有以下C语言代码段:```cint x = 5;int y = 3;int z = x + y;```执行后,变量z的值是多少?A. 5B. 8C. 3D. 0答案:B8. 在C语言中,以下哪个关键字用于定义一个函数?A. functionB. defineC. defD. void答案:D9. 在C语言中,以下哪个运算符用于计算两个数的乘积?A. *B. /C. %D. +答案:A10. 若有以下C语言代码段:```cint main() {int a = 10;if (a > 5) {printf("a is greater than 5"); }return 0;}```程序运行后,控制台将输出什么?A. a is greater than 5B. a is less than 5C. NothingD. Error答案:A。
上海市高等学校计算机等级考试试卷二级C语言程序设计
20XX年上海市高等学校计算机等级考试试卷二级 C语言程序设计(本试卷考试时间 120 分钟)一、单选题 ( 本大题 15 道小题,每小题 1 分,共 15 分),从下面题目给出的A、B、C、D四个可供选择的答案中选择一个正确答案。
1. 以下C程序中预处理命令写法正确的是:答案: DA. #include (stdio.h)B. #include [stdio.h]C. #include {stdio.h}D. #include <stdio.h>2. 设有变量定义语句char a; 则下面的赋值语句中 ( ) 是正确的。
答案: AA. a='&';B. a="&";C. a=' ' ';D. a='16' ;3. 设有char ch; 与语句“ch=getchar();”等价的语句是:答案: DA. printf("%c",ch);B. printf("%c",&ch);C. scanf("%c",ch);D. scanf("%c",&ch);4. int a=2, b=5;则表达式21%9/(float)a+4/b*b的运算结果为( )。
答案: CA. 2B. 1C. 1.5D. 05. 能正确表示逻辑关系"a>=10 或 a<=0"的C语言表达式是( )。
答案: CA. a>=10 or a<=0B. a<=0|a>=10C. a<=0||a>=10D. a>=10 && a<=06. 设有int n=60;写出下列语句的运行结果switch (n/10){case 6: printf("@");break;case 5: printf("#");default: printf("$");}答案: DA. @#$B. #$C. $D. @7. 设有int i; 以下语句中,循环次数为100次的语句是:答案: DA. for ( i=0; i<=100; i++ )B. for ( i=0; i<99; i++ )C. for ( i=1; i<99; i++ )D. for ( i=0; i<100; i++ )8. C程序中,用于提前结束本次循环、进行下一次循环的语句是( )。
上海市高等学校计算机等级考试(二级c语言)
上海市高等学校计算机等级考试(二级)《 C程序设计》考试大纲一、考试性质上海市高等学校计算机等级考试(原名:上海市普通高校学生计算机应用知识与应用能力等级考试)是上海市教育委员会组织的全市高校统一的教学考试,是检测和评价高校计算机应用基础知识教学水平和教学质量重要依据之一。
该项考试旨在规范和加强上海高校的计算机教学工作,提高学生的计算机应用能力。
考试对象主要是上海市高等学校学生,考试每年举行一次,当年的十月下旬、十一月上旬的星期六或星期日。
凡考试成绩达到合格者或优秀者,由上海市教育委员会发给相应的证书。
本考试由上海市教育委员会统一领导,聘请有关专家组成考试委员会,委托上海教育考试院组织实施。
二、考试目标C语言是当前常用的,简洁、高效、功能丰富的程序设计语言,是计算机应用人员和软件开发人员的基本程序设计工具。
学生通过该课程的学习,应能了解、掌握C语言的概念、语法和使用它进行编程的方法,并能上机调试运行解决简单实际问题。
《 C程序设计》的考试目标是测试考生掌握C语言知识的程度和综合运用语言知识进行程序设计的能力。
三、考试细则考试方法为书面闭卷考试。
考试时间为 120分钟。
试卷总分为100分。
试卷采用简答题、写程序结果题、改错题、编程题、填充题等形式,答案写在答题纸上,采用人工阅卷方式。
若答案写在试卷上则无效。
四、试卷结构参考样式序号题型题量计分考核目标一简答题7 题28 分基本概念二写程序结果题2 题12 分程序理解语义知识三改错题 2 题12 分语法知识语义知识程序结构四编程题 2 题18 分程序设计五填充题 2 题30 分综合应用合计15 题100 分五、考试内容、要求要点和考点序号内容要点和考点1 C 程序的组成、结构及书写规则C 语言源程序结构· 预处理命令· 外部数据定义· 函数 main 和其它函数定义程序的书写格式· 基本词法单位、标识符 / 常量 / 运算符等构成规则· 程序的书写格式与风格C 语言程序设计步骤· Turbo C 编程环境的操作使用· 程序的编辑 / 编译 / 连接 / 调试 / 运行2 基本数据类型C 语言数据类型·基本类型、构造(复合)类型、指针类型、空类型C 语言常量· 常量和变量· 整型、实型(单 / 双精度)、字符型和字符串常量的表示方法C 语言变量· 各种类型变量的定义和说明· 变量的初始化3 基本运算和表达式运算符· 运算符种类、功能、目数、优先级、结合性和副作用算术运算· 自动类型转换规则关系和逻辑运算· 关系和逻辑运算规则· 逻辑运算的优化规则位运算· 位运算规则和简单位运算赋值运算· 赋值运算中自动类型转换规则(以左值类型为准转换)· 复合赋值其他运算· 条件、逗号、求存储空间大小运算表达式· 表达式组成规则、各类表达式· 描述计算过程 / 条件判断的表达式· 各类型数据混合运算中求值顺序· 表达式运算中的隐式类型转换和强制类型转换· 基本运算执行顺序、表达式结果类型4 语句基本语句及顺序结构语句· 定义 / 说明语句,表达式语句,空语句,复合语句、函数调用语句选择结构语句· 描述条件和情况的 if , switch 语句· 选择语句嵌套循环结构语句· 描述循环执行的 while , do-while , for 语句· 循环语句嵌套转移语句· 改变程序流程执行次序的 break ,continue , goto , return 语句5 数组一维数组· 一维数组定义、引用和初始化二维数组· 二维数组定义、引用和初始化字符数组和字符串· 字符数组定义、引用和初始化· 字符串结束标志、初始化、字符串处理函数6 函数定义和调用函数的定义方法· 函数原型、函数名、形式参数、函数返回值、函数体——函数执行过程的描述函数类型和返回值· 不同类型函数定义、缺省类型、空类型函数传值调用· 形参、实参及其参数单向传递函数说明· 函数原型及作用· 用户定义函数说明· 系统库函数说明——用头文件包含函数参数类型和函数的传址调用· 传值调用和传址调用· 数组名作为函数参数函数嵌套调用和递归调用· 递归函数的定义和调用· 递归函数的执行过程7 变量的存储类别和编译预处理变量存储类· 自动、寄存器、外部及内部 / 外部静态各种别的概念变量类型变量的作用域· 在函数外部、函数内部、复合语句内定义变量的作用域变量的生存期和有效期· 自动、外部及内部 / 外部静态变量的生存期和有效期编译预处理· 文件包含和宏定义8 指针指针概念· 地址、指针、变量的指针和指向变量的指针变量的含义和表示指针与地址运算符· 取地址运算符 & 和取内容运算符 *用指针处理数组、字符串· 数组、字符串的指针以及指向数组、字符串的指针变量· 通过指针引用以上各类型数据用指针作函数参数· 通过指针类型参数传递计算结果,改变主调用函数实参值指针的高级功能· 函数指针——返回指针值的的指针函数· 指针数组、指向指针的指针· main 函数的命令行参数简介9 结构体与共用体结构体类型数据· 结构定义方法和引用方法· 结构体变量初始化结构体数组· 结构体数组定义、初始化结构体指针变量·指向结构体类型变量的指针变量· 指向结构体类型数组的指针变量链表· 用指针和结构体构成链表、单向链表的建立、输出、删除与插入共用体类型数据· 共用体类型数据的定义和引用枚举· 枚举的概念与表示10 文件基本概念· 文件类型——文本文件 / 二进制文件、文件指针文件操作· 文件的打开和关闭· 定位·文件的读/ 写。
2009年上海市高等学校计算机等级考试试卷及答案A卷
2009年上海市高等学校计算机等级考试试卷及答案A卷2009年上海市高等学校计算机等级考试试卷二级 C语言程序设计( A 卷)一、单选题1.执行下列语句序列后,不可能出现的运行结果是___C______。
int n;scanf( "%d", &n);switch ( n ){case 1:case 2: putchar('X');case 3:case 4: putchar('Y'); break;default: putchar('Z');A. 显示:zB. 显示:xyC. 显示:xD. 显示:y2.设a,b为整型变量, 且二者均不为0, 以下关系表达式中恒成立的是__C____。
A. a/b*b/a==1B. a/b*b==aC. a*b/a==bD. a*b/ a*b ==13.设有定义:int x=10,y=20,z=30; 则执行下列语句后的结果是___B____。
if ( x>y ) z=x;x=y; y=z;printf("%d,%d,%d",x, y, z );A. 20,30,20B. 20,30,30C. 20,30,10D. 10,20,304.下列程序的输出结果是__B___。
main(){int a = 011;printf( "%d\", ++a );}A. 9B. 10C. 11D. 125.设 x, y 和 z 是int型变量,且 x=3, y=4, z= 5,则下面表达式中值为0的是__B__。
A. !(x<y)&&!z||1< bdsfid="110" p=""></y)&&!z||1<>B. x==y&&y!=zC.x||y+z&&y-zD. y&&’y’6.以下所列的各函数声明中,正确的是___D____。
上海市c语言二级计算机试题及答案
上海市c语言二级计算机试题及答案一、单项选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 下列哪个选项是正确的C语言变量声明?A. int a, b;B. int a; b;C. int a; int b;D. int a, b;答案:D3. 在C语言中,以下哪个运算符用于执行算术运算?A. %B. &&C. ==D. +答案:D4. 在C语言中,以下哪个函数用于将字符串从源复制到目标?A. strcpy()B. strcat()C. strcmp()D. strlen()答案:A5. 下列哪个选项是正确的C语言函数定义?A. int function(int x) { return x; }B. int function(int x) { return x; }C. int function(int x) { return x; }D. int function(int x) { return x; }答案:B6. 在C语言中,以下哪个关键字用于声明一个函数?A. intB. voidC. returnD. function答案:B7. 下列哪个选项是正确的C语言数组声明?A. int array[5];B. int array[];C. int [5] array;D. int array;答案:A8. 在C语言中,以下哪个关键字用于声明一个指针?A. *B. &C. %D. #答案:A9. 在C语言中,以下哪个函数用于计算字符串的长度?A. strcpy()B. strcat()C. strcmp()D. strlen()答案:D10. 下列哪个选项是正确的C语言函数返回类型声明?A. void function()B. int function()C. function()D. void function答案:B二、填空题(每题2分,共10分)1. 在C语言中,使用________关键字可以定义一个函数。
上海计算机二级c语言试题及答案
上海计算机二级c语言试题及答案一、选择题(共20题,每题2分,共40分)1. 在C语言中,以下哪个不是关键字?A. intB. forC. floatD. break2. 下面关于C语言标识符的说法,哪个是正确的?A. 标识符可以以数字开头B. 标识符可以包含特殊字符C. 标识符可以与C语言的关键字重名D. 标识符长度可以超过32个字符3. 下面哪个运算符的优先级最高?A. +B. =C. *D. /4. 在C语言中,以下哪个不是正确的数组声明?A. int numbers[5];B. float values[] = {1.0, 2.0, 3.0};C. char name[10] = "John";D. double values[3] = {1.0, 2.0, 3.0};5. 下面哪个函数用于从标准输入获取一个字符?A. printfB. scanfC. getcharD. puts(以下省略15题)二、编程题(共2题,每题30分,共60分)1. 编写一个程序,输入一个整数n,输出n的阶乘。
要求使用循环语句实现。
输入示例:5输出示例:5的阶乘为: 1202. 编写一个程序,输入一个整数n,输出n以内的所有素数。
要求使用函数判断一个数是否为素数,并在主函数中调用该函数进行输出。
输入示例:10输出示例:2 3 5 7三、简答题(共3题,每题20分,共60分)1. 请简述C语言中的指针的概念,并举例说明指针的使用。
2. C语言中的结构体可以用来存储多个不同类型的数据,简述结构体的定义和使用方法。
3. 请简述C语言中的内存管理机制,并说明动态内存分配的方式和释放内存的方法。
四、补全程序(共2题,每题15分,共30分)1. 补全下面的程序,实现将字符串s2复制到字符串s1的功能。
```c#include<stdio.h>void copyString(char *s1, char *s2) {// 请在此处补全代码}int main() {char str1[100], str2[100];printf("请输入字符串s2: ");scanf("%s", str2);copyString(str1, str2);printf("复制后的字符串s1为: %s\n", str1);return 0;}```2. 补全下面的程序,实现将整数数组a中的元素逆序排列,并输出逆序后的数组。
2022年上海市高等学校计算机等级考试试卷二级C语言程序设计A卷
上海市高等学校计算机等级考试试卷二级C语言程序设计(A 卷)(本试卷考试时间120 分钟)一、单项选择题( 本大题10 道小题,每题1 分,共10 分),从下面题目给出旳A、B、C、D四个可供选择旳答案中选择一种对旳答案。
1.在一种C 语言源程序中,main()函数旳位置_________。
答案:CA.必须在最前面B.必须在其他函数之前C.可以在任意位置D.必须在最背面2. 设有变量定义:int a[ ]={5, 6, 1, 3, 7}, c, i;当执行完语句:for(i=c=0; i<5; i++){ if(a[i]%3 = =0)continue;c++;}之后,c旳值是_____。
答案:CA.1B.2C.3D.43. 如下程序运行成果为_______#define PII 3#define S(x) PII*x*xmain(){ int a=1, b=2, c;c = a+b;printf("%d\n",S(c));}答案:BA.9B.27C.7D.104.若有变量定义:int a[4], *p=a; 则如下对数组a旳元素不对旳旳引用是_____。
答案:DA.*aB.*(p+1)C.p[1]D.a[4]5.设有变量定义:int d[50], *p=&d[0]; 下面体现式中________旳计算成果为int类型旳数值(非地址)。
答案:DA.p+=1B.p++C.&d[2]D.p-d6.为了判断两个字符串s1和s2与否相等,应当使用_____。
答案:DA.if (s1==s2 )B.if (s1 = s2 )C.if ( strcpy (s1,s2 ) )D.if ( strcmp( s1,s2) == 0 )7.设有变量定义int n; char str[80];与函数调用:n=hex2dec(str);则函数hex2dec对旳旳函数阐明应当是_______。
上海计算机考试二级c试题及答案
上海计算机考试二级c试题及答案一、单项选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A2. 若有以下定义:int a=2, b=3; 则执行语句 a+=b; 后,变量a的值是多少?A. 5B. 4C. 3D. 2答案:A3. 在C语言中,以下哪个函数用于计算字符串的长度?A. strlen()B. strcpy()C. strcat()D. strcmp()答案:A4. 若有以下定义:float x=1.23456; 则执行语句 printf("%f", x); 后,输出结果的整数部分是多少?A. 1B. 2D. 0答案:A5. 在C语言中,以下哪个运算符用于计算两个数的差?A. +=B. -C. *D. /答案:B6. 若有以下定义:int a[5] = {1, 2, 3, 4, 5}; 则执行语句a[2]=6; 后,数组a的第三个元素的值是多少?A. 6B. 3C. 4D. 5答案:A7. 在C语言中,以下哪个函数用于打开文件?A. fopen()B. fclose()C. remove()D. rename()答案:A8. 若有以下定义:char c='A'; 则执行语句 printf("%d", c); 后,输出结果是多少?A. 65B. 97C. 66答案:A9. 在C语言中,以下哪个关键字用于声明一个函数?A. intB. voidC. returnD. struct答案:B10. 若有以下定义:int x=10; 则执行语句 x=x+10; 后,变量x的值是多少?A. 20B. 11C. 21D. 10答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________关键字可以定义一个变量的存储类型为静态存储。
2020年上海市高等学校信息技术水平考试试卷二级C程序设计A场
2020年上海市高等学校信息技术水平考试试卷二级 C程序设计(A 场)(本试卷考试时间 120 分钟)一、单选题 ( 本大题 10 道小题,每小题 1.5 分,共 15 分),从下面题目给出的A、B、C、D四个可供选择的答案中选择一个正确答案。
1.执行下列语句序列后,x,y,z结果正确的是:(_____)。
int x=7,y=9,z; z=1+x++; y=++z+3;A.7,10,8B.8,12,9C.7,10,9D.8,12,82.下列描述中,正确的是:(_____)。
A.函数可以直接调用其他函数内部定义的变量。
B.函数内部定义变量时必须进行初始化。
C.函数不可以直接调用其他函数内部定义的变量。
D.函数内部定义变量时若没有进行初始化,则其值是固定的。
3.以下各个选项中,与语句“if (a>b) k=0; else k=1;”功能等价的是:(_____)。
A.k=(a>b)?1:0;B.k=a>b;C.k=(a<=b)?0:1;D.k=(a<=b)?1:0;4.以下各个选项中,与for(表达式1; ;表达式3)等价的是:(_____)。
A.for(表达式1; 表达式1; 表达式3)B.for(表达式1; 表达式3; 表达式3)C.for(表达式1; 0; 表达式3)D.for(表达式1; 1; 表达式3)5.有关C语言数组的下列定义中,错误的是:(_____)。
A.int a[5]={2,3,4,1,4};B.int a[6]={0};C.int a[2][]={1,2,3,4};D.int a[][3]={1,2,3,2,3};6.在C语言中,关于函数定义和函数调用,以下各个选项中,正确的是:(_____)。
A.函数定义中不可以定义另一个函数,被调用函数可以调用另一个函数B.函数定义中可以定义另一个函数,被调用函数不可以调用另一个函数C.函数定义中可以定义另一个函数,被调用函数也可以调用另一个函数D.函数定义中不可以定义另一个函数,被调用函数也不可以调用另一个函数7.设有如下的结构体类型定义,则以下选项中,正确的是:(_____)。
2020年上海市高等学校信息技术水平考试试卷二三级Python程序设计及应用A场
2020年上海市高等学校信息技术水平考试试卷二三级 Python程序设计及应用(A 场)(本试卷考试时间 150 分钟)一、单选题 ( 本大题 10 道小题,每小题 1.5 分,共 15 分),从下面题目给出的A、B、C、D四个可供选择的答案中选择一个正确答案。
1.已知 x, y = 1, 2,那么执行x, y = y, x 之后,x的值为__________。
A.1B.(1, 2)C.不符合语法,报错D.22.已知 x = 'abcdefg',若要得到'defgabc'结果,应使用表达式___________________。
A.x[3:] + x[:3]B.x[:3] + x[:3]C.x[3:] + x[3:]D.x[:3] + x[3:]3.执行结果为[1, 2, 3, 1, 2, 3, 1, 2, 3] 的表达式是______________________。
A.[1,2,3]+ [1,2,3]B.['1','2','3']+ ['1','2','3']+ ['1','2','3']C.[1, 2, 3]**3D.[1, 2, 3]*34.表达式 (1, 2, 3)+(4, 5) 的值为__________________。
A.(5,7,3)B.(1, 2, 3, 4, 5)C.(1,6,8)D.(15,)5.下列关于字典对象方法的描述,不正确的是________。
A.方法get()可以获取指定“键”对应的“值”,并且可以在指定“键”不存在的时候返回指定值,如果不指定则返回NoneB.方法items()返回字典中的“键-值对”列表C.方法keys()返回字典的“键”列表D.“字典[键]”的表达式(例如dict['name'])的结果与方法get()的结果完全相同6.Python的分支语句可使用关键字_______。
2020年上海市高等学校信息技术水平考试试卷二三级C程序设计及应用A场
2020年上海市高等学校信息技术水平考试试卷二三级 C程序设计及应用(A 场)(本试卷考试时间 120 分钟)一、单选题 ( 本大题 1 道小题,每小题 1 分,共 1 分),从下面题目给出的A、B、C、D四个可供选择的答案中选择一个正确答案。
1.试卷说明:(1)本试卷包括3个专题,考生选择任一专题完成答卷。
(2)每个专题包括6个问题,建议考生依次完成各个问题。
(3)本试卷考试成绩分为:二级合格、二级优秀、三级合格、三级优秀4个等级。
(4)考生完成专题中的前3问,达到二级合格标准;完成前4问,达到二级优秀标准;完成前5问,达到三级合格标准;完成到第6问,达到三级优秀标准。
1. 专题1编程要求:C:\素材\专题1-大整数运算.pdf提供原始文件:C:\KS\bigint_2.c2. 专题2编程要求:C:\素材\专题2-图书管理.pdf提供原始文件:C:\KS\book_2.c,C:\KS\, C:\KS\3. 专题3编程要求:C:\素材\专题3-计算24点.pdf提供原始文件:C:\KS\k24p*.*此外,提供公共素材,供必要时查询C:\素材\素材-常用库函数.pdfC:\素材\程序代码编写规范.pdfA.专题1-大整数运算B.专题2-图书管理C.专题3-计算24点D.二、操作题素材.zip试卷说明:(1)本试卷包括3个专题,考生选择任一专题完成答卷。
(2)每个专题包括6个问题,建议考生依次完成各个问题。
(3)本试卷考试成绩分为:二级合格、二级优秀、三级合格、三级优秀4个等级。
(4)考生完成专题中的前3问,达到二级合格标准;完成前4问,达到二级优秀标准;完成前5问,达到三级合格标准;完成到第6问,达到三级优秀标准。
以下三个专题中任选一个专题作答1. 专题1编程要求:C:\素材\专题1-大整数运算.pdf提供原始文件:C:\KS\bigint_2.c2. 专题2编程要求:C:\素材\专题2-图书管理.pdf提供原始文件:C:\KS\book_2.c,C:\KS\, C:\KS\3. 专题3编程要求:C:\素材\专题3-计算24点.pdf提供原始文件:C:\KS\k24p*.*此外,提供公共素材,供必要时查询C:\素材\素材-常用库函数.pdfC:\素材\程序代码编写规范.pdf。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
2012年上海市高等学校计算机等级考试试卷二级 C语言程序设计( A 卷)(本试卷考试时间 120 分钟)一、单选题 ( 本大题 10 道小题,每小题 1 分,共 10 分),从下面题目给出的A、B、C、D四个可供选择的答案中选择一个正确答案。
1.在一个C 语言源程序中,main()函数的位置_________。
答案:CA.必须在最前面B.必须在其它函数之前C.可以在任意位置D.必须在最后面2. 设有变量定义:int a[ ]={5, 6, 1, 3, 7}, c, i;当执行完语句:for(i=c=0; i<5; i++){ if(a[i]%3 = =0)continue;c++;}之后,c的值是_____。
答案:CA.1B.2C.3D.43.以下程序运行结果为_______#define PII 3#define S(x) PII*x*xmain(){ int a=1, b=2, c;c = a+b;printf("%d\n",S(c));}答案:BA.9B.27C.7D.104.若有变量定义:int a[4], *p=a; 则以下对数组a的元素不正确的引用是_____。
答案:DA.*aB.*(p+1)C.p[1]D.a[4]5.设有变量定义:int d[50], *p=&d[0]; 下面表达式中________的计算结果为int类型的数值(非地址)。
答案:DA.p+=1B.p++C.&d[2]D.p-d6.为了判断两个字符串s1和s2是否相等,应当使用_____。
答案:DA.if (s1==s2 )B.if (s1 = s2 )C.if ( strcpy (s1,s2 ) )D.if ( strcmp( s1,s2) == 0 )7.设有变量定义int n; char str[80];与函数调用:n=hex2dec(str);则函数hex2dec正确的函数说明应该是_______。
答案:AA.int hex2dec(char str[]);B.void hex2dec(char str[]);C.int hex2dec(char str);D.void hex2dec(char str);8.设有以下结构体定义及初始化,表达式(stu[0].score+stu[1].score)/2的结果是_______。
struct student{int num;float score;} stu[2]={90,91.5,93,92.5};答案:CA.91.0B.91.5C.92.0D.92.59.在C语言中,将文件内部的位置指针重新指向一个流(数据流/文件)的开头的库函数是_______。
答案:BA.fgetcB.rewindC.fscanfD.fread10. 若建立了以下链表结构,head,p,q是指向结点的指针,以下_____组语句的功能是输出如下图所示的中间结点(数据为E的结点)的数据项。
答案:BA.q = p; printf("%c",q->data);B.q = p->next; printf("%c",q->data);C.q = p; printf("%c",q);D.q = p->next; printf("%c",q);二、程序填空题 ( 本大题 2 道小题,每空 2.5 分,共 20 分)。
1. 程序完成以下功能:对x=1,2,...,10,求函数f(x)=x-10cos(x)-5sin(x)的最大值,并将该值写到新建文件data.txt中。
#include <stdio.h>#include <math.h>void main(){ FILE *p;float f(float),max,x;if((p=fopen("___1____ ","w"))==NULL){ printf("cannot open FILE\n"); exit(0); }max=f(1);for(x=2;x<=10;x++)if(___2____ <f(x))max=f(x);fprintf(p,"%.3f",max);fclose(___3____);}float f(float x){ ___4____;y=x-10*cos(x)-5*sin(x);return y;}1):【data.txt】2):【max】3):【p】4):【double y】【float y】2. 在输入的字符串中删除小写字母t,并统计被删除字母的个数。
如输入:gt=5xt-6ty 则输出:删除后的串为:g=5x-6y 删除个数:3 #include<stdio.h>#include <string.h>int f(char s[]){int i=0, ___1____;while(s[i]!='\0')if(___2___ == 't'){strcpy(s+i,s+i+1);c=c+1;}elsei++;___3____;}void main(){ int s;char str[80];gets(str);s=f(___4____);printf("删除后的串为:") ;puts(str);printf("删除个数:%d",s) ;}1):【c=0】2):【s[i]】【*(s+i)】3):【return c】【return c;】【return (c)】【return (c);】4):【str】三、操作题(一)程序调试题(3小题,第1,2小题各3处错,第3小题4处错,每改正1处得3分,共30分)1. 程序调试题1调试要求:下列程序包含2个错误,请按题中的功能要求,调试并修改该程序(在所修改语句后加/*******/字样的注释),使其运行能得到正确的结果。
将结果(包括B_2_1.C文件和B_2_1.EXE文件)保存到目录C:\KS\中。
功能说明:程序从键盘输入8个学生计算机二级考试的成绩(成绩可能有小数),统计并输出成绩合格的学生的人数。
程序对有小数的成绩应也能够正确处理。
例如输入:71.5 46 64.5 82 94 53 79 48 则输出:5带错误原程序(见C:\KS\B_2_1.C):#include <stdio.h>int main(){int i, c;float score[8];c==0;for (i=0; i<8; i++){ scanf("%d", &score[i]);if (score[i]≥60) c++;}printf("%d\n", c);getchar(); /*本句无错;暂停程序,按任意键继续*/}2. 程序调试题2调试要求:下列程序包含3个错误,请按题中的功能要求,调试并修改该程序(在所修改语句后加/*******/字样的注释),使其运行能得到正确的结果。
将结果(包括B_2_2.C文件和B_2_2.EXE文件)保存到目录C:\KS\中。
功能说明:程序从键盘输入一个字符串(长度不超过80),然后用选择法按照字符顺序从小到大进行排序,最后输出排序后的字符串。
例如输入:ca39t6k 则输出:369ackt带错误原程序(见C:\KS\B_2_2.C):#include <stdio.h>#include <string.h>int main(){char str[81], *p, *q, *minq;gets(str[81]);for (p=str; *p!='\0'; p++) // 用选择法按照字符顺序从小到大进行排序{for (q=minq=p; *q!='\0'; q++) // 用minq指向本趟排序字符值最小的字符的位置if (*q>*minq) minq=q;if (minq!=p) // 字符值最小的字符不在希望的位置上,则交换{ c=*minq; *minq=*p; *p=c; }}puts(str);getchar(); /*本句无错;暂停程序,按任意键继续*/}3. 程序调试题3调试要求:下列程序包含3个错误,请按题中的功能要求,调试并修改该程序(在所修改语句后加/*******/字样的注释),使其运行能得到正确的结果。
将结果(包括B_2_3.C文件和B_2_3.EXE文件)保存到目录C:\KS\中。
功能说明:函数mysum的功能是计算n个整数中数值在70~80之间(含70和80)的整数的和,程序从键盘输入8个整数,通过调用函数mysum计算这8个整数中数值在70~80之间的整数的和,然后输出。
例如输入:23 71 56 85 94 78 63 80 则输出:sum=229带错误原程序(见C:\KS\B_2_3.C):#include <stdio.h>float mysum(int b[], int n){ float s;int i;for (i==0; i<n; i++)if (70<=b[i]<=80) s += b[i];return s;}int main(){int a[8], i;for (i=0; i<8; i++)scanf("%d", &a[i]);printf("sum=%.0f\n", mysum(int a[], 8));getchar(); /*本句无错;暂停程序,按任意键继续 */}(二)编程题(2小题,共35分)1.编程题1编程要求:请按题中的功能要求,编写程序并能得到正确的结果。
将结果(包括B_4_1.C 文件和B_4_1.EXE 文件)保存到目录C:\KS\中。
程序功能:从键盘上输入一个字符并存放到变量c ,再输入一个整数存放到变量n (设2≤n ≤20),输出以变量c 中的字符组成的n 行2n 列方波波形图案,当c,n 为#,8时,图案及坐标计算如下图所示。
程序运行两次,分别输入"# 8"和"@ 5"时的运行结果如下:2.编程题2######### # # # # # # # # # # # ######### #↑ ↑ ↑第1列 第n 列 第2*n 列←←第1行第n行编程要求:请按题中的功能要求,编写程序并能得到正确的结果。