省二级《C程序设计》上机考试练习-补充
计算机二级考试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. 在考生目录下, 有 Modify.c 程序,该程序中”/******N******/”的下一行中
有错误, 请改正(注意:不得加行、减行、加句、减句,否则后果自负)。
该程序功能:输入 m、n(要求输入数均大于 0),输出它们的最小公倍数
/*****2****/
k=k+m%n;
// k=k+m
p;
}
// m<=0|| n<=0
对全部高中资料试卷电气设备,在安装过程中以及安装结束后进行高中资料试卷调整试验;通电检查所有设备高中资料电试力卷保相护互装作置用调与试相技互术关,系电,力根保通据护过生高管产中线工资敷艺料设高试技中卷术资配,料置不试技仅卷术可要是以求指解,机决对组吊电在顶气进层设行配备继置进电不行保规空护范载高与中带资负料荷试下卷高总问中体题资配,料置而试时且卷,可调需保控要障试在各验最类;大管对限路设度习备内题进来到行确位调保。整机在使组管其高路在中敷正资设常料过工试程况卷中下安,与全要过,加度并强工且看作尽护下可关都能于可地管以缩路正小高常故中工障资作高料;中试对资卷于料连继试接电卷管保破口护坏处进范理行围高整,中核或资对者料定对试值某卷,些弯审异扁核常度与高固校中定对资盒图料位纸试置,.卷编保工写护况复层进杂防行设腐自备跨动与接处装地理置线,高弯尤中曲其资半要料径避试标免卷高错调等误试,高方要中案求资,技料编术试5写交卷、重底保电要。护气设管装设备线置备4高敷动调、中设作试电资技,高气料术并中课3试中且资件、卷包拒料中管试含绝试调路验线动卷试敷方槽作技设案、,术技以管来术及架避系等免统多不启项必动方要方式高案,中;为资对解料整决试套高卷启中突动语然过文停程电机中气。高课因中件此资中,料管电试壁力卷薄高电、中气接资设口料备不试进严卷行等保调问护试题装工,置作合调并理试且利技进用术行管,过线要关敷求运设电行技力高术保中。护资线装料缆置试敷做卷设到技原准术则确指:灵导在活。分。对线对于盒于调处差试,动过当保程不护中同装高电置中压高资回中料路资试交料卷叉试技时卷术,调问应试题采技,用术作金是为属指调隔发试板电人进机员行一,隔变需开压要处器在理组事;在前同发掌一生握线内图槽部纸内故资,障料强时、电,设回需备路要制须进造同行厂时外家切部出断电具习源高题高中电中资源资料,料试线试卷缆卷试敷切验设除报完从告毕而与,采相要用关进高技行中术检资资查料料和试,检卷并测主且处要了理保解。护现装场置设。备高中资料试卷布置情况与有关高中资料试卷电气系统接线等情况,然后根据规范与规程规定,制定设备调试高中资料试卷方案。
计算机二级C语言上机测试题附答案
计算机二级C语言上机测试题附答案2017计算机二级C语言上机测试题附答案引导语:计算机上机考试要灵活应变,以下是店铺分享给大家的2017计算机二级C语言上机测试题附答案,欢迎测试!1.程序填空给定程序的功能是判断字符ch是否与串str中的某个字符相同:若相同,什么也不做,若不同,则插在串的最后。
请在程序的下划线处填入正确的内容并把下划线删除,使程序得出正确的结果注意:不得增行或删行,也不得更改程序的结构!试题程序:#include#includevoid fun(char*str, char ch ){ while ( *str && *str != ch ) str++;if( *str 1 ch ){ str[0] =ch;2 = 0;}}main( ){ char s[81], c;printf( "\nPlease enter a string:\n" ); gets ( s );printf ("\n Please enter the character to search : " );c = getcharO;fun( 3 ) ;printf( "\nThe result is %s\n", s);2.程序修改【答案】(1)错误:第5行fun(int**a,int m)正确:fun(int a[][M],Int m)(2)错误:第9行 a[j][k]=k*j;正确:a[j][k]=(k+1)*(j+1);【评析】第5行:第二个形参m是用户输入的维数,没有别的名堂,第一个形参是为了指明在函数fun()中要产生的多维数组,"**a"是不能正确表示一个多维数组的,我们应当使用"int a[M][M]"。
第9行:循环体的.内容是给m维的多维数组赋值,这个多维数组在列方向是由1开始的自然数,在行方向上是行首第一数的n倍数,显然,"a[j][k]=k*j;"不符合题意,我们应当使用"a[j][k]=(k+1)*(j+1);"。
浙江省计算机二级C语言上机题库
第二部份C程序设计上机操作题 (1)一、数列求和 (1)二、最大公约数、最小公倍数 (6)三、排序算法 (6)四、数组 (8)五、求整数n的各位数字及各数字之和 (11)六、平面上各点之间的距离 (13)七、数制转换 (16)八、字符串处理 (18)九、最大值与最小值 (24)十、斐波那契(Fibonacci)数列 (27)十一、水仙花、完数、回文数与亲密数 (28)十二、方程求根 (30)十三、回文数、因子、质因子、素数 (33)十三、其他算法 (34)第二部份C程序设计上机操作题一、数列求和1、程序调试题试题一该程序功能:输入x和正数eps,计算多项式1-x+x*x/2!-x*x*x/3!+...的和直到末项的绝对值小于eps为止。
#include <stdio.h>#include <math.h>void main(){ float x,eps,s=1,t=1,i=1;scanf("%f%f",&x,&eps);do {/***** 1 *****/t=-t*x/++i; //++i--→i++s+=t;/***** 2 *****/} while(fabs(t)<eps); // < --→ >=printf("%f\n",s);}试题二该程序功能:运行时假设输入a、n分别为3、6,则输出以下表达式的值:3+33+333+3333+33333+333333#include <stdio.h>void main(){ int i,a,n; long t=0;/********* 1 *******/s=0; //s=0--→long s=0scanf("%d%d",&a,&n);for(i=1;i<=n;i++) {/******* 2 ******/t=t*10+i; //i-→1s=s+t;}s=s*a;printf("%ld\n",s);}2、程序填空题试题一程序功能:调用函数f计算代数多项式1.1+2.2*x+3.3*x*x+4.4*x*x*x+5.5*x*x*x*x当x=1.7时的值。
计算机二级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上机考试题库及答案
计算机二级C上机考试题库及答案一、选择题1. 在C语言中,以下哪个选项是正确的整型常量表示?A. 0x12B. 0.123C. 1.2e3D. 0b1010答案:A2. 若有以下定义:```cint a=1, b=2, c;```则执行语句 `c = a + b;` 后,变量 `c` 的值是多少?A. 0B. 1C. 3D. 4答案:C3. 在C语言中,以下哪个关键字用于声明一个函数?A. structB. unionC. staticD. void答案:D二、填空题1. 在C语言中,`printf` 函数用于输出,其对应的输入函数是________ 。
答案:scanf2. 若定义 `char str[10] = "Hello";`,则 `str` 数组的第7个元素是 ________ 。
答案:\03. 在C语言中,声明一个指向整型的指针变量 `p`,其正确的声明方式是 ________ 。
答案:int *p;三、编程题1. 编写一个C程序,计算并输出以下数列的前10项之和:1, 1/2, 1/3, 1/4, ...```c#include <stdio.h>int main() {double sum = 0.0;for (int i = 1; i <= 10; i++) {sum += 1.0 / i;}printf("The sum of the series is: %f\n", sum);return 0;}```2. 给定一个字符串,编写一个C程序,将字符串中的所有小写字母转换为大写字母。
```c#include <stdio.h>int main() {char str[] = "Hello, World!";for (int i = 0; str[i] != '\0'; i++) {if (str[i] >= 'a' && str[i] <= 'z') {str[i] -= 'a' - 'A';}}printf("%s\n", str);return 0;}```结束语:以上是计算机二级C上机考试题库及答案的部分内容,希望对您的学习和复习有所帮助。
浙江省计算机二级C程序设计上机模拟题
#include <ctype.h>
void main()
{ char a[80]; int n[5]={0},i;
gets(a);
for(i=0; a!=’\0’; i++)
/***** 1 *****/
switch(tolower(a+i)) { //switch(tolower(a))
}
/***** 2 *****/
for(i=0;i<26;i++) //i<ny
printf("%c ",y);
printf("\n");
}
5.在考生目录下,有Modify.c程序,该程序中"/***** N ****/"的下一行
中有错误,请改正(注意:不得加行、减行、加句、减句,否则后果自负)。
该程序功能:输入x、.的和直到末项的
gets(x);
for(i=0;x!='\0';i++)
if(x>='A'&&x<='Z') {
for(j=0;j<ny;j++)
/***** 1 *****/
if(y==x[j])continue; // if(y[j]==x) break;
if(j==ny) { y[ny]=x; ny++; }
}
3.在考生目录下,有Modify.c程序,该程序中"/***** N *****/"的下一行中有错误,
请改正(注意:不得加行、减行、加句、减句,否则后果自负)。
计算机二级C语言程序设计上机题库
第二处for(i=0;i<3;i++)
a->score[i]+=1;
第三处return a;
2.程序修改
给定程序MODI1.C中函数fun的功能是:从N个字符串中找出最长的那个串,并将其地址作为函数值返回。各字符串在主函数中输入,并放在一个字符串数组中。
/**found**/
3.程序设计
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组s中,请编写了函数fun,它的功能是:把分数最高的学生数据放在b所指的数组中,注意:分数最高的学生可能不止一个,函数返回分数最高的学生的人数。
int fun(STREC *a,STREC *b)
{
int i,max=a[0].s,n=0;
第二处for(i=0;i<k;i++)
t[j+i]=p[i];
第三处t[j+k]=0;
2.程序修改
给定程序MODI1.C中函数fun的功能是:将s所指字符串中最后一次出现的与t1所指字符串相同的子串替换成t2所指定字符串,所形成的新串放在w所指的数组中。在此处,要求t1和t2所指字符串的长度相同。
/**found**/
if(substr[k+1]==’\0’)
3.程序设计
请编写一个函数fun,它的功能是:根据以下公式求JI的值(要求满足精度0.0005,即某项小于0.0005时停止送代):程序运行后,如果输入精度为0.0005,则程序输出为3.14…。
double fun(double eps)
{ double s=1,t=1./3;
第三处if(strcmp(a[i].name,a[j].name)>0)
计算机二级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语言省二级考试上机模拟试题库及答案
C语言省二级考试上机模拟试题库试题整理时间:2010、3、7 一、求最值问题1,以下程序中"____ N ____"是根据程序功能需要填充部分,请完成程序填充(注意:不得加行、减行、加句、减句,否则后果自负)。
该程序功能:对x=1,2,...,10,求f(x)=x*x-5*x+sin(x)的最大值。
#include <stdio.h>#include <math.h>#define f(x) x*x-5*x+sin(x)void main(){ int x; float max;max=f(1);for(x=2;x<=10;x++)if(max<f(x)) max=f(x);printf("%f\n",max);}2,设计程序:对x=1,2,...,10,求函数f(x)=x-10*cos(x)-5*sin(x)的最大值,并将该数以格式"%.3f"写到考生目录中Paper子目录下的新建文件design.dat。
#include <stdio.h>#include <math.h>void main(){ FILE *p;float f(float),max,x;max=f(1);for(x=2;x<=10;x++)if(max<f(x)) max=f(x);printf("%.3f",max);p=fopen(“design.dat”,”w”);fprintf(p, "%.3f",max);fclose(p);}float f(float x){return (x-10*cos(x)-5*sin(x));}3,设计程序:z=f(x,y)=(3.14*x-y)/(x+y),若x、y取值为区间[1,6]的整数,找出使z取最小值的x1、y1,并将x1、y1以格式"%d,%d"写到考生目录中Paper子目录下的新建文件design.dat。
省二级C语言上机题库浙江
第二部份 C程序设计上机操作题 (2)一、数列求和 (2)二、最大公约数、最小公倍数 (6)三、排序算法 (7)四、数组 (8)五、求整数n的各位数字及各数字之和 (11)六、平面上各点之间的距离 (13)七、数制转换 (16)八、字符串处理 (17)九、最大值与最小值 (23)十、斐波那契(Fibonacci)数列 (26)十一、水仙花、完数、回文数与亲密数 (27)十二、方程求根 (29)十三、回文数、因子、质因子、素数 (32)十三、其他算法 (33)第二部份 C程序设计上机操作题一、数列求和1、程序调试题试题一该程序功能:输入x和正数eps,计算多项式1-x+x*x/2!-x*x*x/3!+...的和直到末项的绝对值小于eps为止。
#include <>#include <>void main(){ float x,eps,s=1,t=1,i=1;scanf("%f%f",&x,&eps);do {/***** 1 *****/t=-t*x/++i; 6f写入到考生目录中Paper子目录下的新建文件中。
#include<>#include<>void main(){FILE *p;int i; float x=,t=,y=;float a[10]={,,,,,,,,,};.6f.的值,并将其以格式"%f"写到考生目录中Paper子目录下的新建文件中。
#include <>#include <>void main(){ FILE *p; int i; float x=,t,y;float a[10]={,,,,,,,,,};.+12!的值,并将计算结果以格式"%ld" 写入到考生目录中Paper子目录下的新建文件中#include <>void main(){ FILE *p; long s=1,k=1; int i;.的值,并将其值以格式"%f"写到考生目录中Paper子目录下的新建文件中。
二级语言程序设计上机题汇总
二级(C语言程序设计)上机题汇总一、程序调试题(一)程序填空练习一:/*该程序功能:对x=1,2,。
,10,f(x)=x*x*-5*x+sin(x)的最大值。
*/#include <>#include <>#define f(x) x*x-5*x+sin(x)void main(){ int x; float max;____ max=f(1);____for(x=2;x<=10;x++)___if( max<f(x)) max=f(x);___printf("%f\n",max);}练习二:/*该程序功能:输入三个整数,按由小到大的顺序输出这三个数。
*/#include <>void swap(__int *pa, int *pb____){ /*交换两个数的位置*/int temp;temp = *pa;*pa = *pb;*pb = temp;}void main(){int a,b,c,temp;scanf("%d%d%d",&a,&b,&c);if(a>b)swap(&a,&b);if(b>c)swap(&b,&c);if(__a>b___)swap(&a,&b);printf("%d,%d,%d",a,b,c);}练习三:/*该程序功能:将输入的十进制正整数n通过函数Dec2Bin转换为二进制数,并将转换结果输出。
*/#include <>void Dec2Bin(int m){int bin[32],j;for(j=0;m!=0;j++){bin[j]= __m%2___;m=m/2;}for(;j!=0;j--)printf("%d", ____bin[j-1]_ _____ );}void main(){int n;scanf("%d",&n);Dec2Bin(n);}练习四:/*该程序功能:输入数组x[7],调用函数f,去除数组中的负数,输出结果为:1 3 4 6*/ #include <>void f(int *a,int *m){ int i,j;for(i=0;i<*m;i++)if(a[i]<0) {for(j=i--;j<*m-1;j++) a[j]=a[j+1];___*m=*m-1;___}}void main(){ int i,n=7,x[7]={1,-2,3,4,-5,6,-7};_ f(x,&n);_____for(i=0;i<n;i++) printf("%5d",x[i]);printf("\n");}练习五:/*该程序功能:输出6~1000之间的完数(1个数的因子和等于其自身的数:6=1+2+3,28=1+2+4+7+14,则6,28都是完数)*/#include <>void main(){ int i,j,s;for(i=6;i<=1000;i++) {___s=1;___for(j=2;___j<i___;j++) if(i%j==0) s+=j;if(s==i) printf("%d\n",s);}}练习六:/*该程序功能:输入整数n(n>0),求m使得2的m次方小于或等于n,2的m+1次方大于或等于n。
2020年全国计算机等级考试二级c语言上机精选题库(共60套)
return((double)r/m);
}
main()
{
int age[N], i, d[M];
FILE *out ;
for(i=0; i<N; i++)
age[i]=(int)(115*rnd());
printf("The original data :\n");
for(i=0; i<N; i++)
}
二、改错题
下列给定程序中,函数fun的功能是:根据整型行参m,计算如下公式的值。
y=
例如,若m=2000,则应该输出:0.000160。
请改正程序中的错误,使它能得出正确的结果。
#include <conio.h>
#include <stdio.h>
/********found********/
fun(int m)
h= a[i];
*s =h;
}
main()
{
STU a[N] =
{
{"A01", 81}, {"A02", 89}, {"A03", 66}, {"A04", 87},
{"A05", 77}, {"A06", 90}, {"A07", 79}, {"A08", 61},
{"A09", 80}, {"A10", 71}
printf((i+1)%10==0?"%4d\n":"%4d",age[i]);
全国计算机等级考试(二级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语言程序设计》课后题及参考答案第一章程序设计基本概念1.1 在TRUBO C环境中用RUN命令运行一个C程序时,所运行的程序的后缀是______。
答案:.exe1.2 C语言源程序文件的后缀是_____,经过编译后,生成文件的后缀是_____,经过连接后,生成文件的后缀是__ ___。
答案:.c .obj .exe1.3 结构化程序由_____、_____、_____三种基本结构组成。
答案:顺序、选择、循环第二章 C程序设计的初步知识一、选择题2.1 以下选项中正确的整型常量是A)12. B)-20 C)1,000 D)4 5 6答案:B2.2 以下选项中正确的实型常量是A)0 B)3. 1415 C)0.329×10(2)(10的2次方)D).871答案:D2.3 以下选项中不正确的实型常量是A)2.607E-1 B)0.8103e 2 C)-77.77 D)456e-2答案:B2.4 以下选项中不合法的用户标识符是A)abc.c B)file C)Main D)PRINTF答案:A2.5 以下选项中不合法的用户标识符是A)_123 B)printf C)A$ D)Dim答案:C2.6 C语言中运算对象必需是整型的运算符是A)% B)/ C)! D)**答案:A2.7 可在C程序中用作用户标识符的一组标识符是A)void define WORDB)as_b3 _123 IfC)For -abc caseD)2c DO SIG答案:B2.8 若变量已正确定义并赋值,符合C语言语法的表达式是A)a=a+7; B)a=7+b+c,a++ C)int(12.3%4) D)a=a+7=c+b答案:B2.9 以下叙述中正确的是A)a是实型变量,C允许进行以下赋值a=10,因此可以这样说:实型变量中允许存放整型值。
B)在赋值表达式中,赋值号右边既可以是变量也可以是任意表达式。
国二考试C语言程序的设计上机100题与答案
使用说明:此100套编程题来源于清华同方光盘电子出版的《全国计算机等级考试二级C语言程序设计上机考试题库》,特此声明。
国二考试二级C语言程序设计100套题,各个版本的书大概都差不多。
以下是本人精心整理的题库100题(包括答案以及题目要求),希望给悉心复习的你一点小小的启发和帮助啦。
因为写得匆忙,如果有不恰当之处,恳请各路编程高手给予批评指正(本人纯属业余的编程爱好者)!注:答案仅供参考!!——作者100套题第1套编程题#include <stdio.h>#define M 100void fun (int m,int *a,int *n){int i;*n=0;for(i=1;i<=m;i++)if(i%7==0||i%11==0)a[(*n)++]=i;}main( ){ int aa[M],n,k;fun(50,aa,&n);for(k=0;k<n;k++)if((k+1)%20==0) printf("\n");else printf("%4d",aa[k]);printf("\n") ;}题目要求:将1~m之间能被7或11整除的所有整数放入数组a,通过n返回数的个数。
如m=50,则程序输出:7 11 14 21 22 28 33 35 42 44 49.100套题第2套编程题#include <stdio.h>void fun( int m, int *k, int xx[] ){int i,j,t=0;for(i=4;i<m;i++){for(j=2;j<i;j++)if(i%j==0){xx[t++]=i;break;}}*k=t;}main(){int m, n, zz[100];printf( "\nPlease enter an integer number between 10 and 100: " ); scanf( "%d", &n );fun( n, &m, zz );printf( "\n\nThere are %d non-prime numbers less than %d:", m, n ) ;for( n = 0; n < m; n++ )printf( "\n %4d", zz[n] );}题目要求:将所有大于1小于整数m的非素数存入xx数组,其个数通过k返回。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
计算机基础-操作注意事项学习方法:将实验指导书上操作练习一遍,看操作熟练的同学完整地做一遍考题考试:提前15分钟到考场,带学生证/身份证/准考证鼠标好用否?;考试中出现异常(如黑屏、空白word文档)立刻报告老师窗口关一个再打开下一个;”做题”可修改,”重做”则覆盖;图表有”示例图1”等参考对比;考生目录有”素材”文件夹;剪贴画、声音等-C:\考生素材\...Outlook: 工具-账户/选项接收、发送邮件IE: 工具-Internet选项-常规/高级收藏夹主页保存-文件-另存为(注意保存格式的选择)主页中某链接的保存-点击进链接-…网络属性及IP地址等:网上邻居-属性-本地连接-属性-Internet协议(TCP/IP)-属性-高级控制面板(经典视图)-系统-硬件-设备管理器-网络适配器-…Ethernet属性WindowsXP:为notepad.exe (mspaint.exe)在桌面的开始-程序-附件文件夹内建快捷方式(或其它位置处):开始(右键)-属性-经典开始菜单-自定义-添加-浏览(c:\WINDOWS\system32\notepad)-指定文件夹-重命名设数值、货币格式、度量衡、短日期格式等:控制面板-区域和语言选项-自定义设置屏幕刷新频率为80赫兹:控制面板-显示-设置-高级-监视器计算器计算(科学型):5 mod 3 (取余=2)not 0(=1) 5 and 3 (=1) 5 or 0(=1)Xor…Word2003:“、”-中文状态下按”\” T-空格T破折号-全角状态-页面设置:-页边距-装订线位置、-纸张-(打印)纸张大小16K、-版式-设置(页眉和页脚)奇偶页/首页不同、-文档网络-“指定行和字符网络”/ 设置每页40行,每行35字将文中所有“青年”替换为“花朵”:编辑-替换页眉、页脚:视图任选一幅剪贴画插入文中:插入-图片-来自文件-C:\考试素材\剪贴画设置图片阴影样式13/三维效果样式:选定图片-绘图工具栏(窗口最下方)-…设置字体”空心、阳文、阴影”:格式-字体文字效果为”闪烁背景”:格式-字体-文字效果段前间距设为12磅:格式-段前间距(?行)-磅0.5cm-0.5厘米将第一、二段合并:光标移至第一段末-按Delete键删除段尾回车符设置页面边框为示例中的艺术型边框(如苹果):格式-边框和底纹-页面边框-艺术型分栏:将指定段落分栏-选定段落(段落尾部回车符不要选)-格式-分栏分隔线首字下沉:格式各种属性设置(如设置”键入时检查拼写”):工具-选项使用格式刷:选定要复制格式的文字段落-点击工具栏上”格式刷”-刷要设置格式的文字Excel2003:设置表格数值格式、对齐方式、底纹图案”5%灰色”、合并单元格等:选定单元格-右键-设置单元格属性设置行高、列宽:选定整行/列-右键-行高/列宽最适合的行高:格式-行-行高设置<60分的单元格以红色显示数据、底纹为黄色:条件格式-格式-图案统计A2到A5列,工资>=60并且<=80的人数写到D5单元格内:光标到D5单元格-输入公式=countif(A2:A5,">=60")-countif (A2:A5,">80")“自定义填充序列”等属性设置:工具-选项-自定义序列按右键拖拉筛选列出所有分数在480分以上的男生:在表格中分行列出如下条件--高级筛选分类汇总:先按指定字段排序-分类汇总数据透视图:数据-数据透视图拆分窗口:窗口-拆分将某列金额增加10%:在另空白列输入公式-拖拉-复制该列-选择性粘贴(数值)至原列Powerpoint2003:演示文稿高度、宽度、编号起始值:页面设置在幻灯片日期区插入日期:插入-日期和时间-全部应用剪贴画建立超级链接到第3张幻灯片:选定图-右键-超链接-书签-第3张幻灯片3 设置剪贴画放映效果为自右侧飞入:选定图-右键-自定义动画-添加效果-飞入-方向链接颜色设置、配色方案等:格式-幻灯片设计-配色方案-编辑-自定义幻灯片设计、幻灯片版式对各种属性设置:工具-选项对剪贴画设置大小及水印效果:选定图-右键-设置图片格式-图片-图像控制-颜色-冲蚀上机程序调试及程序设计练习一、程序填空(1)找Armstrong(水仙花)数:371=3*3*3+7*7*7+1*1*1#include <stdio.h>#include<math.h>void main(){ int i,a,b,c;for(i=100;i<=999;i++){ a=i/100;_______1_______ // b=i%100/10;c=i%10;if (________2________) // a*a*a+b*b*b+c*c*c = = iprintf("%d is a Armstrong number!\n",i);}}(2)输入1个整数后,输出该数的位数。
(例:输入3214则输出4,输入-23156则输出5)。
#include <stdio.h>void main(){ int n,k=0;scanf("%d",&n);while( _____1_____ ){ // n!=0k++;_____2_____; // n=n/10}printf("%d\n",k);}(3)求输入的整数各位数字之和,如输入234则输出9,输入-312则输出6。
#include <stdio.h>#include <math.h>void main(){ int n,s=0;scanf("%d",&n);______ 1 ______ // if (n<0) n=-n;while(n!=0) {______ 2 ______ // s+=n%10;n=n/10;}printf("%d\n",s);}(4)调用函数f,将一个整数首尾倒置。
例如:若程序输入12345,则输出54321;若程序输入-34567,则输出-76543。
#include <stdio.h>#include <math.h>long f(long n){ long m,y=0; m=fabs(n);while(m!=0) {y=y*10+m%10;____1____ // m=m/10 ;}if(n>=0) return y;else _____2_____ // return -y ;}void main(){printf("%ld\t",f(12345)); printf("%ld\n",f(-34567));}(5)调用函数f,从字符串中删除所有的数字字符。
#include <stdio.h>#include <string.h>#include <ctype.h>void f(char *s){ int i=0;while(s[i]!='\0'){if(isdigit(s[i])) ____1____(s+i,s+i+1); // strcpy___2___i++;} // else}void main(){ char str[80];gets(str); f(str); puts(str);}(6)调用find函数在输入的字符串中查找是否出现"the"这个单词。
如果查到返回出现的次数,如果未找到返回0。
#include <stdio.h>int find(char *str){ char *fstr="the";int i=0,j,n=0;while (str[i]!='\0'){for(______1______) // j=0; j<3; j++if (str[j+i]!=fstr[j]) break;if (______2______) n++; // j>=3i++;}return n;}void main(){ char a[80];gets(a);printf("%d",find(a));}(7)输入的一个小写字母,将字母循环后移5个位置后输出。
例如:"a"变成"f","w"变成"b"。
#include <stdio.h>void main(){ char c;c=getchar();if(______1______) // c>='a'&&c<='u'c=c+5;elseif (c>='v' && c<='z')______2______ // c=(c-'a'+5)%26+'a';//c=c-(…v‟-…a‟);putchar(c);}(8)将字符串s中所有的字符'c'删除。
#include <stdio.h>void main(){ char s[80];int i,j;gets(s);for(i=j=0; ______1______; i++) // s[i] != '\0'if(s[i] != 'c'){ s[j]=s[i];______2______ // j++;}s[j]='\0';puts(s);}(9)对x=1,2,……,10,求f(x)=x*x-5*x+sin(x)的最大值。
#include <stdio.h>#include <math.h>#define f(x) x*x-5*x+sin(x)void main(){ int x; float max;______1______ // max=f(1);for(x=2;x<=10;x++)______2______ // if (f(x)>max) max=f(x);printf("%f\n",max);}(10)输入三个整数,按由小到大的顺序输出这三个数。
#include <stdio.h>void swap(______1______) // int *pa, int *pb{ /*交换两个数的位置*/int temp;temp = *pa;*pa = *pb;*pb = temp;}void main(){ int a,b,c,temp;scanf("%d%d%d",&a,&b,&c);if(a>b)swap(&a,&b);if(b>c)swap(&b,&c);if(______2______) // if ( a>b )swap(&a,&b);printf("%d,%d,%d",a,b,c);}(11)调用函数f,去除数组中的负数,输入数组x[7],输出结果为:1 3 4 6 #include <stdio.h> // 数组元素的删除void f(int *a,int *m){ int i, j ;for(i=0;i<*m;i++)if(a[i]<0) {for(j=i--;j<*m-1;j++) a[j]=a[j+1];_____1_____; // *m = *m-1;}}void main(){ int i,n=7,x[7]={1,-2,3,4,-5,6,-7};_______2_______; // f (x, &n) ;for(i=0;i<n;i++) printf("%5d",x[i]);printf("\n");}(12)调用函数f计算代数多项式1.1+2.2*x+3.3*x*x+4.4*x*x*x+5.5*x*x*x*x当x=1.7时的值。