从键盘输入一个字符串并保存在字符str1中,把字符串str1中下标为偶数的字符保存在字符串str2中并输出。
例如,当str1=“cdefghij”,则str2=“cegi”。注意:部分源程序给出如下。请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所...
例如,当str1=“cdefghij”,则str2=“cegi”。 注意:部分源程序给出如下。 请勿改动主函数main和其他函数中的任何内容,仅在函数fun()的横线上填入所编写的若干表达式或语句。 试题程序: #include <stdio.h> #define LEN 80 main() { char str1[LEN],str2[LEN]; char *p1=str1,*p2=str2; int i=0,j=0; printf("Enter the string:\n"); scanf(【1】);“%s”,p1 printf("***the origial string***\n"); while(*(p1+j)) { printf("【2】%c",*(p1+j)); j++; } for(i=0;i%2==0 && i<j;i++) *p2++=*(str1+i); *p2='\0'; printf("\nThe new string is:%s\n",【3】*p2); }
展开
推荐于2017-05-16
展开全部
#include <stdio.h>
#include<stdlib.h>#define LEN 80
int main()
{
char str1[LEN],str2[LEN];
char *p1=str1,*p2=str2;
int i=0,j=0;
printf("Enter the string:\n");
scanf("%s",str1);
printf("***the origial string***\n");
while(*(p1+j))
{
printf("%c",*(p1+j));
j++;
}
for(i=0;(i%2==0 && i<j);i+=2)
*p2++=*(str1+i);
*p2='\0';
printf("\nThe new string is:%s\n",str2);
system("pause");
} 注意,你必须按照我的程序来!因为你给出的程序有不少错误!我举一个例子—— for(i=0;i%2==0 && i<j;i++) 就是错误的!因为这样的话,i肯定会出现奇数,直接推出循环,你永远也读不到任何东西!!! 我证明我是对的!
#include<stdlib.h>#define LEN 80
int main()
{
char str1[LEN],str2[LEN];
char *p1=str1,*p2=str2;
int i=0,j=0;
printf("Enter the string:\n");
scanf("%s",str1);
printf("***the origial string***\n");
while(*(p1+j))
{
printf("%c",*(p1+j));
j++;
}
for(i=0;(i%2==0 && i<j);i+=2)
*p2++=*(str1+i);
*p2='\0';
printf("\nThe new string is:%s\n",str2);
system("pause");
} 注意,你必须按照我的程序来!因为你给出的程序有不少错误!我举一个例子—— for(i=0;i%2==0 && i<j;i++) 就是错误的!因为这样的话,i肯定会出现奇数,直接推出循环,你永远也读不到任何东西!!! 我证明我是对的!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询