Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 26.03.2013, 12:28   #1
zxzxz
Пользователь
 
Регистрация: 15.03.2013
Сообщений: 21
По умолчанию си

Код:
#include "stdafx.h"
#include <iostream>
#include <fstream>

void printarray(int **a, const int n, const int m);
void printsum(int **a, const int n, const int m);

int main() {
const int n = 3, m = 5;
 int **a;
 int i, j, t;
 char ch;
 std::ifstream ifst;
 char fname[255];

 std::printf ("filename: ");
 scanf_s ("%d", &fname);
 ifst.open(fname);

 if (0 == ifst) {
  std::printf ("can't open file\n");
  return -1;
}

 a = new int*[n];
 for (int i = 0; i < n; ++i)
  a[i] = new int[m];

 for (int i = 0; i < n; ++i) 
  for (int j = 0; j < m; ++j)
    ifst >> a[i][j];
 ifst.close();

 while (true) {
  std::printf ("\t1 - out arr\n\t2 - out sum\n\t3 - exit\n: ");
  scanf_s ("%d", &ch);

    if ('3' == ch)
      break;

    switch (ch) {
       case '1': printarray(a, n, m); break;
       case '2': printsum(a, n, m); break;
       default: std::printf ("input error");
      }
}

 for (int i = 0; i < n; ++i)
   delete []a[i];
 delete []a;
}

void printarray(int **a, const int n, const int m) {
 for (int i = 0; i < n; ++i) {
   for (int j = 0; j < m; ++j) 
    std::printf ("a[i][j]");
   std::printf ("std::endl");

void printsum(int **a, const int n, const int m);
{
  int sum = 0;
  for (int i = 0; i < n; ++i)
     for (int j = 0; j < m; ++j) 
       sum += a[i][j];
  std::printf ("sum: ");
}
}
}
помогите сделать,чтобы работало
zxzxz вне форума Ответить с цитированием
Старый 26.03.2013, 14:37   #2
Ezhik Kihze
Форумчанин
 
Регистрация: 24.12.2012
Сообщений: 639
По умолчанию

Скомплировать чтоль?
ICQ: 677936656 Gmail: ekEmbed@gmail.com
Ezhik Kihze вне форума Ответить с цитированием
Старый 26.03.2013, 15:25   #3
zxzxz
Пользователь
 
Регистрация: 15.03.2013
Сообщений: 21
По умолчанию

Код:
#include <iostream>
#include <fstream>

void printarray(int **a, const int n, const int m);
void printsum(int **a, const int n, const int m);

int main() {
  const int n = 3, m = 5;
  int **a;
  int i, j, t;
  char ch;
  std::ifstream ifst;
  char fname[255];
  
  std::cout << "filename: ";
  std::cin >> fname;
  ifst.open(fname);
  
  if (0 == ifst) {
    std::cout << "can't open file\n";
    return -1;
  }
  
  a = new int*[n];
  for (int i = 0; i < n; ++i)
    a[i] = new int[m];
  
  for (int i = 0; i < n; ++i) 
    for (int j = 0; j < m; ++j)
      ifst >> a[i][j];
  ifst.close();
  
  while (true) {
    std::cout << "\t1 - out arr\n\t2 - out sum\n\t3 - exit\n: ";
    std::cin >> ch;
 
    if ('3' == ch)
      break;
    
    switch (ch) {
      case '1': printarray(a, n, m); break;
      case '2': printsum(a, n, m); break;
      default: std::cout << "input error" << std::endl;
    }
  }
  
  for (int i = 0; i < n; ++i)
    delete []a[i];
  delete []a;
}

void printarray(int **a, const int n, const int m) {
  for (int i = 0; i < n; ++i) {
    for (int j = 0; j < m; ++j) 
      std::cout << a[i][j];
    std::cout << std::endl;
  }
}

void printsum(int **a, const int n, const int m) {
  int sum = 0;
  for (int i = 0; i < n; ++i)
    for (int j = 0; j < m; ++j) 
      sum += a[i][j];
  std::cout << "sum: " << sum << std::endl;
}
нужно было из этого из с++ переделать в си..переделала,но не работает
zxzxz вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск