【问题标题】:array placement when user input another data用户输入另一个数据时的数组放置
【发布时间】:2019-02-17 07:01:13
【问题描述】:

用户输入10个数据,然后用户输入1个数字。并且程序将打印出数字存储在数组中的位置。

int main() {
  int arr[10];
  int data,num;

  for (int i = 0; i < 10; i++) {
    printf("%d ",i );
    scanf("%d",&arr[i]);
  }

  printf("Input data : " );
  scanf("%d",&data );

  for (int j = 0; j < arr[data]; j++) {
    if (data==arr[j]) {
      printf("Data %d found in array %d\n",data,arr[j] );
      break;
    }
    else {
      printf("Data not found in array\n");
      break;
    }
  }
  return 0;
}

【问题讨论】:

  • 只打印j 而不是arr[j]j 是索引
  • 问题在哪里?

标签: c


【解决方案1】:
int main() {
  int arr[10];
  int data, flag = 0;

  for (int i = 0; i < 10; i++) {
    printf("%d ",i );
    scanf("%d",arr[i]);
  }

  printf("Input data : " );
  scanf("%d",&data );

  for (int j = 0; j < 10; j++) {
    if (data==arr[j]) {
      printf("Data %d found in array at %dth position\n",data,j);
      flag = 1;
      break;
    }
  }
  if(!flag){
    printf("data not found in the array\n");
  }
  return 0;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-03-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多