二级C语言上机分类.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
二级C语言上机分类

第一类 删除或移动星号 1.假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:将字符串尾部的*号全部删除,前面和中间的*号不删除。 void fun(char *a ) {while(*a!=\0) a++; a--; while(*a==*) a--; *(a+1)=\0; } 改:a2=k/10 [2]return i;N [2]i [3]-1 2.假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:除了字符串前导的*号之外,将串中其他*号全部删除。void fun(char *a) { int i=0; char *p=a ; while(*p*p==*) { a[i]=*p; i++; p++;} while(*p){ if(*p!=’*’) { a[i]=*p; i++; } p++; } a[i]= \0; } 改:[1]int k=0;while(*p ||*q) 填:[1]i [2]ps[j] [3]tp 3.假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:使字符串的前导*号不得多于n个;若多于n个,则删除多余的*号;若少于或等于n个,则什么也不做,字符串中间和尾部的*号不删除。 例如,若字符串中的内容为*******A*BC*DEF*G****,假设n的值为4,删除后,字符串中的内容则应当是****A*BC*DEF*G****。oid fun(char *a,int n) { int i=0, k=0; char *p, *t; p=t=a; while(*t==*) { k++; t++;} if(kn) { while(*p) { a[i]= *(p+k-n) ; i++; p++; } a[i]=\0; } } 改:[1]t=1.0;return(s*2); .假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:只删除字符串前导和尾部的*号,串中字母之间的*号都不删除。形参n给出了字符串的长度,形参h给出了字符串中前导*号的个数,形参e给出了字符串中最后*号的个数。在编写函数时,不得使用C语言提供的字符串函数。 例如,若字符串中的内容为****A*BC*DEF*G*******,删除后,字符串中的内容则应当是A*BC*DEF*G。 void fun(char *a,int n ,int h, int e) {int i,j=0; for(i=h;i n-e ;i++) a[j++]=a[i]; a[j]=‘\0’ ; } 改:[1]fun(int x,int y,int z)return j; 5.假定输入的字符串中只包含字母和*号。请编写函数fun,它的功能是:将字符串中的前导*号全部移到字符串的尾部。 void fun(char *a) { int i=0,n=0 ; char *p ; p=a; while (*p==*) {n++ ; p++; } while (*p) { a[i]= *p ; i++; p++ ; } while(n!=0) { a[i]= * ;i++ ;n-- ; } a[i]= \0 ; }s[j++]=s[i];s[j]=\0;.请编写—个函数void fun(char *ss),其功能是:将字符串ss中所有下标为奇数位置上的字母转换为大写(若该位置上不是字母,则不转换)。 void fun(char *ss) { int i; for(i=0;ss[i]!=\0;i++) {if(i%2 ==1ss[i]=a ss[i]=z) ss[i]= ss[i] -32;} } 改:[1]for(i=strlen(t);i0;i--)if(t[j]t[j+1]) 填:[1]k [2]N [3]a[k][i] 第二类 数据组合 7.请编写函数fun,其功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数的千位和十位上,b数的十位和个位数依次放在c数的百位和个位上。 例如,当a=45,b=12,调用该函数后c=4152。 void fun( int a, int b, long *c) { *c=(a/10)*1000+(b/10)*100+(a%10)*10+b%10 ; }for(i=0;isl;i ++)t[2*sl]=\0;.请编写函数fun,其功能是:将两个两位数的正整数a、b合并形成一个整数放在c中。合并的方式是:将a数的十位和个位数依次放在c数

文档评论(0)

yurixiang1314 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档