C程上机题考试题2015春季学期(2)

2019-06-11 00:20

gets(a); fun(a,b); puts(b); }

13.函数void fun(char s[])的功能是:将s所指字符串中ASCII值为奇数的字符删

除。例如,若s所指字符串中的内容为:“ABCDEFG12345”,其中字符A的ASCII码值为奇数、?、字符1的ASCII码值也为奇数、?都应当删除,其它依此类推。最后s中内容是:“BDF24”。 #include void fun(char s[]) { }

void main() {char a[80]; gets(a); fun(a); puts(a); }

14.请编写一个函数int fun(long int x),它的功能是:判断整数x是否是同构数。

若是同构数,函数返回1;否则返回0。所谓“同构数”是指这样的数,它出现在它的平方数的右边。例如:输入整数5,5的平方数是25,5是25中右侧的数,所以5是同构数,输出\。要求x的值不大于10000。 #include int fun(long int x) { }

void main() {int x;

scanf(\ if(fun(x)==1) puts(\ else puts(\}

15.编写取子字符串函数void fun(char s1[],char s2[],int m,int n),其作用是将

字符数组s2中从第m个字符开始的共n个字符拷贝到数组s1中;若s2中剩余字符不足n个,则取到尾部。程序运行时,当输入\、4,3时应输出\;当我们输入\、4,6时应输出\。注意,这里是将1作为起始计数。 #include

void fun(char s1[],char s2[],int m,int n)

6

{ }

void main()

{static char a[100],b[100]; int s,len;

void fun(char s1[],char s2[],int m,int n); puts(\ gets(a);

puts(\ scanf(\ fun(b,a,s,len);

printf(\}

16. 编写函数void fun(char *str),将参数字符串中各单词首字母变大写,其余字

母变小写。输入输出在main中实现。如输入\输出\。单词以空格、逗号、句号分隔。 #include void fun(char *str) { }

void main() {char a[100]; gets(a); fun(a); puts(a); }

17. n个整数,前面各数循环顺序后移m个位置,最后m个数变成最前面m个数。写函

数void fun(int *p,int n,int m),实现上述功能。在main()中输入与输出。如下面程序输出 7 8 9 10 1 2 3 4 5 6 。注意,m可能大于n。 #include \

void fun(int *p,int n,int m) { }

void main()

{void fun(int *,int ,int );

int x[10]={1,2,3,4,5,6,7,8,9,10},i; fun(x,10,14); for(i=0;i<10;i++) printf(\

7

printf(\ }

18. 编写函数void fun(char *s1,char *s2),实现字符串s1与s2的交叉连接,连接

后得到的新字符串放在s1中。如输入abc12345,输出a1b2c345,若输入abcde123,则输出a1b2c3de。 #include #include

void fun(char *s1,char *s2) { }

void main()

{char a[100],b[100];

void fun(char *,char *); gets(a); gets(b); fun(a,b); puts(a); }

19. 传说可以根据两个人的生日来计算其缘分.方法:将两个人的生日各位相加,将得

到的数再一次各位相加,直到其值为一个一位数,此数即代表两个人的缘分.例如,两个生日为:19820523,19841111,则各位相加:1+9+8+2+5+2+3+1+9+8+4+1+1+1+1得:56;再5+6得11;再 1+1得2,即为两人的缘分.编写计算缘分程序,两个生日由键盘输入.

#include \int fun(long x,long y) { }

void main() {long x,y; int k;

scanf(\k=fun(x,y);

printf(\}

20. m个人围成一圈,1,2,3循环报数,报到3的人退出,并将退出的序号依次存到数

组p中,包括最后一个人的序号。到最后只余1人,输出最后留下的是第几号(最初的序号,以1起始)。若m=6,则输出n=1 3 6 4 2 5 1;若m=10,则输出n=4 3 6 9 2 7 1 8 5 10 4;若m=100,则输出n=91 3 6 9??100 58 91。函数int fun(int n ,int *p)实现上述功能,返回n个人中最后余的1人的

8

起始序号,并将退出的序号顺序写入p指向的数组中。 #include

int fun(int n ,int *p) { }

void main()

{int m,a[10000],i,num; scanf(\ num= fun(m,a);

printf(\ for(i=0;i

printf(\ printf(\}

9


C程上机题考试题2015春季学期(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:基于单片机的篮球计时计分器设计(C语言编程、含proteus仿真图)

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

马上注册会员

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