門外星人 发表于 2014-5-7 12:38:23

用数组输入6个学生的成绩,再在第三个的位置插入一新成绩,依次输出7个成绩

/***********************************
*插入一个数据,然后其他数据依后赋值*
***********************************/
#include<stdio.h>
void main()
{
   float a, cj;
    int i, n = 6, m = 3;
       for(i = 0;i <n;i++)
    {
   printf("请输入第%d个学生的成绩:",i+1);
   scanf("%f",&cj);
    }
    n = n+1;
    scanf("%f",&cj);
    for (i = m; i < n + 1;i++)
    {
   cj = cj;
    }a = cj;
    printf("插入后的学生成绩为:\n");
    for(i = 0; i < n; i++)
    {
    printf("第%d个学生的成绩为:%.1f\n", i+1, cj);
    }
}
结果错误,大神求解。

HHR 发表于 2014-5-7 12:38:24

#include<stdio.h>
int main( void )
{
    float a, cj;
        int i, n = 6, m = 3;

        for(i = 0; i < n; i++ )
        {
                printf("请输入第%d个学生的成绩:",i+1);
                scanf("%f",&cj);
        }
        printf("请输入插入位置和成绩 : ");
        scanf("%d%f", &m, &a );

        for( i = n-1; i > m; i-- )
        {
                cj = cj;
        }
        cj = a;
/*
        for (i = m; i < n + 1;i++)
        {
                cj = cj;
        }a = cj;

        printf("插入后的学生成绩为:\n");
                */
        for(i = 0; i <= n; i++)
        {
                printf("第%d个学生的成绩为:%.1f\n", i+1, cj);
        }

        return 0;
}

門外星人 发表于 2014-5-7 12:42:11

比如说:
请输入第一个学生的成绩:1
请输入第二个学生的成绩:2
请输入第三个学生的成绩:3
请输入第四个学生的成绩:4
请输入第五个学生的成绩:5
请输入第六个学生的成绩:6
9
插入后学生成绩为:
第一个学生的成绩:1
第二个学生的成绩:2
第三个学生的成绩:9
第四个学生的成绩:3
第五个学生的成绩:4
第六个学生的成绩:5
第七个学生的成绩:6

門外星人 发表于 2014-5-7 13:34:39

感谢这位有爱的朋友,支持甲鱼~!

牡丹花下死做鬼 发表于 2014-5-7 15:47:22

#include<stdio.h>

int main()
{
        int cj;
        int i,j;
        for(i = 0;i<6;i++)
        {
                cj = i;
        }
       
        printf("Please Input a number as integer:");
        scanf("%d",&j);
        for(i = 4;i<7;i++)
        {
                cj = cj;
        }
        cj = j;
        for(i = 0;i<7;i++)
        {
                printf("%d\n",cj);
        }
        return 0;
}

青玄 发表于 2014-5-7 21:14:12

支持楼上!{:2_27:}

qq小小七 发表于 2014-5-9 19:14:33

//用数组输入六个学生的成绩,再在第三个位置插入一个新成绩
我改了一下,你看看
#include<stdio.h>
void main()
{
        float a, cj;
    int i, n = 6, m = 3 , j;
        float s ;
        for(i = 0;i <n;i++)
    {
                printf("请输入第%d个学生的成绩:",i+1);
                scanf("%f",&cj);
    }
    n = n+1;
    /*scanf("%f",&cj);//cj也就是cj你上边已经给cj赋值了
    for (i = m; i < n + 1;i++)
    {
        cj = cj;
    }a = cj;
    printf("插入后的学生成绩为:\n");
    for(i = 0; i < n; i++)
    {
    printf("第%d个学生的成绩为:%.1f\n", i+1, cj);
}*/
        printf("请输入要插入的新成绩:\n");
        scanf("%f" , &s);
        for(j = 6 ; j > 2 ; j --)
                cj = cj;
        cj = s ;
        for(i = 0 ; i < n ; i ++)
                printf("%f\n" , cj);
       
}
页: [1]
查看完整版本: 用数组输入6个学生的成绩,再在第三个的位置插入一新成绩,依次输出7个成绩