|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 爱学习520 于 2020-6-30 19:23 编辑
为什么测试输入:abcdefgh正确;输入:abcdefg ,则有一个0?如黑色测试图片
此程序就是简单的把奇数的字符删除,最后输出该数组的偶数字符串
- /*
- * 将字符串中下标为奇数的字符删除 使用void new(char str []) 剩余的字符形成新串
- */
- #include<stdio.h>
- //函数声明
- void New(char str []); //去除奇数下标字符
- void Strstoc(char str []); // 大写变小写
-
- main()
- {
- char a[30];
- printf("========================================\n");
-
- //输入字符串
- printf("请输入一个字符串:\n");
- scanf("%s",a);
-
- printf("========================================\n");
- printf("原字符串为:%s\n",a);
-
- New(a);
-
- printf("========================================\n");
- printf("现字符串为:%s\n",a);
- }
- //此处形参str[]并不被分配栈内存空间
- //此处编译char str[]等价于char *str
- void New(char str [])
- {
- int i,j;
- for(i=0,j=0;str[i]!='\0';i=i+2)
- {
- str[j]=str[i];
- str[++j]='\0';
- }
- }
复制代码 输入:abcdefg 后面会有一个0,这是为什么啊
程序没看出问题来
我这里运行也没问题。。。
不知道什么原因。。
|
|