4.1习题
1、输入10个整数,然后将这10个整数逆序输出。
#include<stdio.h>
int main()
{
    int i;
    int a[10];                         
    printf("Input data:  ");
    for(i=0;i<10;i++)
          scanf("%d",&a[i]);     
    printf("Output data: ");
    for(i=9;i>=0;i--) //通过下标引用顺序实现逆序
          printf("%d ",a[i]); 
    return 0;     
}
2、输入一个整数m,然后输入m个整数,存放在数组a中;再输入一个整数n,然后输入n个整数,存放在数组b中。出a和b两数组的非共有元素,存放在数组c中并输出。(m和n的值不超过20)
#include<stdio.h>
int main()
{
int a[20], b[20], c[20];//假定元素值不超过20
int m, n, i, j, k=0;
scanf("%d", &m);
for(i=0; i<m; i++)
scanf("%d", &a[i]);
scanf("%d", &n);
for(i=0; i<n; i++)
scanf("%d", &b[i]);
for(i=0; i<m; i++)//出数组a中不是共同元素的值
{
for(j=0; j<n; j++)
{
if(a[i]==b[j])
break;
}
if(j>=n)//不是共同元素
{
c[k]=a[i];
k++;//为存放下一个元素做准备
}
}
for(i=0; i<n; i++)//出数组b中不是共同元素的值
{
for(j=0; j<m; j++)
{
if(b[i]==a[j])
break;
}
if(j>=m)
{
c[k]=b[i];
k++;
}
}
for(i=0; i<k; i++)
printf(" %d", c[i]);
printf(“\n”);
return 0;
}
3、输入N个整数(N定义为常量),将最小值与第一个数交换,最大值与最后一个数交换。
#include <stdio.h>
#define N 10
int main()
{
    int  i,min,max,temp;
    int a[N];
    for (i = 0; i < N; i++)
        scanf("%d",&a[i]);
    min = 0;
    max = 0;
    for (i = 0; i < N; i++)
    {
        if ( a[i] < a[min] )
            min=i ;
       
        if(a[i]>a[max])
            max=i ;
    }
    temp = a[0];
    a[0] = a[min];
    a[min] = temp;
    temp = a[N-1];
    a[N-1] = a[max];
    a[max] = temp;
    printf("After swapped:");
    for(i=0; i<N; i++)
      printf("%4d ", a[i]);
    return 0;
}
4、输入一个整数序列,遇到0结束。统计并输出序列中出现次数最多的整数及其出现次数。
#include <stdio.h>
int main()
{
    int a[1000];
    int count=0;
    int max = 0, maxcount = 0;
int i,j;
printf(“Input integers:\n”);
    for (i = 0; i < 1000; i++)
{
  scanf("%d", &a[i]);
  if(a[i]==0)  break;
        for (j = 0; j < i+1; j++)
        {
            if (a[i] == a[j])
            {
                count++;
            }
        }
        if (count > maxcount)
        {
            maxcount = count;
            max = a[i];
        }
        count = 0;
    }
    printf("出现次数最多的数是%d,共出现scanf输入整型数组%d次\n", max, maxcount);
    return 0;
}

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。