Loner Phoenix 2021-12-26 17:01 采纳率: 37.5%
浏览 544
已结题

C语言的一些问题(关于数组、函数、结构体什么的)

1、编写程序,它能读入构成集合A,B的两组非零整数x1,x2 ,……,xm ,y1 ,y2 ,……,yn 。计算A与B的交集A∩B,再以由小到大的顺序输出A∩B中的元素,A∩B为空时无输出。
第一行输入集合的长度,第二行输入集合A中的数字,每个数字以空格隔开,第三行输入集合B中的数字,每个数字以空格隔开。
示例1:
输入:
4 5
1 3 5 7
5 3 1 9 10
输出:
1 3 5
(我剩把交集内的元素排序不太懂,就是单独写一个还会,把它和前面的问题连起来就写不出了)
2、写一个函数,输入一串数字,长度不超过100,要求输出这串数字字符,但每两个数字间空一个空格。
如输入1990,应输出“19 90”
(这个问题我只会一个数字隔一个空格,两个数字隔一个空格属实没想到)
3、有3个学生的信息,放在结构体数组中,要求输出全部学生的信息。
[输入用例]
10101
Li Lin
M
18
10102
Zhang Fun
M
19
10104
Wang Min
F
20
注:学生姓名中可能包含空格。
[输出用例]
No. Name sex age
10101 Li Lin M 18
10102 Zhang Fun M 19
10104 Wang Min F 20
[输入用例]
21001
张三
M
20
21002
李四
F
22
21003
王五
M
19
[输出用例]
No. Name sex age
21001 张三 M 20
21002 李四 F 22
21003 王五 M 19
注:输出的数据中间有一个空格

  • 写回答

1条回答 默认 最新

  • 关注
    #include<stdio.h>
    #include<math.h>
    
    void main()
    {
        int n,m,i,j,k=0;
        scanf("%d%d", &n, &m);
        int a[n],b[m],c[n];
        for(i=0;i<n;i++)
            scanf("%d",&a[i]);
        for(i=0;i<m;i++)
            scanf("%d",&b[i]);
        for(i=0;i<n;i++){
            for(j=0;j<m;j++){
                if(b[j] == a[i]){
                    c[k++] = a[i];
                    break;
                }
            }
        }
        for(i=0;i<k-1;i++)
            for(j=0;j<k-i-1;j++)
                if(c[j] > c[j+1])
                {
                    int t = c[j];
                    c[j] = c[j+1];
                    c[j+1] = t;
                }
        for(i=0;i<k;i++)
            printf("%d ", c[i]);
    }
    
    
    

    img

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 1月4日
  • 已采纳回答 12月27日
  • 修改了问题 12月26日
  • 创建了问题 12月26日

悬赏问题

  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥40 复杂的限制性的商函数处理
  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来