2、的程序。在main()函数中输入一个字符串(长度<20),调用函数fun将该字符串中的所有字符按ASCII码升序排序,然后再输出排序后的字符串。例如,输入edcba,则应输出abcde.。edcagsf 13下面程序的功能是依次取出字符串中所有数字字符,形成新的字符串,并取代原字符串;(如:abcd123efg456变为123456)。修改该程序,要求将红色部分用一个函数来实现。ABCD123EFG456 #include"stdio.h"main(){chars[15];inti,j;scanf("%s",s);for(i=
3、0,j=0;s[i]!=' ';i++)if(s[i]>='0'&&s[i]<='9'){s[j]=s[i];j++;}s[j]=' ';printf("Theresult:");printf("%s",s);}21编写带有函数的程序(函数名为:intfun(ints[],int*k)),功能是求出数组的最大元素在数组中的下标并存放在k所指的存储单元中。例如:输入如下整数876675896101301401980431451777则输出结果为:6,980。intfun(ints[],int*k){ }main(){inta[10]={
4、876,675,896,101,301,401,980,431,451,777};intk;fun(a,&k);printf("%d,%d",k,a[k]);}22在main()函数中,已有一个已排好序的整型数组,今输入一个整数,调用函数fun(),其功能是按原来排序的规律将它插入数组中。例如:原来数组的元素依次为4、6、8、41、56、77、102。若将42插入数组中,则插入后数组元素依次为4、6、8、41、42、56、77、89、102。fun( ){}main(){ints[8]={4,6,8,41,56,77,102};intm
5、,i;scanf("%d",&m);fun(s,m);for(i=0;i<8;i++)printf("%6d",s[i]);}23下面程序的功能是将字符数组s2中的全部字符拷贝到字符数组s1中。拷贝时,’ ’也拷贝过去,但’ ’后面的字符不拷贝。修改该程序,要求将红色部分用一个函数来实现。main(){chars1[80],s2[80];inti;scanf("%s",s2);for(i=0;s2[i]!=’ ’;i++)s1[i]=s2[i];s1[i]=’ ’;printf("s1:%s",s1);}31编写带有函数的程序(函
6、数名为:fun()),功能是将ss所指字符串中下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换,注意下标是从右向左0开始的)。例如:输入abbcc45ghNj,则应输出aBbCc45GhNj。#include"string.h"voidfun(){ }main(){chartt[81];printf("Pleaseentercharacter:");gets(tt);fun(tt);printf("Theresultis:%s",tt);}32在main()函数中,先从键盘上输入一个3行3列整型数组的各个元素的值,然后调用函
7、数fun(),其功能是计算并返回主对角线元素之和。33下面程序的功能是用冒泡法对10个整数按降序进行排序。修改该程序,要求将红色部分用一个函数来实现。main(){inta[11],i,j,t;printf("Input10numbers:");for(i=1;i<11;i++)scanf("%d",&a[i]);printf("");for(j=1;j<=9;j++)for(i=1;i<=10-j;i++)if(a[i]8、mbers:");for(i=1;i<11;i++)printf("%d",a[i]);}41编写带有函数的程序(函数名为:intfun()),功能是从整数1到