全国计算机等级二级C语言上机编程题题型

合集下载

计算机二级考试c语言考试真题及答案

计算机二级考试c语言考试真题及答案

计算机二级考试c语言考试真题及答案一、单项选择题(每题2分,共20分)1. 在C语言中,以下哪个关键字用于声明一个函数?A. intB. voidC. returnD. function答案:A2. 若有定义:int a=5, b=10; 则以下哪个表达式的值不为5?A. a+bB. a-bC. a*bD. a/b答案:C3. 在C语言中,以下哪个选项不是标准输入输出库函数?A. printf()B. scanf()C. puts()D. strcat()答案:D4. 下列哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. _variableD. variable-2答案:B5. 若有定义:char c='A'; 则以下哪个表达式的值不为65?A. cB. 'A'C. "A"D. '\101'答案:C6. 在C语言中,以下哪个选项表示逻辑“与”操作?A. &&B. ||C. !D. =答案:A7. 在C语言中,以下哪个选项是正确的字符串声明?A. char str[5] = "ABCDE";B. char str[5] = {'A', 'B', 'C', 'D', 'E'};C. char str[5] = {'A', 'B', 'C', 'D'};D. char str[5] = "ABC" "DE";答案:D8. 若有定义:int x=10; 则以下哪个表达式的值不为10?A. x++B. x--C. ++xD. --x答案:D9. 在C语言中,以下哪个选项是正确的二维数组声明?A. int array[3][2];B. int array[][] = {1, 2, 3};C. int array[3][];D. int array[2, 3];答案:A10. 在C语言中,以下哪个选项是正确的文件操作函数?A. fopen()B. fclose()C. fgetc()D. All of the above答案:D二、程序填空题(每空2分,共20分)给定以下程序片段,请在空白处填入正确的代码。

计算机二级C上机考试题库及答案

计算机二级C上机考试题库及答案

计算机二级C上机考试题库及答案一、单项选择题(每题1分,共10分)1. 在C语言中,以下哪个选项是正确的字符串定义方式?A. char str[] = "Hello, World!";B. char str[] = {'H', 'e', 'l', 'l', 'o', ',', ' ', 'W', 'o', 'r', 'l', 'd', '!', '\0'};C. char str[] = {"Hello, World!"};D. char str[] = "Hello, World!";答案:A2. 下列哪个函数用于将字符串s1复制到s2中?A. strcat(s1, s2);B. strcpy(s1, s2);C. strcmp(s1, s2);D. strncpy(s1, s2, n);答案:B3. 在C语言中,以下哪个关键字用于声明一个函数?A. intB. voidC. returnD. function答案:A4. 如果一个变量被声明为static int,那么这个变量的生命周期是?A. 只在函数调用期间B. 程序运行期间C. 只在程序启动时D. 只在程序结束时答案:B5. 在C语言中,以下哪个运算符用于计算两个整数的差?A. +B. -C. *D. /答案:B6. 以下哪个选项不是C语言中合法的标识符?A. _myVarB. my_varC. 2ndVarD. var$name答案:C7. 在C语言中,以下哪个选项是正确的数组定义方式?A. int arr[5] = {1, 2, 3, 4, 5};B. int arr[] = {1, 2, 3, 4, 5};C. int arr[5] = {1, 2, 3};D. int arr[] = {1, 2, 3, 4};答案:A8. 以下哪个选项是正确的C语言注释方式?A. /* This is a comment */B. // This is a commentC. //* This is a commentD. /* This is a comment */答案:A9. 在C语言中,以下哪个选项是正确的多行字符串定义方式?A. char str[] = "Line1\nLine2";B. char str[] = 'Line1\nLine2';C. char str[] = "Line1\nLine2";D. char str[] = "Line1\nLine2";答案:A10. 在C语言中,以下哪个选项是正确的结构体定义方式?A. struct Student {int id;char name[50];};B. struct Student {int id;char name[];};C. struct Student {int id;char name[50] = "John Doe";};D. struct Student {int id;char name[];};答案:A二、填空题(每题2分,共20分)1. 在C语言中,使用________运算符可以对变量进行自增操作。

计算机二级《C语言》上机操作试题及答案

计算机二级《C语言》上机操作试题及答案

计算机二级《C语言》上机操作试题及答案计算机二级考试是全国计算机等级考试,四个等级中的一个等级,由教育部考试中心主办,考核计算机基础知识和使用一种高级计算机语言编写程序以及上机调试的基本技能。

下面是店铺收集整理的计算机二级《C语言》上机操作试题及答案,仅供参考,希望能够帮助到大家。

(1)一个栈的初始状态为空。

现将元素1、2、3、4、5、A、B、c、D、E依次入栈,然后再依次出栈,则元素出棱的顺序是( )。

A.12345ABCDEB.EDCBA54321C.ABCDEl2345D.54321EDCBA(2)下列叙述中正确的是( )。

A.循环队列有队头和队尾两个指针,因此,循环队列是非线性结构B.在循环队列中,只需要队头指针就能反映队列中元素的动态变化情况C.在循环队列中,只需要队尾指针就能反映队列中元素的动态变化情况D.循环队列中元素的个数是由队头指针和队尾指针共同决定的'(3)在长度为n的有序线性表中进行二分查找,最坏情况下需要比较的次数是( )。

A.0(n)B.D(n2)C.O(1092n)D.0(nl092n)(4)下列叙述中正确的是( )。

A.顺序存储结构的存储一定是连续的,链式存储结构的存储空间不一定是连续的B.顺序存储结构只针对线性结构,链式存储结构只针对非线性结构C.顺序存储结构能存储有序表,链式存储结构不能存储有序表D.链式存储结构比顺序存储结构节省存储空间(5)数据流图中带有箭头的线段表示的是( )。

A.控制流B.事件驱动C.模块调用D.数据流(6)在软件开发中,需求分析阶段可以使用的工具是( )。

A.N—s图B.DFD图C.PAD图D.程序流程图(7)在面向对象方法中,不属于“对象”基本特点的是( )。

A.一致性B.分类性C.多态性D.标识唯一性(8)一间宿舍可住多个学生,则实体宿舍和学生之间的联系是( )。

A.一对一B.一对多C.多对一D.多对多(9)在数据管理技术发展的三个阶段中,数据共享最好的是( )。

全国计算机等级考试二级C语言上机题库(全)

全国计算机等级考试二级C语言上机题库(全)

int i; for(i=1;i<strlen(ss);i+=2) {if(ss[i]>=’a’&&ss[i]<=’z’) ss[i]-=32; } } 第五套 1. 程序填空 给定程序中,函数 fun 的功能是:计算下式前 n 项的和作为函数值返 回。例如:当形参 n 的值为 10 的时,函数返回:9.6125588。 第一处 s=0; 第二处 for(i=1;i<=n;i++) 第三处 s=s+(2.0*i-1)*(2.0*i+1)/(t*t); 2. 程序修改 给定程序 MODI1.C 中函数 fun 的功能是:统计 substr 所指字符串在 str 所指字符串中出现次数。 /**found**/ for(i=0;str[i];i++) /**found**/ if(substr[k+1]==’\0’) 3. 程序设计 请编写一个函数 fun,它的功能是:根据以下公
for(i=1;i<N;i++) if(max<a[i].s)max=a[i].s; for(i=0;i<N;i++) if(max==a[i].s)b[n++]=a[i]; return n; } 第九套 1. 程序填空 给定程序中,函数 fun 的功能是:计算形参 x 所指数组中 N 个数的平 均值,(规定所有数均为正数),将所指数组中小于平均值的数据移至 数据的前部,大于等于平均数的移至 x 所指数组的后部,平均值作为 函数值返回,在主函数中输出平均值和移动后的数据。 第一处 for(i=0;i<N;i++) av+=x[i]/N 第二处 y[j]=x[i]; x[i]=-1;j++;} 第三处 i++; 2. 程序修改 给定程序 MODI1.C 中函数 fun 的功能是:统计字符串各元音字母 (即:A、E、I、O、U)的个数。注意字母不分大小写。 /**found**/ num[k]=0;

