阵列输入/输出问题?

时间:2012-04-03 22:09:32

标签: c++ arrays

我正在尝试学习C ++,我在编写一个简单的程序时遇到了问题。我想要的是一个函数,它将采用一个整数输入参数,创建一个存储在数组中的数字序列,从0到该数字,并且数字是求和。例如,给定7个输出0 1 2 3 4 5 6 7

3 个答案:

答案 0 :(得分:2)

你说你想填充一个数组,你插入一个值,如“7”,数组将从0到7填充。

这很容易做到:

#include <stdio.h>
#include <malloc.h>

int main() {

int i = 0, num = 0; //declare variables
scanf("%d", &num);
int *myArray = (int *)malloc(sizeof(int)*(num+1)); //malloc for array

for (i = 0; i <= num; i++){
    myArray[i] = i;  //fill array as you asked
    printf("%d", myArray[i]);   //print out tested values: 01234567
}

free(myArray);
return 0;
}

答案 1 :(得分:1)

C样式:

#include <stdio.h>
#include <malloc.h>
int main()
{
     int num;
     scanf("%d", &num);
     int *arr = (int *)malloc(sizeof(int)*(num+1));
     int i;
     for(i = 0; i <= num; i++)
         arr[i] = i; //This is the array
     return 0;
}

C ++风格:

 #include <vector>
 #include <iostream>
 using namespace std;
 int main(int argc, char ** argv)
 {
      int num;
      cin >> num;
      vector<int> arr;
      for(int i = 0; i <= num; i++)
           arr.push_back(i);
      return 0;
 }

答案 2 :(得分:0)

通过伸出援助之手,从这里开始填写空白:

#include <vector>

std::vector<int> make_sequence(int last)
{
    std::vector<int> result;
    // <fill this in>
    return result;
}

int main()
{
    // <probably do something useful here too...>
    return 0;
}

你将不得不自己做一些,这就是StackOverflow在类似家庭作业方面的工作方式:)