C语言习题~day38

1.添加逗号

对于一个较大的整数 N(1<=N<=2,000,000,000)

比如 980364535,我们常常需要一位一位数这个数字是几位数,但是如果在这 个数字每三位加一个逗号,它会变得更加易于朗读。

因此,这个数字加上逗号成如下的模样:980,364,535请写一个程序帮她完成这件事情

输入描述:

一行一个整数 N

输出描述:

一行一个字符串表示添加完逗号的结果

示例1 输入:980364535

输出: 980,364,535
思路:

可以从右往左每隔三位添加一个逗号。通过不断取整和取余数的操作来逐步处理数字。具体步骤如下:

  1. 将输入的整数转换为字符串。

  2. 从右往左遍历字符串,每三位一组,遇到一组就添加一个逗号,同时更新起始位置继续往左处理。

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. 遍历第二个字符串,将其中的每个字符存储到一个集合(可以用一个简单的标记数组来实现)中。

  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;
 }
相关推荐
lzhdim28 分钟前
AI的分类
人工智能·算法·机器学习·分类·数据挖掘
凤凰院凶涛QAQ3 小时前
《Java版数据结构 & 集合类剖析》Map & Set & 反射:“从哈希碰撞到红黑树转换,反射帮你扒开 HashMap 的桶数组看个究竟”
java·数据结构·算法
H.莓飛3 小时前
【数据结构】排序_OJ题(一):计数、桶与排序后的处理
java·开发语言·数据结构
w_zero_one5 小时前
算法--模拟
java·数据结构·算法
秋天的怀念_David6 小时前
算法一千零一夜 · 第十三夜 幻方,武侠世界里的数学迷宫
java·程序人生·算法
·present·6 小时前
CSAPP(lecture 4_01)
c语言·c++
秋天的怀念_David6 小时前
算法一千零一夜 · 第十四夜 幻方与奇妙的二进制
java·程序人生·算法
薛定e的猫咪6 小时前
(ICLR 2020)MAML 靠的不是快速学习,而是特征复用
人工智能·深度学习·学习·算法·机器学习
薛定e的猫咪7 小时前
(ICLR 2026)DF-META:面向 FJSP 的无导数元学习实例自适应调度
人工智能·深度学习·学习·算法·机器学习
小羊没烦恼!8 小时前
异步编程:线程概述及使用
java·开发语言·mysql·算法·c#