2013年福建省计算机二级(c语言真题)编程题

2019-05-18 19:27

2013年编程题

2sinx?ex1、 打开程序Cprog441.c,完成其中的函数fun (x),该函数计算数学表达式:的

cosx?1.2值。例如:fun (1.65)=6.424

#include #include double fun(double x) {/**/

return (2*sin(x)+exp(x))/(cos(x)+1.2); /**/ }

void main() {

printf(\ getch(); }

2、 打开程序Cprog442.c,完成其中的函数Reverse(unsigned int n),该函数的功能是:返回

整数n(1

#include

long int Reverse(unsigned int n) {/**/

int a[5],i,len=0,result=0; while (n!=0) {

a[len++]=n; n/=10; }

for (i=0;i

result=result*10+a[i]; }

return result; /**/ }

void main() {

unsigned int a;

printf(\ scanf(\

printf(\

1

2013年编程题

getch(); }

3、 打开程序Cprog451.c,完成其中的函数fun(x,n),该函数计算数学表达式:

3xn

(2x?1)(x?3)?0.8的值。例如:fun(2.3, 5)=9.713

#include #include

double fun(double x,int n) {/**/

return 3*pow(x,n)/((2*x-1)*(x+3)+0.8); /**/ }

void main() {

printf(\ getch(); }

4、 打开程序Cprog452.c,完成其中的函数DecTohex(unsigned int data, int hex[30], int

*resultlen),该函数的功能是:将十进制数data转化为对应的十六进制数,十六进制数的各位依次存储在数组hex中,*resultlen保存转化结果的位数。例如: 输入:100

输出:Hex number is:64 include

void DecToHex(unsigned int data,int hex[30],int *resultlen) {/**/ int i=0;

while (data!=0) {

hex[i++]=data; data/=16; }

*resultlen=i; /**/ }

void main() {

unsigned int data,hex[30]; int i,len=0;

scanf(\

DecToHex(data,hex,&len);

2

2013年编程题

printf(\ for(i=len-1;i>=0;i--) if(hex[i]>9)

putchar(hex[i]-10+'A'); else

putchar(hex[i]+'0'); printf(\ getch(); }

(x?0)?x-1 ? (x?0) 5、 完成程序Cprog461.c中的fun( )函数,使其计算:fun(x)?? 0 ?x?1 (x?0)?例如:输入:0 输出:fun(0.000)=0.000

输入:15 输出:fun(15.000)=16.000 输入:-6 输出:fun(-6.000)=-7.000 #include double fun(float x) {/**/

if (x<0) return x-1; if (x==0) return 0; if (x>0) return x+1; /**/ }

void main() {

float x;

printf(\ scanf(\

printf(\ getch(); }

6、 打开程序Cprog462.c,完成其中的函数sort(int a[ ], int n ,int lastnum),该函数的功能是:

将具有n个元素的数组a中最后面的lastnum个元素进行从小到大排序,其余元素不变。例如:数组10个元素为:1,-2,3,-4,5,-6,7,-8,9,-10,lastnum为3时,对最后面的3个元素排序后,输出的10个数组元素为:1,-2,3,-4,5,-6,7,-10,-8,9。

#include

void Sort(int a[],int n,int lastnum) {/**/

int i,j,max,temp;

for (i=1;i<=lastnum;i++) {

3

2013年编程题

max=n-i;

for (j=n-i-1;j>=n-lastnum;j--) if (a[max]

void main() {

int a[10]={1,-2,3,-4,5,-6,7,-8,9,-10},i; Sort(a,sizeof(a)/sizeof(int),3); for( i=0;i<10;i++) printf(\ printf(\ getch(); }

7、 完成程序Cprog471.c中的fun(float x)函数,使其按下列方案计算利润提成(利润为x)

(x?1)?0.05x ?0.5?0.06(x-1) (1?x?3)? fun(x)??(3?x?5)?1?0.07(x-3) ? (x?5)?2?0.09(x-5) 例如:输入:1 输出:fun(1.00)=0.05 输入:2 输出:fun(2.00)=0.56 输入:4.5 输出:fun(4.50)=1.11 (1.105) 输入:6 输出:fun(6.00)=2.09

#include float fun(float x) {/**/

if (x<=1) return 0.05*x;

else if (x<=3) return 0.5+0.06*(x-1); else if (x<=5) return 1+0.07*(x-3); else return 2+0.09*(x-5); /**/ }

void main() {

float x;

4

2013年编程题

printf(\ scanf(\ if(x<0)

printf(\ else

printf(\ getch(); }

8、 打开程序Cprog472.c,完成其中的函数fun(int a[N][N]),该函数的功能是:将二维数组a

表示的矩阵中的N个对角线元素进行从小到大的排序,其它元素不变。例如:

234??1??5?6?7?8??,对角线元素排序后, 矩阵排序前为:??9101112???13?14?1516??234??-6??51??7?8? 矩阵成为:??9101112????13?14?1516?#include #define N 4

void fun(int a[N][N]) {/**/

int i,j,min,temp; for (i=0;i

min=i;

for (j=i+1;ja[j][j]) min=j; if (min!=i) { temp=a[min][min]; a[min][min]=a[i][i]; a[i][i]=temp; } } /**/ }

void main()

{ int a[N][N]={{1,2,3,4},{-5,-6,-7,-8},{9,10,11,12},{13,-14,-15,16}},i,j; fun(a);

for( i=0;i

5


2013年福建省计算机二级(c语言真题)编程题.doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:在全市县域经济工作会议上的讲话

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: