1200字范文,内容丰富有趣,写作的好帮手!
1200字范文 > 二级考试c语言中 星号与字母 题型总结 计算机等级C语言上机考试编程题分类总结.doc...

二级考试c语言中 星号与字母 题型总结 计算机等级C语言上机考试编程题分类总结.doc...

时间:2024-03-26 14:48:22

相关推荐

二级考试c语言中 星号与字母 题型总结 计算机等级C语言上机考试编程题分类总结.doc...

计算机等级C语言上机考试题分总结

(一)、数学题目:5、6、11、14、34、48、49

编程的题目中,如果是数学题目,编程时用到阶乘或者是奇数项的积,则首先给变量赋初值为1,不能赋初值为0,同时把变量的类型定义为实型而不是整型。数学题目中结果都需要返回,如果说函数的类型是void 则是通过指针返回,如果不是void,则必须用return 返回。

如果表达式中的值为1,则在编写程序时用1.0.而不能用1。C 语言中的除法的运算原则是整数除以整数,结果还是整数。

数组中存储数据时以下标来存储的,在数组中下标从0 开始。

解题详解:

6、观察表达式,左边求出的是p 的值的一半,所以右边的表达式的值的计算好后应该乘以2 才能得到p 的值,观察表达式的右边,右边表达式中有分子、分母以及各表达式的值的和,分子是阶乘、分母是奇数项的积,分子除以分母得到一项的值。由此定义三个变量:s1 代表分子,s2 代表分母、s3 代表各项的和,定义一个整型变量i,让变量i 从1 开始。知道循环的结束。

int i;

double s1=1.0,s2=1.0,s3=0.0;

for(i=1;s1/s2>=eps;i++)

{

s3+=s1/s2;

s1*=i;

s2*=(2*i+1);

}

return 2*s3;

注意:此题目中要特别注意,循环语句的表达式2 的判断条件是s1/s2>=eps,而不是i<=n,循环语句的语句的顺寻不能颠倒,即先加之后再计算。

11、此题中要求能整除x,那么x 应该为分子,而不是分母,把满足条件的数组放到pp 所指的数组中,即pp 数组应用一个整型的变量来做pp 下标,数组下标从0 开始,所以定义一个整形变量k 并且赋初值为0;满足条件的个数通过形参传回。

int i,k=0;

for(i=1;i<=x;i++)

if(x%i==0&&i%2==1) pp[k++]=i;

*n=k;

备注:此题目中不能把i 初值定义为0,否则程序运行时得不到结果。

14、首先看清题意,题目中要求是小于形参n,不包括n,能被3 与7 整除,两者用逻辑与连接,平方根用平方根的函数sqrt;此题中要求的是自然数的和的平方根,而不是平方根的和,所以要先把满足条件的数加起来后再开方。定义一个整型变量i,让该变量由1 直到n-1,用循环实现,一个整形变量s,让该变量存放的是满足条件的数的和,由于s 为全局变量,故应该赋初值为0;

int i,s=0;

for(i=1;i

if(i%3==0&&i%7==0)

s+=i;

return sqrt(s);

34、观察表达式,表达式的分子为x 的n 次冥,分母为数字的阶乘,s 为表达式的累加和,定义三个变量s1 为分子,s2 为分母,s 为分子除以分母的和。

float s1=1.0,s2=1.0,s=1.0;

int i;

for(i=1;i<=n;i++)

{

s1*=x;

s2*=i;

s+=s1/s2;

}

return s;

备注:此时s 的值不能赋初值为0;如果s 得初值为0,此时表达式的值中没有第一项的值。并且必须用return 返回。

48、该表达式的分子均为1,分母为该项和下一项的积,s 为最后表达式的累加和,定义一个整形变量I,用于代表某一项的序号,则i+1 到表达的是下一项的序号。

float s=0.0;

int i;

for(i=1;i<=n;i++)

s+=1.0/(i*(i+1));

return s;

备注:分子为1.0,而不能是1;因为c 语言中规定,整型除以整型,得到的值仍然为整型,i+1 必须用括号括起来,如果没有用括号括起来,根据乘法运算规则,则先运算i*i,再运算i*i+1 的值。

49、在该表达式中,分子分母都是阶乘,可以看做是三个数之间的运算,其中的每一个数都是另外一个数的阶乘,定义三个变量,其中s1 代表的是m 的阶乘,s2代表的n 的阶乘,s3 代表的是m-n 的阶乘,表达式的值可以计算为:s1/(s2*s3);三个变量都是代表的是阶乘,所以在赋初值时应该赋初值为1 或者是1.0;

float s1=1.0,s2=1.0,s3=1.0;

int i;

for(i=1;i<=m;i++) s1*=i;

for(i=1;i<=n;i++) s2*=i;

for(i=1;i<=m-n;i++) s3*=i;

return s1/(s2*s3);

(二)、把满足条件的数放到数组中4、12、25、35、37

在做该类题目时,看清题目的要求,根基题目的要求解题,若只是把满足条件的删除或者是保留,则该类题目首先要定义一个整型变量并且赋初值0,根据题目意思把满足条件的存放到数组中,数组的下标同时加一往后走一个位置,如果是字符串类型的题目,在最后还要加上字符

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。