谁有蓝桥杯java试题的C试题,急需

蓝桥杯c语言历年试题_百度知道
蓝桥杯c语言历年试题
总之越多越好啦.com求蓝桥杯c语言的历年试题,还有模拟题之类的,请发送至邮箱@qq
您可能关注的推广
c语言的相关知识
其他1条回答
你也参加蓝桥杯啦
额、是的,你有相关的练习题么?
其他类似问题
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁蓝桥杯 2011年第二届C语言初赛试题(1)
串&abcd&每个字符都向右移位,最右的移动到第一个字符的位置,就变为&dabc&。这称为对串进行位移=1的轮换。同理,&abcd&变为:&cdab&则称为位移=2的轮换。
下面的代码实现了对串s进行位移为n的轮换。请补全缺失的代码。
void shift(char* s, int n)
int len = strlen(s);
if(len==0)
if(n&=0 || n&=len)
char* s2 = (char*)malloc(_________);
q = s2 + n %
*q++ = *p++;
if(q-s2&=len)
*q = ___________;
strcpy(s,s2);
#include&iostream&&&
#include&cstdlib&&&
#include&cstring&&&
#include&cstdio&&&
void shift(char *s,int n)&
&&& char *p;&
&&& char *q;&
&&& cout&&s&&&
&&& int len=strlen(s);&
&&& if(n&=0 || n&=len)&
&&& char *s2=(char *)malloc((len+1)*sizeof(char));& //分配len+1个空间&&
&&& q=s2+n%&
&&& while(*p)&
&&&&&&& *q++=*p++;&
&&&&&&& if(q-s2&=len)&
&&&&&&& {&
&&&&&&&&&&& *q='\0';&
&&&&&&&&&&& q=s2;&
&&&&&&& }&
&&& strcpy(s,s2);&
&&& free(s2);&
int main()&
&&& char s[10]=&abcd&;& //数组存储字符串&&
&&& shift(s,2);&
&&& cout&&s&&&
&&& return 0;&
#include&iostream&
#include&cstdlib&
#include&cstring&
#include&cstdio&
void shift(char *s,int n)
&cout&&s&&
&int len=strlen(s);
&if(n&=0 || n&=len)
&char *s2=(char *)malloc((len+1)*sizeof(char));&//分配len+1个空间
&while(*p)
&&*q++=*p++;
&&if(q-s2&=len)
&&&*q='\0';
&strcpy(s,s2);
&free(s2);
int main()
&char s[10]=&abcd&;&//数组存储字符串
&shift(s,2);
&cout&&s&&
&return 0;
注意:1、len=strlen(s),得到的是字符串s的字符个数,不包括结尾'\0',但是存储空间必须大于等于len+1才能完整存储字符串s,所以在分配同样大小的s2时要分配len+1个空间
&&& 2、char s[10]=&abcd&,作者之前一直错误的写成char *s=&abcd&,运行结果一直是unhandled exception int& x:Access Violation,指针乱指。后来百度了一下strcpy百度百科才知道。
您对本文章有什么意见或着疑问吗?请到您的关注和建议是我们前行的参考和动力&&
您的浏览器不支持嵌入式框架,或者当前配置为不显示嵌入式框架。

我要回帖

更多关于 蓝桥杯java试题 的文章

 

随机推荐