1.添加逗号
对于一个较大的整数 N(1<=N<=2,000,000,000)
比如 980364535,我们常常需要一位一位数这个数字是几位数,但是如果在这 个数字每三位加一个逗号,它会变得更加易于朗读。
因此,这个数字加上逗号成如下的模样:980,364,535请写一个程序帮她完成这件事情
输入描述:
一行一个整数 N
输出描述:
一行一个字符串表示添加完逗号的结果
示例1 输入:980364535
输出: 980,364,535
思路:可以从右往左每隔三位添加一个逗号。通过不断取整和取余数的操作来逐步处理数字。具体步骤如下:
将输入的整数转换为字符串。
从右往左遍历字符串,每三位一组,遇到一组就添加一个逗号,同时更新起始位置继续往左处理。
cpp
#include <stdio.h>
int main()
{
int n=0;
scanf("%d",&n);
int k=0;
int i=0;
char arr[14];
while(n)
{
if(k!=0&&k%3==0)
{
arr[i++]=',';
}
arr[i++]=n%10+'0';
n=n/10;
k++;
}
for(i--;i>=0;i--)
{
printf("%c",arr[i]);
}
return 0;
}
2.删除公共字符
输入两个字符串,从第一字符串中删除第二个字符串中所有的字符。例如,输入"They are students."和"aeiou",则删除之后的第一个字符串变成"Thy r stdnts."
输入描述:
每个测试输入包含2个字符串
输出描述:
输出删除后的字符串
输入:
They are students. 删除:aeiou
输出:
Thy r stdnts.
**思路:**1. 遍历第二个字符串,将其中的每个字符存储到一个集合(可以用一个简单的标记数组来实现)中。
- 遍历第一个字符串,对于每个字符,如果它不在集合中,就将其输出。
cpp
#include <stdio.h>
int BI(char ch,char arr2[])
{
int j=0;
while(arr2[j])
{
if(ch==arr2[j])
{
return 0;
}
j++;
}
return 1;
}
int main()
{
char arr1[101];
char arr2[101];
gets(arr1);
gets(arr2);
int i=0;
while(arr1[i])
{
if(BI(arr1[i],arr2)!=0)
{
printf("%c",arr1[i]);
}
i++;
}
return 0;
}