Автор | Сообщение |
|
Отправлено: 12.02.12 12:58. Заголовок: Задача C2 №4
Сделал задачу на C++(Visual Studio) с помощью фукции: #include<iostream> const int N=10,M=20; int Sum_and_Search(int n,int x[][M],int &SM); using namespace std; int main() { int i,j,a[N][M],Num,SumMin; for(i=0;i<N;i++) for(j=0;j<M;j++) scanf("%d",&a[j]); printf("Result: %d %d\n",Sum_and_Search(N,a,SumMin),SumMin); return 0; } int Sum_and_Search(int n,int x[][M],int &SM) { int i,j,Num=0,Sum; SM=0; for(j=0;j<M;j++) SM+=x[0][j]; for(i=1;i<N;i++) { Sum=0; for(j=0;j<M;j++) Sum+=x[j]; if(Sum<SM) { SM=Sum; Num=i; } } return Num; } Однако такой вывод не работает(не меняется параметр передаваемый по ссылке). В чём причина?Если это какая-нибудь особенность фукции printf, то пожалуйста пояснить что к чему.
|
|
|
Ответов - 1
[только новые]
|
|
|
| Администратор
|
Сообщение: 95
|
|
Отправлено: 12.02.12 16:29. Заголовок: PavelG пишет: Однако..
PavelG пишет: цитата: | Однако такой вывод не работает(не меняется параметр передаваемый по ссылке). В чём причина?Если это какая-нибудь особенность фукции printf, то пожалуйста пояснить что к чему. |
|
Это очень нехорошая практика - вы вызываете прямо в printf функцию с изменяемым параметром, и в то же время этот параметр еще отдельно выводится. Разделите вызов функции и вывод результатов.
|
|
|