Αʹ. Πίνακες Άσκηση 1 Να γράψετε ένα πρόγραμμα στη γλώσσα προγραμματισμού C, το οποίο να δημιουργεί έναν πίνακα με το όνομα E, ο οποίος να έχει ακέραιο τύπο δεδομένων και 40 θέσεις. Στη συνέχεια να αναθέσετε ως τιμές των στοιχείων του πίνακα τα πολλαπλάσια του, δηλαδή το πρώτο στοιχείο του πίνακα θα πρέπει να πάρει τον αριθμό, το δεύτερο το 6 κ.ο.κ. Τέλος το πρόγραμμα θα πρέπει να εκτυπώνει τα στοιχεία του πίνακα. 5 int E[40]; for (i=0;i<40; i++){ 9 E[i]=( i+1)*; 10 } 12 for (i=0;i<40; i++){ 1 printf("e[%i] = %i\n",i,e[i]); } 15 16 system("pause"); Άσκηση 2 Να γράψετε ένα πρόγραμμα στη γλώσσα προγραμματισμού C το οποίο θα δημιουργεί έναν πίνακα Ε με 40 τυχαίους ακεραίους αριθμούς. Στη συνέχεια το πρόγραμμα θα πρέπει να βρίσκει σε ποια θέση του πίνακα βρίσκεται το ελάχιστο στοιχείο του, και να μας το ανακοινώνει. 5 int E[40]; 6 int min, mini; int i; 9 for (i=0;i<40; i++){ 10 E[i]=rand(); } 12 1 for (i=0;i<40; i++){ printf("e[%i]=%i\n",i,e[i]); 15 } 16 1 min=e[0]; 1 mini =0; 19 for (i=1;i<40; i++){ 20 if (E[i]<min){ 21 min=e[i]; 22 mini=i; 1
2 } 24 } 25 26 printf(" The min is %i, found at E[%i]\n",min, mini); 2 2 system("pause"); 29 } Άσκηση Να γράψετε ένα πρόγραμμα στη γλώσσα Προγραμματισμού C, το οποίο θα δημιουργεί έναν πίνακα με το όνομα A, 100 θέσεων και θα τον γεμίζει με τυχαίους αριθμούς από το 1 έως και το 200. Στη συνέχεια το πρόγραμμα θα ζητά από τον χρήστη έναν ακέραιο αριθμό και θα αναζητά αν ο αριθμός που έδωσε ο χρήστης υπάρχει μέσα στον πίνακα Α. Το πρόγραμμα θα πρέπει να εκτυπώνει τη θέση στην οποία τον βρήκε (αν υπάρχει) ή ένα ενημερωτικό μήνυμα πως ο αριθμός δεν υπάρχει στον πίνακα Α. Το πρόγραμμα θα πρέπει πάντα να εκτυπώνει όλα τα στοιχεία του πίνακα, ώστε ο χρήστης να ελέγχει το αποτέλεσμα. 5 int A[100]; int k; int thesi =-1; 9 10 /* Gemizoyme ton pinaka */ for (i=0;i <100; i++){ 12 A[i]=( rand() % 200) + 1; 1 } 15 printf(" Give one number:"); 16 scanf("%d",&k); 1 1 /* Searching */ 19 for (i=0;i <100; i++){ 20 if (A[i]==k){ 21 thesi = i; 22 } 2 } 24 25 for (i=0;i <100; i++){ 26 printf("a[%i]=%i\n",i,a[i]); 2 } 2 29 if ( thesi ==-1){ 0 printf(" Value %i does not exist in A\n",k); 1 } else { 2 printf(" Value %i found at A[%i]\n",k, thesi); } 4 5 system("pause"); 6 } Βʹ. Αλφαριθμητικά Άσκηση 4 2
Να γράψετε ένα πρόγραμμα το οποίο θα σας εκτυπώσει τους κώδικες ASCII (ακεραίους) για τους χαρακτήρες, A (Αγγλικό κεφαλαίο Α), Ζ (Αγγλικό κεφαλαίο Z), a (Αγγλικό πεζό a) και z (Αγγλικό πεζό z). 5 printf("'a' is ASCII %d\n",'a'); 6 printf("'z' is ASCII %d\n",'z'); printf("'a' is ASCII %d\n",'a'); printf("'z' is ASCII %d\n",'z'); 9 10 system("pause"); } Άσκηση 5 Να γράψετε ένα πρόγραμμα στη γλώσσα C, το οποίο να ζητά από το χρήστη να δώσει μια λέξη και στη συνέχεια το πρόγραμμα θα εκτυπώνει τη λέξη που έδωσε ο χρήστης αφού πρώτα μετατρέψει όλους τους πεζούς χαρακτήρες σε κεφαλαίους. # include <string.h> 4 5 int main( void){ 6 char str[100]; int i; 9 printf("give some text:"); 10 gets( str); 12 for (i=0;i<strlen( str);i++){ 1 if ((str[i]>=9)&&(str[i]<=122)){ printf("%c",str[i]-2); 15 } else { 16 printf("%c",str[i]); 1 } 19 20 printf("\n"); 21 22 system("pause"); 2 } Γʹ. Ασκήσεις Επανάληψης Άσκηση 6 Να γράψετε ένα πρόγραμμα στη γλώσσα προγραμματισμού C το οποίο να ζητά από τον χρήστη να δώσει την ακτίνα R ενός κύκλου. Στη συνέχεια το πρόγραμμα θα πρέπει να διαβάζει την ακτίνα που έδωσε ο χρήστης σε μια μεταβλητή τύπου float. Το πρόγραμμα θα πρέπει να υπολογίζει στη συνέχεια την περίμετρο P και το εμβαδόν E του κύκλου, με βάση τους τύπους P = 2πR και E = πr 2. Για τη σταθερά π, να δηλώσετε μια τιμή ίση με.159. Τέλος το πρόγραμμα θα
πρέπει να ανακοινώνει στο χρήστη τις τιμές που υπολόγισε για την περίμετρο και το εμβαδόν του κύκλου. 4 # define pi.159 5 6 int main( void){ float R,P,E; 9 printf(" Dwse tin aktina enos kuklou:"); 10 scanf("%f",&r); 12 P = 2* pi*r; 1 E = pi*r*r; 15 printf("h perimetros tou kuklou einai %f\n",p); 16 printf("to emvado tou kuklou einai %f\n",e); 1 1 system("pause"); 19 } Άσκηση Να γράψετε ένα πρόγραμμα στη γλώσσα προγραμματισμού C το οποίο να ζητά από το χρήστη μια απόσταση η οποία έχει μετρηθεί σε εκατοστά (cm). Στη συνέχεια το πρόγραμμα θα πρέπει να διαβάζει την τιμή που έδωσε ο χρήστης σε μια μεταβλητή τύπου float, και θα πρέπει να μετατρέπει την απόσταση από εκατοστά σε ίντσες με βάση την ισοδυναμία πως μια ίντσα είναι ίση με 2.54 εκατοστά. Τέλος, το πρόγραμμα θα πρέπει να εκτυπώνει στην έξοδό του την απόσταση σε ίντσες. 5 float cm; 6 float inches; printf(" Dwse apostasi se cm:"); 9 scanf("%f",&cm); 10 inches = cm / 2.54; 12 1 printf("h apostasi se inches einai %f\n",inches); 15 system("pause"); 16 } Άσκηση Να φτιάξετε ένα πρόγραμμα C το οποίο να δηλώνει έναν πίνακα A με 40 θέσεις ακεραίων αριθμών. Στη συνέχεια να θέσετε στις άρτιες θέσεις του πίνακα (δλδ στις θέσεις 0, 2, 4, κλπ) τον αριθμό 2 και στις περιττές θέσεις (1,,... 9) τον αριθμό 1. Τέλος το πρόγραμμα θα πρέπει να εκτυπώνει τα στοιχεία του πίνακα με κάποιο κατανοητό για το χρήστη τρόπο. 4
5 int A[40]; for (i=0;i<40; i=i+2){ 9 A[i]=2; 10 } for (i=1;i<40; i=i+2){ 12 A[i]=1; 1 } 15 for (i=0;i<40; i++){ 16 printf("a[%i] = %i\n",i,a[i]); 1 19 system("pause"); 20 } 5