全国计算机等级考试2级C语言上机考试例题讲解PPT课件

全国计算机等级考试2级C语言上机考试例题讲解PPT课件
9
三、上机编程题考点总结
二级C语言上机编程题在二级上机考试中属于较难题型,因 此很多同学都害怕通过不了。综合往年的考试,结合考试大纲, 每年考试的编程题都有一定的规律和方法,只要同学们认真、 熟练掌握做题的方法和技巧,通过考试是没有问题的。
下面介绍常考题型
10
类型一:数学问题,公式类型
[例1]:求小于n能同时被3和7同时整除的所有自然 数之和的平方根。
2级C语言上机考试例题讲解
1
2级考试的上机题型有:
1。填空题(30分,2~3个) 2。改错题(30分,2~3个) 3。程序编写题(40分,一定记得调试运行,否则没分!)
1、2 题是按照每个考点的答案给分的,也就是说只有和标准 答案一致的才是正确的 。虽然和标准答案不同也有可能运行 正确 ,但是也不能得分 。不过不用担心这个 ,因为题目简单 相应的正确答案的种类也少, 所以运行正确就OK ;3题要求 最高、 也最灵活 ,只要能写出符合题目要求功能的代码就可 以得40分。
须把整数1改为1.0;若变量或表达式是整型时,则只能进 行强制类型转换。
5、 字符串类问题 若错误行中有字符串结束符,则特别要注意结束符
有没有写错。注意要区分字符‘o’和数字’0’。
6、 指针类问题 若错误行中有指针变量,并且该变量名之前没有指
针运算符,则一般都是加上指针运算符;
8
7、 函数首部类问题
float fun(int n) {
{ int i,sum=1; double s=1.0; for(i=2;i<=n;i++) {sum=sum+i; s=s+1.0/sum ;} return s;
} }
12
通过上面问题的探讨,大家自己来解决以下两个问题:

计算机2级c语言考试题型

计算机2级c语言考试题型

计算机2级c语言考试题型
1.编写一个程序,在控制台输出1到100之间所有能被3整除且能被
5整除的数字。

2.编写一个函数,输入一个整数n,返回n的阶乘。

3.编写一个程序,从键盘输入一个字符串,然后逆序输出该字符串。

4.编写一个函数,输入一个整数n,判断n是否为素数。

5.编写一个程序,从键盘输入一个字符串,统计该字符串中字母、数
字和其他字符的数量,并输出结果。

6.编写一个函数,输入两个整数a和b,求它们的最大公约数和最小
公倍数。

7.编写一个程序,从文件中读取一些整数,并将这些整数按照从小到
大的顺序输出到另一个文件中。

8.编写一个函数,输入一个字符串,判断该字符串是否为回文字符串。

9.编写一个程序,从键盘输入一个日期(年、月、日),计算该日期
是这一年的第几天。

10.编写一个程序,打印出所有的“水仙花数”。

所谓水仙花数是指
一个三位数,其各位数字的立方和等于该数本身。

例如,153是水仙花数,因为153=1^3+5^3+3^3。

计算机二级c语言考试真题及答案详解

计算机二级c语言考试真题及答案详解

