设为首页 加入收藏

TOP

C语言编程笔试题(第三十三套)
2014-11-24 01:20:14 来源: 作者: 【 】 浏览:5
Tags:语言编程 试题 三十三

编程题:


49.请编写函数fun,其功能是:将s所指字符串中下标为偶数同时ASCII值为奇数的字符删除,s中剩余的字符形成的新串放在t所指的数组中。


例如,若s所指字符串中的内容为ABCDEFGl2345,其中字符C的ASCII码值为奇数,在数组中的下标为偶数,因此必须删除;而字符1的ASCII码值为奇数,在数组中的下标也为奇数,因此不应当删除,其他依此类推。最后t所指的数组中的内容应是BDFl2345。


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


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


#include


#include


#include



void fun(char *s, char t[])


{


}



main()


{


char s[100], t[100];


clrscr();


printf(“\nPlease enter string S:”);


scanf(“%s”, s);


fun(s, t);


printf(“\nThe result is : %s\n”, t);


}



51.请编写函数fun,其功能是:将所有大于1小于整数m的非素数存入xx所指数组中,非素数的个数通过k传回。


例如,若输入17,则应输出:9和4 6 8 9 10 12 14 15 16。


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


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


#include


#include



void fun( int m, int *k, int xx[] )


{


}



main()


{


int m, n, zz[100];


clrscr();


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] );


}



改错题:


84.下列给定程序中,函数fun的功能是:将十进制正整数m转换成k(2≤k≤9)进制数,并按位输出。例如,若输入8和2,则应输出1000(即十进制数8转换成二进制表示是1000)。


请改正fun函数中的错误,使它能得出正确的结果。


注意:不要改动main函数,不得增行或删行,也不得更改程序的结构!


试题程序:


#include


#include



/********found********/


fun(int m,int k)


{


int aa[20],i;


for(i=0;m;i++)


{


/********found********/


aa[i]=m/k;


m/=k;


}


for( ; i; i– )


/********found********/


printf(“%d”, aa[i] );


}



main()


{


int b,n;


clrscr();


printf( “\nPlease enter a number and a base:\n” );


scanf( “%d%d”,&n,&b );


fun( n, b );


printf(“\n”);


}




86.下列给定程序中,函数fun的功能是:把主函数中输入的3个数,最大的放在a中,最小的放在c中。例如,输入的数为:55 12 34,输出结果应当是:a=55.0,b=34.0,c=12.0。


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


注意:不要改动main函数,不得增行或删行,也不得更改程序的结构。


试题程序:


#include



void fun(float *p,float *q,float *s)


{


float *k;


if ( *p<*q )


/********found********/


{


k=*p;


*p=*q;


*q=k;


}


/********found********/


if ( *s<*p )


/********found********/


{


k=*s;


*s=*p;


*p=k;


}


if( *q<*s )


/********found********/


{


k=*q;


*q=*s;


*s=k;


}


}


main()


{


float a,b,c;


printf(“Input a b c:”);


scanf(“%f%f%f”,&a,&b,&c);


printf(“a=%4.1f,b=%4.1f,c=%4.1f\n\n”,a,b,c);


fun(&a,&b,&c);


printf(“a=%4.1f,b=%4.1f,c=%4.1f\n\n”,a,b,c);


}


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇C语言编程笔试题(第三十二套) 下一篇C语言编程笔试题(第三十四套)

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: