day05 homework

来源:互联网 发布:淘宝内衣模特雪碧 编辑:程序博客网 时间:2024/06/06 14:05
 /*
     1. 先调试,调试成功后抄写下列程序
    int a[SIZE]={0},i=0;
    for (i=0; i<SIZE; i++) {
        a[i]=i+10;
        printf("a[%d]=%d\n",i,a[i]);
    }
     
     2.将第⼀一题中的数组a反向输出
    int a[SIZE]={0},i=0;
    for (i=0; i<SIZE; i++) {
        a[i]=i+10;
        }
    
    for (i=SIZE-1; i>=0; i--) {
        printf("a[%d]=%d\n",i,a[i]);
    }
     3.对第一题中的数组进⾏行求和操作,打印计算结果
     
    int a[SIZE]={0},i=0;
    for (i=0; i<SIZE; i++) {
        a[i]=i+10;
    }
    int sum=0;
    for (int i=0; i<SIZE; i++) {
        sum +=a[i];
    }
    printf("sum=%d",sum);
      
     4.计算第⼀一题数组连减,打印计算结果
     
     int a[SIZE]={0},i=0;
     for (i=0; i<SIZE; i++) {
     a[i]=i+10;
     }
     int sub=0;
     for (int i=0; i<SIZE; i++) {
     sub -=a[i];
     }
     printf("sub=%d",sub);

     5.随机产⽣生20个10~50的正整数存放到数组中,并求数组中的 最⼤大值,最⼩小值,平均值及各个元素之和
     
    int max=0,min=0,sum=0,array[20]={0};
    float avg=0;
    for (int i=0; i<20; i++) {
        array[i]=arc4random()%(50-10+1)+10;
    }
    sum=min=max=array[0];
    for (int i=1; i<20; i++) {
        if (min>array[i]) {
            min=array[i];
        }
        if (max<array[i]) {
            max=array[i];
        }
        sum +=array[i];
    }
    avg = sum/20.0;
    printf("max=%d,min=%d,avg=%.2f,sum=%d\n",max,min,avg,sum);
     
     6.编写⼀一个程序,输⼊入两个包含5个元素的数组,先将两个数组 升序排列,然后将这两个数组合并成⼀一个升序数组
    
    int array_a[5]={3,5,63,2,98};
    int array_b[5]={54,7,6,32,78};
    int array_c[10]={0};
    for (int i=0; i<5-1; i++) {
        for (int j=0; j<5-1-i; j++) {
            if (array_a[j]>array_a[j+1]) {
                int tmp=array_a[j];
                array_a[j]=array_a[j+1];
                array_a[j+1]=tmp;
            }
        }
    }
    
    for (int i=0; i<5; i++) {
        printf("%3d",array_a[i]);
    }
    
    printf("\n");
    
        for (int i=0; i<5-1; i++) {
            for (int j=0; j<5-1-i; j++) {
                if (array_b[j]>array_b[j+1]) {
                    int tmp=array_b[j];
                    array_b[j]=array_b[j+1];
                    array_b[j+1]=tmp;
                }
            }
        }
    
    for (int i=0; i<5; i++) {
        printf("%3d",array_b[i]);
    }
    
    printf("\n");
    //将a,b 中的数拷贝到c中
    int k=0;
    for (int i=0; i<5; i++) {
        array_c[k++]=array_a[i];
        array_c[k++]=array_b[i];
    }
    //排序
    for (int i=0; i<10-1; i++) {
        for (int j=0; j<10-1-i; j++) {
            if (array_c[j]>array_c[j+1]) {
                int tmp=array_c[j];
                array_c[j]=array_c[j+1];
                array_c[j+1]=tmp;
            }
        }
    }
 // 输出
    for (int i=0; i<10; i++) {
        printf("%3d",array_c[i]);
    }
     7.给定某年某⽉月某⽇日,输出其为这⼀一年的第⼏几天
     
     // 平年common year 闰年leap year
     int common_year[12]={31,28,31,30,31,30,31,31,30,31,30,31};
     int leap_year[12] = {31,29,31,30,31,30,31,31,30,31,30,31};
     int year=0,month=0,day=0;
     int sum_day=0;
     printf("please input year month day:");
     scanf("%d%d%d",&year,&month,&day);
     //判断闰年
     if (year %400==0 || (year %4==0 && year%100!=0)) {
     for (int i=0; i<month-1; i++) {
     sum_day +=leap_year[i];
     }
     }
     else
     {
     for (int i=0; i<month-1; i++) {
     sum_day +=common_year[i];
     }
     
     }
     sum_day += day;
     printf("%d年%d月%d日是这一年的第%d天!",year,month,day,sum_day);
     
     8.编写整型数组排序程序(冒泡排序-升序)
     
     for (int i=0; i<N-1; i++) {
     for (int j=0; j<N-1-i; j++) {
     if (array[j]>array[j+1]) {
     int tmp=array[j];
     array[j]=array[j+1];
     array[j+1]=tmp;
     }
     }
     }

     
     9.找出下列整型数组中的最⼤大和最⼩小值及其所在位置的下标i
     int a[] = {5, -9, 32, 77, 64, -24, 14, 0, 21, 45};
     
     int a[] = {5, -9, 32, 77, 64, -24, 14, 0, 21, 45};
     int k_max=0,k_min=0;
     for (int i=1; i<10; i++) {
     if (a[k_max]<a[i]) {
     k_max=i;
     }
     if (a[k_min]>a[i]) {
     k_min=i;
     }
     }
     printf("max:%d,下标:%d;min:%d,下标:%d\n",a[k_max],k_max,a[k_min],k_min);
     
     10.把 str1, str2, str3 合并到result数组中。
     char result[50] = {0};
     char   str1[] = "Lanou ";
     char   str2[]="23_class";
     char   str3[]="is niu best!";
     结果:"Lanou 23_class is niu best!"
     
     char result[50] = {0};
     char   str1[] = "Lanou ";
     char   str2[]="23_class";
     char   str3[]="is niu best!";
     
     strcpy(result, str1);
     strcat(result, str2);
     strcat(result, str3);
     
     printf("结果:\"%s\"",result);

     */
0 0
原创粉丝点击