第三次实验字符串(周一78节)

第一题

#include <stdio.h>
#include <string.h>
#include<math.h>
 
int main()
{
    char s[81],b[81],c[81];
    int i,j=0,k=0,sum;
    gets(s);
    sum = strlen(s);
    for(i=0; i<sum; i++)//存储所有数字
    {
        if(s[i]>='0'&&s[i]<='9')
        {
            b[j]=s[i];
            j++;
        }
    }
    i=0;
    int cnt = 0;
    while(b[i]=='0'){//去除前几位为0的
        cnt++;
        i++;
    }
    for(i=cnt;i<j;i++){
         c[k]=b[i];
         k++;
    }
    if(k>0){//如果数组C不为空则输出数组
        for(i=0;i<k;i++){
            printf("%c",c[i]);
        }
    }else{//如果数组C为空则输出0
        printf("0");
    }
 
    return 0;
}

第二题

#include<stdio.h>
int main(void)
{
	char ch;
	
	do{
	scanf("%c",&ch);
	
	if(ch>='a'&&ch<='z')
		ch=ch-'a'+'A';
	else if(ch>='A'&&ch<='Z')
		ch=ch+'a'-'A';
	else if(ch=='#')
		break;
	printf("%c",ch);		
	}while(1);

	return 0;
}

第三题

#include <stdio.h>
#include <string.h>
int main()
{
	int d;
	int i,j;
	char a[81];
	char b[81];
	gets(a);
	d=strlen(a);
	j=d-1;
	for(i=0;i<d;i++)
	{
		b[j]=a[i];
		j--;
	}
	for(i=0;i<d;i++)
	{
		printf("%c",b[i]);
	}
	return 0;
}

第四题

#include <stdio.h>
int main()
{
	char a[100],ch,enter;
	int i,count=-1;//记录相同字符所在位置
	ch=getchar();//得到需要查找的字符 
	enter=getchar();//抵消一个回车键 
	gets(a);//存输入的一串字符 
	for(i=0;a[i]!='\0';i++)//'\0'既是字符串最后 
		if(a[i]==ch)
			count=i;
	 if(count>=0)
	 	printf("index = %d",count);
	else
		 printf("Not Found");
	return 0;
}

第五题

#include<stdio.h>
#include<math.h>
int main()
{
	int i=0,j,k=0;
	char str[80];
	while((str[i]=getchar())!='\n')
	{
		i++;
	}
	char x;
	scanf("%c",&x);
	for(j=0;j<i;j++)
	{
		if(str[j]==x)
			k++;//记录字符频率 
	}
	printf("%d",k);
	return 0;
}

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 您好,我是ChitGPT。关于您的问题,可以使用Python的字符串分割功能来实现。您可以使用Split方法将字符串按照某个特定字符进行分割。比如,您可以输入以下代码实现您的需求: ``` str = "周一第3,4" str_list = str.split("第") print(str_list[0]) print(str_list[1]) ``` 这段代码会将字符串按照“第”字符进行分割,并将结果存储在一个list中。list的第一个元素是周一,第二个元素是3,4。顺便提醒一句,如果您需要保存3和4作为数字,可以使用Split方法后再进行类型转换,比如将它们转换成int类型。 希望这个答案对您有所帮助。如果有其他问题,可以随时问我哦! ### 回答2: 要将字符串分割为"周一"和"3,4",可以使用字符串的分割函数。具体步骤如下: 首先,定义一个字符串变量"str",赋值为需要分割的字符串。假设为"周一第3,4"。 其次,找到字符串中的关键字符,即"第"和","。通过这两个关键字符,可以将字符串分割为三部分。 使用字符函数的split()方法,将字符串进行分割。split()方法的参数为分割的关键字符。在这里,可以使用"第"和","作为参数。代码如下: parts = str.split("第") parts = parts[1].split(",") 这样就将原字符串分割为两部分,分别为"周一"和"3,4"。 最后,输出分割完的两个部分。代码如下: print(parts[0]) print(parts[1]) 这样就可以分别输出"周一"和"3,4"。 需要注意的是,以上步骤是基于给定的字符串格式进行分割。如果字符串格式有所变动,可能需要调整代码中的参数和逻辑。 ### 回答3: 要将字符串"周一第3,4"分割为"周一"和"3,4"可以使用字符串的切片方法或者正则表达式。 方法一:使用切片方法 首先,可以观察到"周一"和"3,4"之间存在一个"第"字,可以用这个作为分割点。我们可以找到"第"字在字符串中的索引位置,然后分别取出这个索引位置前和后的部分。 代码如下: ```python s = "周一第3,4" index = s.index("第") # 找到"第"字的索引位置 part1 = s[:index] # 取出索引位置前的部分(即"周一") part2 = s[index+1:] # 取出索引位置后的部分(即"3,4") print(part1) # 输出"周一" print(part2) # 输出"3,4" ``` 方法二:使用正则表达式 如果字符串的格式可能会有变化,不仅仅是"周一第3,4"这种形式,还有其他可能的形式,如"周二第1,2"。此时使用正则表达式可以更灵活地匹配出需要的部分。 代码如下: ```python import re s = "周一第3,4" pattern = r"(.+?)第(.+?)" # 正则表达式模式 match = re.match(pattern, s) # 进行匹配 part1 = match.group(1) # 取出第一个括号中的部分(即"周一") part2 = match.group(2) # 取出第二个括号中的部分(即"3,4") print(part1) # 输出"周一" print(part2) # 输出"3,4" ``` 以上两种方法都可以将字符串"周一第3,4"分割为"周一"和"3,4",具体使用哪种方法可以根据实际情况灵活选择。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值