2012-03-26 4 views
-3

Also sollte dieser Code 8 Eingänge produzieren, von denen jeder 8 Ziffern lang ist. Die letzte Ziffer jeder Zahl sollte in das Array m eingegeben werden. Also zum Beispiel wenn a = 12, 31, 432, 123, 444, 459, 765, 983, dann sollte das Array m 2, 1, 2, 3, 4, 9, 5, 3 enthalten. Unten ist mein Code. Würde es das tun?Würde dieses c Stück Code tun, was ich vorhabe?

int i, j, k, *m; 
for (i=0; i<8; i++){ 
    int a = rand(); 
    for(j=0; j<8; j++) 
    { 
     for(k=0; k<8; k++){ 
      if (k == 7) 
       m[j] = a[k]; 
     } 
    } 
} 
+1

'a' ist ein' int', kein Array, und Sie haben zuzuteilen keinen Platz für 'm' mit' malloc', so werden Sie wahrscheinlich einen Segmentation Fault bekommen, zumindest. –

+2

Nein. Es würde nicht einmal kompilieren. Bitte überprüfen Sie Ihren Code vor der Veröffentlichung mit minimalem Aufwand. – Mat

+1

Entschuldigung, ich bin gerade neu in C – user1079940

Antwort

1

Ich denke, du studierst nur ein oder zwei Tage lang C, aber es ist in Ordnung. Ich schreibe einen Code, der mebey du willst es realisieren.

#include <stdio.h> 
#include <stdlib.h> 
#include <time.h> 
int main() 
{ 
    int i, a, m[8]; 
    srand(time(NULL));//make it different each time, you can comment it 

    for(i = 0; i < 8; i++) 
    { 
     a = rand(); 
     m[i] = a % 10; 
    } 
} 
Verwandte Themen