Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/c/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
同一数字在字段中的打印位置,c语言_C - Fatal编程技术网

同一数字在字段中的打印位置,c语言

同一数字在字段中的打印位置,c语言,c,C,我们在学校有一个家庭作业来制作我在这里分享的这类节目。我已经完成了它的工作,但我需要这样:如果我把2个或更多相同的最低或最高数字,我需要打印所有相同的最低和最高数字的位置。我在这里被绊倒了。你能帮我吗,谢谢 代码: #包括 内部主(空) { 内极[100]; int i,max_cislo,min_cislo,x,max,min; printf(“Napis,kolko cicel chces ulozit do pola:”); scanf(“%d”和&x); printf(“Vloz%d西斯

我们在学校有一个家庭作业来制作我在这里分享的这类节目。我已经完成了它的工作,但我需要这样:如果我把2个或更多相同的最低或最高数字,我需要打印所有相同的最低和最高数字的位置。我在这里被绊倒了。你能帮我吗,谢谢

代码:

#包括
内部主(空)
{
内极[100];
int i,max_cislo,min_cislo,x,max,min;
printf(“Napis,kolko cicel chces ulozit do pola:”);
scanf(“%d”和&x);
printf(“Vloz%d西斯拉•多波拉:\n”,x);
对于(i=0;i你应该:

  • 分配一个数组以存储所有最小/最大位置
  • 如果记录被破坏,请删除所有元素并存储新位置
  • 如果记录为平局,则将新位置添加到列表中
如下所示(仅显示最大值,最小值也可以这样做):

int极[100],x;
int i,max_poses[100],max_pos_count=0,max=0;
/*把东西读给极点和x*/
最大值=极点[0];
最大摆姿[0]=0;
最大位置计数=1;
对于(i=1;i最大值){
/*记录被打破了*/
最大值=极点[i];
max_poses[0]=i;
最大位置计数=1;
}否则如果(极点[i]==最大值){
/*系*/
最大姿势[最大位置计数+]=i;
}
}
 #include <stdio.h>

int main(void)
{
int pole[100];
int i, max_cislo, min_cislo, x, max, min;

printf("Napis, kolko cisel chces ulozit do pola :");
scanf("%d",&x);
   
printf("Vloz %d cisla do pola :\n",x);
for(i=0;i<x;i++){
    
        printf("cislo %d -: ",i);
        scanf("%d",&pole[i]);
    }
max_cislo = pole[0];
min_cislo = pole[0];

for(i=1; i<x; i++){
    
        if(pole[i]>max_cislo){
            
            max_cislo = pole[i];
            max = i;
        }


        if(pole[i]<min_cislo){
            
            min_cislo = pole[i];
            min = i;
        }
    }
printf("Maximalny prvok je : %d a jeho pozicia v poli je: %d\n", max_cislo, max);
printf("Minimalny prvok je : %d a jeho pozicia v poli je: %d\n", min_cislo, min);

return 0;
}
int pole[100], x;
int i, max_poses[100], max_pos_count = 0, max = 0;

/* read things to pole and x */

max = pole[0];
max_poses[0] = 0;
max_pos_count = 1;
for (i = 1; i < x; i++) {
    if (pole[i] > max) {
        /* the record is broken */
        max = pole[i];
        max_poses[0] = i;
        max_pos_count = 1;
    } else if (pole[i] == max) {
        /* tie */
        max_poses[max_pos_count++] = i;
    }
}