
char *b = "I am a teacher!"
指针a 指向字符串常量的首地址 不能修改字符串里面的值
修改为
char a[100]= "I am a boy !"//最后保证数组a有足够的长度存下数销枝组b的内容
char b[] = "I am a teacher!"
其他模斗渗的不用变 就可旦脊以了
非法引用问题原因:这里i和j混用。for(j=1j<=mi++) // 这里j为条件,但是i++。圆模
{
temp=a[i]
for(j=ij>扒纤0j--)
a[j]=a[j-1]
a[0]=temp
}
修改后,但是还是出现死循环,你的算法需要调整。
#include<stdio.h>
#define MAX_LEN 10000
void main()
{
int last(int a[],int n)
int a[MAX_LEN] = {0}
int n,i
printf("Input n(n must be a natural number less than 10000):")
scanf("%d",&n)
if(n>MAX_LEN||n<=0)
printf("%d is out of range of valid values."春腔仿,n)
else
{
for(i=0i<ni++)
a[i]=i+1
printf("Last No. is:%d\n",last(a,n))
}
}
int last(int a[],int n)
{
int b[MAX_LEN] = {0}
int i=0,j,m,k,temp,count=0
while(n>3)
{
m=n%3
i=0
for(j=0j<nj++)
{
if((j+1)%3!=0)
{
b[i]=a[j]
i++
}
}
for(j=0j<=ij++)
a[j]=b[j]
n=i+1
for(j=1j<=mj++)
{
temp=a[j]
for(k=jk>0k--)
a[k]=a[k-1]
a[0]=temp
}
}
return a[1]
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)