Προς το περιεχόμενο

Προτεινόμενες αναρτήσεις

Δημοσ.

Πως θα περάσω μια παράμετρο από την γραμμή εντολών;;

Πχ έστω ότι θέλω να βρω το μέσο όρο ν στοιχείων και το ν θα πρέππει το πρόγραμμα μου να το πέρνει από την γραμμή εντολών...Υπάρχει διαφορά αν το πρόγραμμα εκτελεστεί σε μηχάνημα λινουξ η σε windows;

 

Επίσης θα πρέπει να κάνω δυναμική διαχείρηση;;

Δημοσ.

Τι εννοείς απο την γραμμή εντολών? Να δίνει τιμές ο χρήστης? Αν είναι έτσι χρησιμοποίησε την scanf

 

>int x;
Scanf("%d", &x);

(Διάβασε ένα integer και βάλτο στο χ)

 

με το %d διαβάζεισ integer με το %c χαρακτήρα, με το %f float. Με το &x του λές σε ποιά μεταβλητή να βάλει την τιμή.

Για αυτό που λες μπορείς να βάλεις πχ

 

>scanf("%d", &n);
for(i=0 ; i<n ; i++ {
scanf("%d", &s)
sum = sum + s;
}
avg = sum / n ;

 

δεν χρειάζεται να κάνεις κάτι δυναμικά και όχι δεν έχει διαφορά αν το εκτελέσεις σε λινουξ ή γουιντοους

Δημοσ.

Σόρρυ μπορεί να μην εξήγησα καλά αυτό που θέλω να πώ...

Δεν λέει να χρησιμοποιήσω την scanf αλλά απο το τερματικό όταν πατάω πχ a.out να προσθέτω το 2 πχ

δηλαδή a.out 10 -->>όπου 10 πχ είναι θα είναι το πλήθος των αριθμών που θέλουμε να βρούμε τον μέσο όρο

Δημοσ.
>int main(int argc, char* argv[])
{ /* το argc ειναι το πληθος των ορισματων στη γραμμη εντολων */
/* το argv[] οι εντολες */
int i;

printf("program name: %s\n", argv[0]);

for(i = 1; i < argc; i++)
	printf("orisma %do: %s\n", i, argv[i]); 

   return 0;
}

Δημοσ.

Εστω ότι θέλω να γράψω το παρακάτω πρόγραμμα αλλά τον ν να μην το πέρνει με scanf αλλά από την γραμμή εντολών

 

 

>
#include<stdio.h>
int main()
{
  sum=0;
  scanf("%d",N);
  for(i=0;i<N;i++){
    sum=sum+i
  }
   printf("the sum is:%d\n",sum);
}

Δημιουργήστε ένα λογαριασμό ή συνδεθείτε για να σχολιάσετε

Πρέπει να είστε μέλος για να αφήσετε σχόλιο

Δημιουργία λογαριασμού

Εγγραφείτε με νέο λογαριασμό στην κοινότητα μας. Είναι πανεύκολο!

Δημιουργία νέου λογαριασμού

Σύνδεση

Έχετε ήδη λογαριασμό; Συνδεθείτε εδώ.

Συνδεθείτε τώρα
  • Δημιουργία νέου...