计算机二级c语言考试真题及答案详解一、单项选择题(每题2分,共40分)1. 在C语言中,以下哪个选项是合法的整型常量?A. 0x12B. 0x12.3C. 0x12LD. 0x12.3L答案:A2. 若有定义int a=1, b=2;,则以下哪个表达式的值不为真?A. a<bB. a<=bC. a>bD. a!=b答案:C3. 在C语言中,以下哪个选项是合法的字符串字面量?A. "Hello, World"B. 'Hello, World'C. "Hello, World\n"D. "Hello, World\0"答案:A4. 下列哪个函数不能正确计算数组元素的总和?A. sum = 0; for(i=0; i<n; i++) sum += array[i];B. sum = 0; for(i=0; i<n; i++) sum = sum + array[i];C. sum = 0; for(i=0; i<n; i++) sum = array[i];D. sum = 0; for(i=0; i<n; i++) sum += array[i];答案:C5. 在C语言中,以下哪个选项是合法的函数声明?A. int add(int, int);B. int add();C. int add(int a, int b);D. int add(a, b);答案:C6. 若有定义int a[10];,则以下哪个表达式是合法的数组元素访问?A. a[10]B. a[-1]C. a[3.5]D. a[3]答案:D7. 在C语言中,以下哪个选项是合法的指针声明?A. int *ptr;B. int *ptr[];C. int ptr*;D. int ptr[];答案:A8. 若有定义int x=10;,则以下哪个表达式是合法的赋值语句?A. x = x + 1;B. x = 1 + x;C. x = x++;D. x = ++x;答案:A9. 在C语言中,以下哪个选项是合法的循环语句?A. for(;;)B. while(1)C. do {} while(0)D. for(;;) {}答案:D10. 若有定义int a[5] = {1, 2, 3, 4, 5};,则以下哪个表达式是合法的数组元素访问?A. a[5]B. a[-1]C. a[2.5]D. a[2]答案:D11. 在C语言中,以下哪个选项是合法的switch语句?A. switch(x) { case 1: break; }B. switch(x) { default: break; }C. switch(x) { case 1: case 2: break; }D. switch(x) { case 1: default: break; }答案:C12. 若有定义int x=5;,则以下哪个表达式是合法的自增运算?A. x++;B. ++x;C. x--;D. --x;答案:A13. 在C语言中,以下哪个选项是合法的函数原型声明?A. void func();B. int func(int);C. void func(int a);D. All of the above答案:D14. 若有定义int a=3;,则以下哪个表达式是合法的位运算?A. a & 2B. a | 2C. a ^ 2D. All of the above答案:D15. 在C语言中,以下哪个选项是合法的宏定义?A. #define PI 3.14159B. #define PI 3.14159fC. #define PI 3.14159LD. All of the above答案:A二、编程题(每题30分,共60分)1. 编写一个函数,计算并返回一个整数数组中所有元素的和。

计算机二级C语言上机题库及答案(100套)

计算机二级C语言上机题库及答案(100套)

~计算机二级c 语言上机题库及答案内部资料,切勿外传!.第1 套填空题请补充FUN 函数,FUN 函数的功能是求10 的阶乘。

注意:部分源程序给出如下。

请勿改动主函数main 和其他函数中的任何内容,仅在fun 函数的横线上填入所编写的若干表达式或语句。

试题程序:#include <stdio.h>long fun(int n){if ( 1 )return (n*fun( 2 ));return 3 ;}main(){printf("10!=%ld\n", fun(10));}第1 处填空:n>1 或1<n第2 处填空:n-1第3 处填空:1 或11 或1L改错题下列给定程序的功能是:读入一个整数K(2〈=K〈=10000),打印它的所有因子(即所有为素数的因子)。

例如,若输入整数2310,则应输出:2、3、5、7、11。

请改正程序中的错误,使程序能得出正确的结果。

注意:不要改动main 函数,不得增行或删行,也不得更改程序的结构!试题程序:#include <conio.h>#include <stdio.h>/********found********/IsPrime(int n);{int i, m;m = 1;/********found********/for (i=2; i<n; i++)if !(n%i){m = 0;break;}return(m);}main(){int j, k;printf("\nplease enter an integer number between 2and 10000:");scanf("%d", &k);printf("\n\nThe prime factor(s) of %d is(are):", k);for (j=2; j<k; j++)if ((!(k%j)) && (IsPrime(j)))printf(" %4d,", j);printf("\n");}第1 处:Isprime(int n);应改为Isprime(int n)第2 处:if !(n%i)应该为if(!(n%i))编程题M 个人的成绩存放在score 数组中,请编写函数fun,它的功能是:返回低于平均分的认输,并将低于平均分的分数放在below 所指的数组中。

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

声明:本资料由考试吧()收集整理,转载请注明出自服务:面向校园,提供计算机等级考试,计算机软件水平考试,英语四六级,研究生考试等校园相关考试信息。

特色:提供历年试题,模拟试题,模拟盘,教程,专业课试题下载等。

资料丰富,更新快!考试交流论坛:/考试吧()-第一个极力推崇人性化服务的综合考试网站!服务:面向较高学历人群,提供计算机类,外语类,学历类,资格类,四大类考试的全套考试信息服务.特色:极力推崇人性化服务!让您最便捷的在最短时间内得到对您最有价值考试信息!坚持每日更新!!!全国计算机等级二级C语言上机编程题题型第1题函数fun的功能是:将n个人员的考试成绩进行分段统计,考试成绩放在a 数组中,各分数段的人数存到b数组中:成绩为60到69的人数存到b[0]中,成绩为70到79的人数存到b[1],成绩为80到89的人数存到b[2],成绩为90到99的人数存到b[3],成绩为100的人数存到b[4],成绩为60分以下的人数存到b[5]中。

例如,当a数组中的数据是:93、85、77、68、59、43、94、75、98。

调用该函数后,b数组中存放的数据应是:1、2、1、3、0、2。

注意:部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

Prog1.c#include#includevoid fun(int a[], int b[], int n){for(int i=0;i<n;i++)}main(){ int i, a[100]={ 93, 85, 77, 68, 59, 43, 94, 75, 98}, b[6];clrscr();fun(a, b, 9);printf("the result is: ");for (i=0; i<6; i++) printf("%d ", b[i]);printf("\n");NONO();}NONO( ){/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。

