#c #arrays
#c #массивы
Вопрос:
У меня много поисков, но я не нашел своего ответа
Я хочу написать программу, которая выдаст массив из 3 элементов, а затем я хочу распечатать массив из 3 элементов :
char array[3] ;
for(int i=0;i<3;i ){
cin>>array[i] ;}
Но дело в том, что я не хочу указывать элементы массива в символах, и я хочу это в строке ;
но другой момент в том, что я не хочу использовать #include <string.h>
что я должен делать?
Я хочу предоставить входной массив от пользователя в такой форме:
char array[3]={"input1","input2","input3"}
for(int i=0;i<3;i ){
cin>>array[i] ;
}
cout<<array[0]<<" "<<array[1]<<" "<<array[2] ;
//output = input1 input2 input3
Комментарии:
1. Что вы хотите использовать в качестве входных данных — символ или строку?
2. я хочу объявить массив символов, НО со строковыми элементами @Tushar
Ответ №1:
char array[3][10];
for (int i = 0; i < 3; i ) {
cin >> array[i];
cout << array[i] << endl;
}
Где 2-й размер массива зависит от длины входной строки.
Ответ №2:
массив символов [n] будет хранить только n символов; используйте массив символов [n][m] . Помните, что строка c (char[]) отличается от string . В вашем случае вам понадобится `массив символов [3] [длина]’, где длина — это максимальное пространство для «резервирования» для каждого слова.
char array[3][32]; //you wont need to fill this with data right away
for (int i = 0; i < 3; i )
{
std::cin >> array[i];
}
std::cout << " " << array[0] << " " << array[1] << " " << array[2];
Комментарии:
1. Похоже, это не ответ. Пожалуйста, рассмотрите возможность перехода к комментариям.
Ответ №3:
Надеюсь, это решит проблему!
#include <iostream>
using namespace std;
int main()
{
char arr[3][100]; // Declaring the two dimensional character array 3 denotes number of inputs whereas 100 dentoes the length.
for(int i=0;i<3;i ){
cin>>arr[i];
}
for(int j=0;j<3;j ){
cout<<arr[i]<<" ";
}
return 0;
}