计算机二级c上机考试题库
计算机二级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 所指的数组中。
计算机二级考试C语言上机试题(100题)
1.程序填空题在主函数中从键盘输入若干个数放入数组a中,用0结束输入但不计入数组。
下列给定程序中,函数fun的功能是:输出数组元素中小于平均值的元素。
例如,数组中元素的值依次为34、54、675、456、453、121,则程序的运行结果为34、54、121。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:不得增行或删行,也不得更改程序的结构!#include <conio.h>#include <stdio.h>void fun(___1___,int n){double count=0.0;double average=0.0;int i=0;for(i=0;i<n;i++)___2___;average=___3___;for(i=0;i<n;i++)if(a[i]<average){if(i%5==0)printf("\n");printf("%d,",a[i]);}}main(){int a[1000];int i=0;printf("\nPlease enter datas(end with 0):");do{scanf("%d",&a[i]);}while(a[i++]!=0);fun(a,i-1);}【答案】(1) int a[] (2)count+=a[i]或count=count+a[i] (3)count/n2.程序修改题给定程序中,函数fun的功能是:根据整型形参m,计算如下公式的值:y=1+1/(2*2)+1/(3*3)+1/(4*4)+…+1/(m*m)例如:若m中的值为5,则应输出1.463611。
请改正程序中的错误,使其能得出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!#include <stdio.h>double fun(int m){double y=1.0;int I;/**********found**********/for(i=2;i<m;i++)/**********found**********/y+=1/(i*i);return(y);}main(){int n=5;printf("\nThe result is %lf\n", fun(n));}【答案】(1)将for(i=2;i<m;i++) 改为:for(i=2;i<=m;i++)(2)将y+=1/(i*i); 改为:y +=1.0/(i*i);3.程序设计题函数fun的功能是:将s所指字符串中除了下标为偶数、同时ASCII值也为偶数的字符外,其余的全都删除;串中剩余字符所形成的一个新串放在t所指的数组中。
全国计算机等级考试二级C语言上机考试题库及答案
第1套一、填空给定函数的功能是调用fun 函数建立班级通讯录。
通讯录记录每位学生的编号,姓名和电话号码。
班级的人数和学生的信息从键盘读入,每个人的信息作为一个数据块写到名为答案yfile5.dat的二进制文件中。
答案:1. STYPE 2. FILE3. fp二、修改先将在字符串s中的字符按正序存放到t串中,然后把s 中的字符按逆序连接到t串后面。
答案:1. for(i = 0 ; i < sl ;i++) 2. t[2*sl] =` 0`; 三、程序将两个两位数的正整数a,答案合并成一个整数放在c中。
合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,答案数的十位和个位数依次放在c数的百位和个位上。
*c=(a/10)*1000+(b/10)*100 +(a%10)*10+(b%10);第2套一、填空从键盘输入若干行文本(每行不超过80个字符),写到文件答案yfile4.txt中,用-1作为字符串输入结束的标记。
然后将文件的内容读出显示在屏幕上。
文件的读写分别有自定义函数ReadText 和WriteText实现。
答案:*fw str str 二、修改从低位开始取出长整形变量s中的奇数位上的数,依次构成一个新数放在t中,高位仍放在高位,低位仍放在低位。
答案:long *t sl =sl*10;三、程序将两个两位数的正整数a,答案合并成一个整数放在c中。
合并的方式:将a数的十位和个位数依次放在c数的千位和十位上,答案数的十位和个位数依次放在c数的百位和个位上。
*c=(b/10)*1000+(a%10)*100 +(b%10)*10 +(a/10);第3套一、填空将自然数1~10以及它们的平方根写到名为答案yfile3txt的文本文档中,然后再顺序读出显示在屏幕上。
答案:(1)fp (2)fclose(fp)(3)fname二、修改将n个无序整数从小到大排序。
答案:for(i=j+1;i<n;i++)p=i;三、程序将两个两位数的正整数a,答案合并成一个整数放在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. 题目:以下哪个选项是C语言中的合法标识符?A. 2variableB. variable2C. variable-2D. variable$2答案:B解析:在C语言中,标识符可以由字母、数字和下划线组成,且不能以数字开头。
因此,只有选项B中的"variable2"是合法的标识符。
2. 题目:以下哪个选项是C语言中的整型常量?A. 0x1AB. 1.2E3C. 0.5D. 1.2答案:A解析:整型常量可以是十进制、八进制或十六进制的整数。
选项A中的"0x1A"是十六进制的整型常量,而选项B、C和D都是浮点型常量。
3. 题目:以下哪个选项是C语言中的字符串字面量?A. "Hello World"B. 'Hello World'C. "Hello" "World"D. 'H' "ello" 'W' "orld"答案:A解析:字符串字面量是由双引号括起来的字符序列。
选项A中的"Hello World"是一个合法的字符串字面量。
选项B是字符字面量,选项C和D的组合方式在C语言中不合法。
4. 题目:以下哪个选项是C语言中的合法数组声明?A. int a[5] = {1, 2, 3, 4, 5};B. int b[] = {1, 2, 3, 4, 5};C. int c[5] = {1, 2, 3};D. int d[];答案:A解析:在C语言中,数组的声明需要指定数组的大小,除非数组作为函数的参数。
选项A正确地声明了一个大小为5的整型数组,并初始化了它的元素。
全国计算机等级考试二级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;
计算机二级C上机考试题库及答案
计算机二级C上机考试题库及答案一、选择题1. 下面哪个不是C语言的关键字?A. intB. charC. doubleD. if答案:C2. C语言中,声明int a[10]; 表示的是什么类型的变量?A. 整型数组B. 字符型数组C. 浮点型数组D. 无类型数组答案:A3. 以下哪个函数用于从标准输入中读取一个字符?A. getchar()B. putchar()C. printf()答案:A4. 下面哪个运算符用于取两个操作数的余数?A. +B. -C. *D. %答案:D5. C语言中,用于判断两个数是否相等的运算符是?A. >B. <C. ==D. !=答案:C二、编程题1. 输出斐波那契数列的前20项。
```c#include <stdio.h>int n, i;long long t1 = 0, t2 = 1, nextTerm;printf("斐波那契数列的前20项:\n");for (i = 1; i <= 20; ++i) {printf("%lld, ", t1);nextTerm = t1 + t2;t1 = t2;t2 = nextTerm;}return 0;}```三、简答题1. C语言中的指针是什么?请简要说明指针的概念和作用。
答:C语言中,指针是一个用来存储内存地址的变量。
指针可以指向内存中的任何数据类型,包括整型、字符型、结构体等。
指针的作用主要有两点:一是可以通过指针直接访问、修改内存中的数据;二是可以动态地分配内存空间,提高程序的灵活性和效率。
2. 请简要说明C语言中的结构体是什么,以及它的作用及特点。
答:C语言中的结构体是一种自定义的数据类型,用于将不同类型的数据组合在一起形成一个逻辑整体。
结构体可以包含不同类型的成员变量,可以根据需要定义不同结构体类型的变量。
结构体的作用主要有两点:一是可以方便地管理和操作多个相关的变量;二是可以定义自己需要的数据类型,提高程序的可读性和可维护性。
计算机二级c 上机考试题库80题答案
第1套一、填空题给定程序的功能是求1/4的圆周长。
函数通过形参得到圆的直径,函数返回1/4的圆周长(圆周长公式为:L=Πd,在程序中定义的变量名要与公式的变量相同)。
例如:输入圆的直径值:19.527,输出为:15.336457请勿改动主函数main与其他函数中的任何内容,仅在横线上填写所需的若干表达式或语句。
#include<stdio.h>double fun(double d){return 3.14159*d/4.0;}main(){double z;printf("Input the d of the round:");scanf("%lf",&z);printf("L=%lf\n",fun(z));}二、改错题下列给定程序中函数fun的功能是:计算正整数m的各位上的数字之积。
例如,若输入202,则输出应该是0。
请修改程序中的错误,得出正确的结果注意:不要改动main函数,不能增行或删行,也不能更改程序的结构#include<stdio.h>#include<conio.h>long fun(long n){long r=1;do{r*=n%10;n/=10;}while(n);return(r);}main(){long m;printf("\nplease enter a number:");scanf("%ld",&m);printf("\n%ld\n",fun(m));}三、编程题请编写一个函数fun,它的功能是:求出1到m之内(含m)能被7或11整初的所有整数放在数组b中,通过n返回这些数的个数。
例如,若传送给m的值为20,则程序输出7 11 14。
请勿改动主函数main与其他函数中的任何内容,仅在函数fun的花括号中填入所编写的若干语句。
计算机二级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 所指的数组中。
全国二级考试计算机-二级C上机考试题库
104请编函数fun,其功能是将一个数字字符串转换成与其面值相同的长整型整数。
可调strlen函数求字符串长度。
例如:在键盘输入字符串2345210,函数返回长整型数2345210。
数字字符串转换为整数int len, t; long x=0; len=strlen(s);if(s[0]=='-') { t=-1; len--; s++; } else t=1;while(*s) x = x*10-48+(*s++);return x*t;填空:0 t (t-1)*(t+2)/2改错:b[i]=0;b[a[i] - 'a']++;if (b[max] <b[i])类型七:套用公式计算型73.编写函数fun,函数的功能是:根据以下公式计算s,计算结果作为函数值返回;n通过形参传入。
s=1+1/(1+2)+1/(1+2+3)+.......+1/(1+2+3+4+......+n), 若n的值为11时,函数的值为1.833333。
int i,j,t; float s=0;for(i=1;i<=n;i++){ t=0; for(j=1;j<=i;j++) t+=j; s=s+1./t; } return s;填空:'\0' 0 c改错:double sum=0.0;sum /= c;74.编写函数fun,它的功能是:利用以下所示的简单迭代方法求方程cos(x)-x=0的一个实根。
Xn+1=cos(Xn)cos(x)-x=0的一个实根0.739085 float x0, x1=0.0;do { x0=x1; x1=cos(x0);} while(fabs(x0-x1)>0.000001);return x1;填空:i++ m m改错:while ((high >= 2) && (n < 10) )yes=0; break;75.若m的值为20,则fun函数值为6.506583。
计算机等级二级C语言上机考试题库
1、给定程序中,函数fun的功能是:在任意给定的9个正整数中找出按升序排列时处于中间的数,将原数据序列中比该中间数小的数用该中间数替换,位置不变,在主函数中输出处理后的数据序列,并将中间数作为函数值返回。
例如,有9个正整数:1 5 7 23 87 5 8 21 45按升序排列时的中间数为:8处理后主函数中输出的数列为:8 8 8 23 87 8 8 21 45请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!#include#define N 9int fun(int x[]){ int i,j,k,t,mid,b[N];for(i=0;i<N;I++)&NBSP;B[I]=X[I];for(i=0;i<=N/2;i++){ k=i;for(j=i+1;j<N;J++)&NBSP;IF(B[K]>b[j]) k=j;if(k != i ){/**********found**********/t=b[i]; b[i]=___1___; b[k]=t;}}/**********found**********/mid=b[___2___];for(i=0; i<N;&NBSP;I++)/**********found**********/if(x[i] ___3___ mid) x[i]=mid;return mid;}main(){ int i, x[N]={1,5,7,23,87,5,8,21,45};for(i=0; i<N;&NBSP;I++)&NBSP;&NBSP;PRINTF("%D&NBSP;",X[I]);printf("\nThe mid data is: %d\n",fun(x));for(i=0; i<N;&NBSP;I++)&NBSP;&NBSP;PRINTF("%D&NBSP;",X[I]);printf("\n");}2、给定程序中,函数fun的功能是建立一个N×N的矩阵。
全国计算机等级考试二级C语言上机考试题库100道
2 }
3. 请编写函数fun,它的功能是:求小于形参n同时能被3和7整除的所有自然数之和的平方根,并作函数的返回值。
double sum=0.0;
int i;
for(i=21;i<=n;i++)
if((i%3= =0)&&(i%7= =0))sum
1 *n 2 next 3 head
2. 给定程序MODI1.C中函数fun的功能是:求出s所指字符串最后一次出现的t所指字符串的地址,通过函数值返回,在主函数中输出从此地址开始的字符串;若未找到,则函数值NULL。
1 a=NULL; 2 if(*r==*p)
2. 给定程序MODI1.C中函数fun的功能是:按以下递推公式求函数值。例如,当给n输出5时,函数值为18;当给n输入3时,函数值为14.
1 fun(int n) 2 if(n==1)
3. 假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:使字符串中尾部的*号不得多于n个;若多于n个则删除多余的*号;若少于或等于n个,则什么也不做,字符串中间和前面的*号不删除。
2给定程序MODI1.C中函数fun的功能是:将s所指字符串中的字母转换为按字母顺序的后续字母(但Z转化成A,z转换为a),其它字符不变。
1 while(*s) 2 s++;
3 请编写函数fun,函数的功能是:移动一维数组中的内容,若数组中有n个整数,要求把下标从0~p(含p,p小于 等于n-1)的数组元素平移到数组的最后。
1 N 2 substr 3 0
2. 给定程序MODI1.C中函数fun的功能是:求三个数的最小公倍数。
全国计算机等级考试二级c语言上机题库
全国计算机等级考试二级c语言上机题库【例1】给定程序中,函数fun的功能是:将形参n所指变量中,各位上为偶数的数去除,剩余的数按原来从高位到低位的顺序组成一个新的数,并通过形参指针n传回所指变量。
例如,输入一个数:27638496,新的数:为739。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果。
注意:源程序存放在考生文件夹下的BLANK1.C中。
不得增行或删行,也不得更改程序的结构!给定源程序:#includevoidfun(unsignedlong*n){unsignedlongx=0,i;intt;i=1;while(*n){t=*n%__1__;if(t%2!=__2__){x=x+t*i;i=i*10;}*n=*n/10;}*n=__3__;}main(){unsignedlongn=-1;while(n>99999999||n<0){printf("Pleaseinput(0fun(&n);printf("\Theresultis:%ld\",n);}解题思路:第一处:t是通过取模的方式来得到*n的个位数字,所以应填:10。
第二处:判断是否是奇数,所以应填:0。
第三处:最后通形参n来返回新数x,所以应填:x。
给定程序MODI1.C中函数fun的功能是:计算n!。
例如,给n输入5,则输出120.000000。
【例2】请改正程序中的错误,使程序能输出正确的结果。
注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!给定源程序:#includedoublefun(intn){doubleresult=1.0;ifn==0return1.0;while(n>1&&n<170)result*=n--returnresult;}main(){intn;printf("InputN:");scanf("%d",&n);printf("\\%d!=%lf\\",n,fun(n));}解题思路:第一处:条件语句书写格式错误,应改为:if(n==0)。
全国计算机二级C上机题库含答案
计算机等级考试二级C++模拟试题上机部分一、改错题使用VC6打开考生文件夹下的工程kt6_1,此工程包含一个源程序文件kt6_1.cpp,但该程序运行有问题,请改正程序中的错误,使程序的输出结果如下:Constructor2Constructor1i=0i=10Destructor源程序文件kt6_1.cpp清单如下:#includeclassCSample{inti;public:CSample(){cout<<"Constructor1"<CSample(intval){cout<<"Constructor2"<~CSample(){cout<<"Destructor"<voiddisp();};/**********found**********/voiddisp(){cout<<"i="<voidmain(){CSample*a,b(10);/**********found**********/a->disp();/**********found**********/b->disp();}【参考答案】(1)将void disp()改为:void CSample::disp()(2)将a->disp();改为:a=new CSample; a->disp();(3)将b->disp();改为:b.disp();【试题解析】(1)主要考查类成员函数定义格式的熟练掌握,对于类体外函数的实现,应该使用作用域符"::",按照返回值类型类名::函数名(参数列表)的形式进行说明;(2)主要考查对动态存储分配的掌握,根据前面的定义,a是一个指针类型的变量,指向一个对象,但是并没有被初始化,此时a中的数据无任何意义,应该使用动态存储分配new 生成一个新的对象,并将返回的指针赋值给a;(3)主要考查对象指针与对象在调用成员函数时格式的不同,b是一个对象变量,使用b 调用成员函数应该用"."运算符。
全国计算机二级C语言上机题库及答案
a[j] = a[i]; ___2___;
}
/**********found**********/
return ___3___;
}
main()
{ int b[N]={9,1,4,2,3,6,5,8,7}, i, n;
{ t = a[i]; a[i] = min; a[pn] = t;
if (px == i) px =pn;
}
if (px != i+1)
{ t = a[i+1]; a[i+1] = max; a[px] = t; }
}
3.给定程序中,函数fun的功能是:统计形参s所指的字符串中数字字符出现的次数,并存放在形参t所指的变量中,最后在主函数中输出。例如,若形参s所指的字符串为abcdef35adgh3kjsdf7,则输出结果为4。
请在下划线处填入正确内容并将下划线删除,使程序得出正确的结果。
注意:部分源程序在文件BLANK1.C中。
{ unsigned long x=0; i
/**********found**********/
if(t%2==____1____)
/**********found**********/
x=____2____+t;
printf("\nThe result is: %f\n",fun(e));
}
【参考答案】
(1)3.0或(double)3 (2)> (3) (t+1)
2. 下列给定程序中,函数fun的功能是:计算如下公式前n项的和并作为函数值返回。
全国计算机等级考试(二级C)上机题库100题.doc
int vectorLVSTZEJ;
/*注:该题的算法是用一个变量(j)来存储最小值 元素的下标,在循环过程中让每个元
素都与原最小值元素进行大小比较
(if (list[i]〈list[j]),如发现更小的则让j重新 拥有最小值元素的下标(j=i)o */
int fun(int 1ist[], int size)
printf ("The sum of even number:%d\n", even);
)
4、要求程序的功能是:把20个随机数存入一个 数组,然后输出该数组中的最小值。其
中确定最小值的下标的操作在fun函数中实现,请 给出该函数的定义。
试题程序。
#include <stdio. h>
■include <conio. h>
fun(int *a, int n, int *odd, int *even)
( int i; *cvcn=0;*odd=0;
for(i=0;i〈n;i++)
if(!(a[i]%2))
*even+=a[i];
else
*odd+=a[i];
}
main()
( int a[N]=(l, 9, 2, 3, 11,6), i, n=6, odd, even;
}
i=fun(vector, VS1ZE);
printf ('AnMininum: vector [%d] =%6d\n,\ i, vecto r[i]);
}
5、清编一个函数float fun (double h),函数的 功能是对变量h中的值保留2位小数,并
计算机二级c考试试题及答案
计算机二级c考试试题及答案一、选择题(每题2分,共20分)1. 在C语言中,以下哪个选项是合法的整型常量?A. 0x123B. 123.0C. 0123D. 123E答案:A2. 关于C语言中的指针,以下说法正确的是?A. 指针可以存储任何类型的数据B. 指针可以存储变量的地址C. 指针本身没有类型D. 指针不能被赋值答案:B3. 下列关于函数的描述,错误的是?A. C语言中的函数可以没有返回值B. 函数可以嵌套定义C. 函数可以有多个返回值D. 函数可以被递归调用答案:B4. 在C语言中,以下哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A5. 关于数组,以下说法正确的是?A. 数组的大小在定义时必须确定B. 数组的元素可以是不同类型的C. 数组的索引从1开始D. 数组可以动态分配大小答案:A6. 在C语言中,以下哪个运算符用于取地址?A. *B. &C. %D. #答案:B7. 下列关于文件操作的描述,错误的是?A. 文件操作需要包含头文件`stdio.h`B. 可以使用`fopen`函数打开文件C. `fclose`函数用于关闭文件D. 文件指针是用于指向文件的指针答案:A8. 在C语言中,以下哪个选项是合法的字符常量?A. 'A'B. "A"C. 'AB'D. '\t'答案:D9. 关于C语言中的预处理指令,以下说法正确的是?A. `#include`用于包含头文件B. `#define`用于定义宏C. `#ifdef`用于条件编译D. 以上都是答案:D10. 在C语言中,以下哪个关键字用于声明一个枚举类型?A. enumB. unionC. structD. typedef答案:A二、填空题(每题2分,共20分)1. 在C语言中,`int main()`函数的返回类型是________。
全国计算机考试二级C上机考试
全国计算机考试二级C上机考试300题1-10套上机题11.填空题请补充main函数,该函数的功能是:把一个字符串中的所有小写字母字符全部转换成大写字母字符,其他字符不变,结果保存原来的字符串中。
例如:当str[N]="123 abcdef ABCDEF!",结果输出:"123 ABCDEF ABCDEF!"。
2. 改错题下列给定程序中,函数fun()的功能是逐个比较a,b两个字符串对应位置中的字符,把ASCII值小或相等的字符依次存放到c数组中,形成一个新的字符串。
例如:a中的字符串为fshADfg,b中的字符串为sdAEdi,则c中的字符串应为fdAADf 3. 编程题请编写函数fun,其功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。
合并的方式是:将a数的十位和个位数依次放在c数个位和十位上,b数的十位和个位数依次放在c数的百位和千位上。
例如,当a=16,b=35,调用该函数后,c=5361。
21.填空题请补充main函数,该函数的功能是求方程ax2+bx+c=0的两个实数根。
方程的系数a、b、c从键盘输入,如果判别式(disc=b2-4ac)小于0,则要求重新输入a、b、c的值。
例如,当a=1,b=2,c=1时,方程的两个根分别是x1=-1.00, x2=-1.00。
2. 改错题下列给定程序中,函数fun()的功能是根据整型形参m,计算如下公式的值。
y=1-1/(2×2)+1/(3×3)-1/(4×4)+…+(-1)(m+1)/(m×m)例如:m中的值为5,则应输出0.838611。
请改正程序中的错误,使它能得到正确结果。
3. 编程题请编一个函数void fun(int tt[M][N],int pp[N]),tt指向一个M行N列的二维数组,求出二维数组每列中最大元素,并依次放入pp所指的一维数组中。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
所属语言:C++试卷总分:200分共有题型:5种一、填空共20题(共计20分)第1题(1.0分)假设变量a,b均为整型,表达式(a=5,b=2,a>b?a++:b++,a+b)的值是【1】.答案:=======(答案1)=======8第2题(1.0分)若有以下数组a,数组元素:a[0]~a[9],其值为9 4 12 8 2 10 7 5 1 3该数组的元素中,数值最大的元素的下标值是【1】.答案:=======(答案1)=======2第3题(1.0分)下面程序段的输出结果是【1】.int a=12; a=a&0377;pritnf("%o\n",a);答案:=======(答案1)=======14第4题(1.0分)若输入字符串:abcde<回车>,则以下while循环体将执行【1】次. While((ch=getchar())=='e') printf("*");答案:=======(答案1)=======第5题(1.0分)将数组a的首地址赋给指针变量p的语句是【1】.答案:=======(答案1)=======p=a;第6题(1.0分)C语言把文件看作是一个【1】的序列.答案:=======(答案1)=======字符=========或=========字节第7题(1.0分)静态变量和外部变量的初始化是在【1】阶段完成的,而自动变量的赋值是在【2】时进行的.答案:=======(答案1)=======编译=======(答案2)=======函数调用第8题(1.0分)若有定义:int a[3][2]={2,4,6,8,10,12};,则*(a[1]+1)的值是【1】.答案:=======(答案1)=======8第9题(1.0分)C语言中,数组名是一个不可变的【1】量,不能对它进行加减和赋值运算.答案:======(答案1)=======地址第10题(1.0分)int x=2;z=x++-1; 则x的值为【1】.答案:=======(答案1)=======3第11题(1.0分)若所用变量都已正确定义,请填写以下程序段的输出结果【1】.for(i=1;i<=5;i++);printf("OK\n");答案:=======(答案1)=======OK第12题(1.0分)feof(fp)函数用来判断文件是否结束,如果遇到文件结束,函数值为【1】,否则为【2】.答案:=======(答案1)=======非0值======(答案2)=======第13题(1.0分)如果函数不要求带回值,可用【1】来定义函数返回值为空.答案:=======(答案1)=======void第14题(1.0分)调用 fopen 函数打开一文本文件,在"使用方式"这一项中,为输出而打开需填入【1】.答案:=======(答案1)=======w=========或=========w+第15题(1.0分)顺序结构存储方法是把逻辑上相邻的结点存储在物理位置【1】的存储单元中。
答案:=======(答案1)=======相邻第16题(1.0分)一个类可以从直接或间接的祖先中继承所有属性和方法。
采用这个方法提高了软件的【1】。
答案:可重用性第17题(1.0分)C++中封装性、继承性和【1】是面向对象程序设计的三个主要性质。
答案:=======(答案1)=======多态性第18题(1.0分)C++语言的参数传递机制包括传值和传地址两种,如果调用函数时,需要改变实参或者返回多个值,应该采取【1】方式。
答案:=======(答案1)=======传地址第19题(1.0分)设i,j,k均为int型变量,则执行完for(i=0,j=10;j<=j;i++,j--)k=i+j;语句后,K的值为【1】。
答案:10第20题(1.0分)对长度为10的线性表进行冒泡排序,最坏情况下需要比较的次数为【1】。
答案:=======(答案1)=======45二、判断共20题(共计20分)第1题(1.0分)用fopen("file","r+");打开的文件"file"可以进行修改。
答案:Y第2题(1.0分)int i=20;switch(i/10){case 2:printf("A");case 1:printf("B");}的输出结果为A。
答案:N第3题(1.0分)若有定义和语句:int a;char c;float f;scanf("%d,%c,%f",&a,&c,&f);若通过键盘输入:10,A,12.5,则a=10,c='A',f=12.5.答案:Y第4题(1.0分)char *p="girl";的含义是定义字符型指针变量p,p的值是字符串"girl"。
答案:N第5题(1.0分)x*=y+8 等价于 x=x*(y+8)。
答案:Y第6题(1.0分)如果有一个字符串,其中第十个字符为'\n',则此字符串的有效字符为9个。
答案:N第7题(1.0分)通过return语句,函数可以带回一个或一个以上的返回值。
答案:N第8题(1.0分)如果想使一个数组中全部元素的值为0,可以写成int a[10]={0*10};答案:N第9题(1.0分)一个include 命令可以指定多个被包含的文件。
答案:N第10题(1.0分)C程序中有调用关系的所有函数必须放在同一个源程序文件中。
答案:N第11题(1.0分)进行宏定义时,宏名必须使用大写字母表示。
答案:N第12题(1.0分)共同体变量所占的内存长度等于最长的成员的长度。
答案:Y第13题(1.0分)在C 语言中,此定义和语句是合法的:enum aa{ a=5,b,c}bb;bb=(enum aa)5;答案:Y第14题(1.0分)7&3+12的值是15。
答案:N第15题(1.0分)类有两个特殊的成员函数构造函数和虚函数答案:N第16题(1.0分)抽象类不仅可用做派生其他类的基类,也可以用于直接创建对象实例。
答案:N第17题(1.0分)静态函数可声明为虚函数。
答案:N第18题(1.0分)如果一个函数在其函数体内直接或间接的调用了自己,该函数称为递归函数。
答案:Y第19题(1.0分)类中提供了三种访问控制权:公有、私有、保护三种类型。
答案:Y第20题(1.0分)所谓继承就是利用已有的数据类型定义出新的数据类型。
答案:Y三、单选共60题(共计60分)第1题(1.0分)fscanf函数的正确调用形式是()。
A:fscanf(fp,格式字符串,输出表列);B:fscanf(格式字符串,输出表列,fp);C:fscanf(格式字符串,文件指针,输出表列);D:fscanf(文件指针,格式字符串,输入表列);答案:D第2题(1.0分)C语言的if语句嵌套时,if与else的配对关系是()。
A:每个else总是与它上面的最近的if配对B:每个else总是与最外层的if配对C:每个else与if的配对是任意的D:每个else总是与它上面的if配对答案:A第3题(1.0分)C语言中,文件由()。
A:记录组成B:由数据行组成C:由数据块组成D:由字符(字节)序列组成答案:D第4题(1.0分)设C语言中,int类型数据占2个字节,则short类型数据占()。
A:1个字节B:2个字节C:4个字节D:8个字节答案:B第5题(1.0分)以下不符合C语言语法的赋值语句是()。
A:j++;B:j=j=5;C:k=2*4,k*4;D:y=float(j);答案:D第6题(1.0分)C语言允许函数类型缺省定义,此时函数值隐含的类型是()。
A:floatB:intC:longD:double第7题(1.0分)int (*p)[6]; 它的含义为()。
A:具有6个元素的一维数组B:定义了一个指向具有6个元素的一维数组的指针变量C:指向整型指针变量D:指向6个整数中的一个的地址答案:B第8题(1.0分)经下列语句定义后,sizeof(x),sizeof(y),sizeof(a),sizeof(b)在微机上的值分别为()。
char x=65;float y=7.3;int a=100;double b=4.5;A:2,2,2,4B:1,2,2,4D:2,4,2,8答案:C第9题(1.0分)char *match(char c)是()。
A:函数定义的头部B:函数预说明C:函数调用D:指针变量说明答案:A第10题(1.0分)若有说明: int a[3][4]={0};则下面正确的叙述是()。
A:只有元素a[0][0]可得到初值0B:此说明语句不正确C:数组a中各元素都可得到初值,但其值不一定为0D:数组a中每个元素均可得到初值0答案:D第11题(1.0分)当说明一个结构体变量时系统分配给它的内存是()。
A:各成员所需内存量的总和B:结构中第一个成员所需内存量C:成员中占内存量最大者所需的容量D:结构中最后一个成员所需内存量答案:A第12题(1.0分)以下不是无限循环的语句为()。
A:for(y=0,x=1;x>++y;x=i++) i=x;B:for(;;x++=i);C:while(1){x++;}D:for(i=10;;i--) sum+=i;答案:A第13题(1.0分)利用 fseek 函数可以实现的操作是()。
A:改变文件的位置指针B:文件的顺序读写C:文件的随机读写D:以上答案均正确答案:D第14题(1.0分)C语言中 while 和 do-while 循环的主要区别是()。
A:do-while 的循环体至少无条件执行一次B:while的循环控制条件比 do-while的循环控制条件更严格C:do-while 允许从外部转到循环体内D:do-while 的循环体不能是复合语句答案:A第15题(1.0分)sizeof(float)是()。
A:一种函数调用B:一个不合法的表达式C:一个整型表达式D:一个浮点表达式答案:C第16题(1.0分)以下程序的运行结果是()。
main(){ int n;for(n=1;n<=10;n++){if(n%3==0) continue;printf("%d",n);}}B:369C:12答案:A第17题(1.0分)以下不正确的叙述是()。
A:在C程序中所用的变量必须先定义后使用B:程序中,APH和aph是两个不同的变量C:若a和b类型相同,在执行了赋值语句a=b;后b中的值将放入a中,b 中的值不变D:当输入数值数据时,对于整型变量只能输入整型值;对于实型变量只能输入实型值答案:D第18题(1.0分)下列程序的输出结果为()。