#include <stdio.h>
void fun( char *a )
{
char b[81];
char *c,*d;
c = a;
int i = 0;
while (*c == '*')
{
c++;
}
d = c;
while (*c != '\0')
{
b[i] = *c;
i++;
c++;
}
int e = 0;
while (a < d)
{
b[i] = *a;
i++;
a++;
e++;
}
a = a - e;
for (int j = 0; j < i; j++)
{
*a = b[j];
a++;
}
*a = '\0';
}
int main()
{ char s[81];
int n=0;
printf("Enter a string:\n");
gets(s);
fun( s );
printf("The string after moveing:\n");puts(s);
return 0;
}
扩展资料:
需要说明的是:
2、每个源文件可由一个或多个函数组成。
3、一个源程序不论由多少个文件组成,都有一个且只能有一个main函数,即主函数。是整个程序的入口。
4、源程序中可以有预处理命令(包括include 命令,ifdef、ifndef命令、define命令),预处理命令通常应放在源文件或源程序的最前面。
5、每一个说明,每一个语句都必须以分号结尾。但预处理命令,函数头和花括号“}”之后不能加分号。(结构体、联合体、枚举型的声明的“}”后要加“ ;”。)
6、标识符,关键字之间必须至少加一个空格以示间隔。若已有明显的间隔符,也可不再加空格来间隔。
参考资料:
上述提及的 得出的结果是对的 但我学的还是初等 你写的一些名词 木有学到过 例如:void convertA(char *s)
const char * argv[])
void convertA(char *s) 这是一个子函数,你可以把它当成是一个实现了你要的那个功能的零部件,main函数是一个框架,只需要把零部件塞进来就可以了
const char * argv[] 这个你不懂正常,我是习惯了,这里没有用到这个东西,可以直接去掉,将int main (int argc, const char * argv[]) 修改为int main ()即可
如果还有其他看不懂的地方请继续追问,觉得很困难的地方我可以用你看的懂的写法写出来
7.编写程序,其功能是:将s所指字符串中除了保留下标为奇数、同时ascii值也为奇数的字符外,其余的全都删除。
main()
{int i,j,k;
char s[100];
gets(s);
k=strlen(s);
i=0;
for(j=0;j<k;j+=2)
if(s[j]%2==1) s[i++]=s[j];
s[i]=0;
puts(s);
}
这就是我们现在学的,差不多就这样的。谢谢了,你人很好。
好吧,修改如下,这个应该没什么难度了:
main ()
{
int s[100] = {0}, i, j, len;
gets(s);
len = strlen(s);
for (i = 0; i 0 && i != len)
{
for (j = 0; j 0; j--) s[len - j] = '*';
}
puts(s);
}
输出来的是原数啊?
本回答被提问者采纳