*/ FILE *rf, *wf ;int a[100], b[6], i, j ;rf = fopen("in1.dat", "r") ;wf = fopen("bc01.dat","w") ;for(i = 0 ; i < 10 ; i++) {for(j = 0 ; j < 10 ; j++) fscanf(rf, "%d,", &a[j]) ;fun(a, b, 9) ;for(j = 0 ; j < 6 ; j++) fprintf(wf, "%d ", b[j]) ;fprintf(wf, "\n") ;}fclose(rf) ;fclose(wf) ;}程序参考答案void fun(int a[], int b[], int n){int i;for (i=0; i<6; i++) b[i] = 0;for (i=0; iif (a[i] < 60) b[5]++;else b[(a[i]- 60)/10]++;}第2题函数fun的功能是:统计各年龄段的人数并存到b数组中,n个人员的年龄放在a数组中。

年龄为1到9的人数存到b[0]中,年龄为10到19的人数存到b[1],年龄为20到29的人数存到b[2],年龄为30到39的人数存到b[3],年龄为40到49的人数存到b[4],年龄为50岁以上的人数存到b[5]中。

例如,当a数组中的数据为:9、18、27、38、59、33、14、75、38。

调用该函数后,b数组中存放的数据应是:1、2、1、3、0、2。

注意:部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

#include#includevoid fun(int a[], int b[], int n){}main(){ int i, a[100]={ 9, 18, 27, 38, 59, 33, 14, 75, 38}, b[6];clrscr();fun(a, b, 9);printf("The result is: ");for (i=0; i<6; i++) printf("%d ", b[i]);printf("\n");NONO();}NONO( ){/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。

*/ FILE *rf, *wf ;int a[100], b[6], i, j ;rf = fopen("in2.dat", "r") ;wf = fopen("bc02.dat","w") ;for(i = 0 ; i < 10 ; i++) {for(j = 0 ; j < 10 ; j++) fscanf(rf, "%d,", &a[j]) ;fun(a, b, 9) ;for(j = 0 ; j < 6 ; j++) fprintf(wf, "%d ", b[j]) ;fprintf(wf, "\n") ;}fclose(rf) ;fclose(wf) ;}程序参考答案void fun(int a[], int b[], int n){int i;for (i=0; i<6; i++) b[i] = 0;for (i=0; iif (a[i] >= 50) b[5]++;else b[a[i]/10]++;}第3题函数fun的功能是:统计在字符串a中,以下指定字符出现的次数,并存到b数组中,其中:字符'+'出现的次数存到b[0]中,字符'-'出现的次数存到b[1],字符'*'出现的次数存到b[2],字符'/'出现的次数存到b[3],字符'&'出现的次数存到b[4],其它字符出现的次数存到b[5]中。

例如,当a字符串中的字符串为:"-+*1-a/&b"时,调用该函数后,b中存放的数据应是:1、2、1、2、1、3。

注意:部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

#include#include#includevoid fun(char *a, int b[]){}main(){ int i, b[6]; char a[100] = "-+*1/-a/&b";clrscr();fun(a, b);printf("The result is: ");for (i=0; i<6; i++) printf("%d ", b[i]);printf("\n");NONO();}NONO( ){/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。

*/ FILE *rf, *wf ;char a[100], *p ;int b[6], i, j ;rf = fopen("in6.dat", "r") ;wf = fopen("bc06.dat","w") ;for(i = 0 ; i < 10 ; i++) {fgets(a, 99, rf) ;p = strchr(a, '\n') ;if(p) *p = 0 ;for(j = 0 ; j < 6 ; j++) fprintf(wf, "%d ", b[j]) ;fprintf(wf, "\n") ;}fclose(rf) ;fclose(wf) ;}程序参考答案void fun(char *a, int b[]){int i;for (i=0; i<6; i++) b[i] = 0;for (i=0; i< strlen(a); i++)switch(a[i]){ case '+': b[0]++; break;case '-': b[1]++; break;case '*': b[2]++; break;case '/': b[3]++; break;case '&': b[4]++; break;default: b[5]++;}}第4题函数fun的功能是:把a数组中的n个数和b数组中逆序的n个数一一对应相加,结果存在c数组中。

例如:当a数组中的值是:1、3、5、7、8b数组中的值是:2、3、4、5、8调用该函数后,c数组中存放的数据是9、8、9、10、10注意:部分源程序存在文件PROG1.C中。

请勿改动主函数main和其它函数中的任何内容,仅在函数fun的花括号中填入你编写的若干语句。

#include#includevoid fun(int a[], int b[], int c[], int n){}main(){ int i, a[100]={1,3,5,7,8}, b[100]={2,3,4,5,8}, c[100];fun(a, b, c, 5);printf("The result is: ");for (i=0; i<5; i++) printf("%d ", c[i]);printf("\n");NONO();}NONO( ){/* 本函数用于打开文件,输入数据,调用函数,输出数据,关闭文件。

*/ FILE *rf, *wf ;int a[100], b[100], c[100], i, j ;rf = fopen("in.dat", "r") ;wf = fopen("bc01.dat","w") ;for(i = 0 ; i < 5 ; i++) {for(j = 0 ; j < 5 ; j++) fscanf(rf, "%d,", &a[j]) ;for(j = 0 ; j < 5 ; j++) fscanf(rf, "%d,", &b[j]) ;fun(a, b, c, 5) ;for(j = 0 ; j < 5 ; j++) fprintf(wf, "%d ", c[j]) ;fprintf(wf, "\n") ;}fclose(rf) ;fclose(wf) ;}程序参考答案void fun(int a[], int b[], int c[], int n){int i;for (i=0; i}第5题函数fun的功能是:把a数组中的n个数和b数组中逆序的n个数一一相减,结果存在c数组中。

相关文档
最新文档