有人可以給我一個提示,爲什麼這不是打印數組?我不知道我的打印功能有什麼問題。在將其他部分添加到我的代碼之前,我想確保它正常工作。我猜我沒有正確設置陣列&這就是爲什麼沒有打印出來。打印用戶輸入數組
#define NUMSTU 50
#include <stdio.h>
//function prototype
void printdata();
//Global variables
int stuID[NUMSTU];
int stuCount;
int totStu;
int main()
{
int stuCount = 0;
int totStu = 0;
int studentID;
//Prompt user for number of student's in class
printf("Please enter number of student's in class:");
scanf ("%d", &totStu);
for (stuCount = 0; stuCount <totStu; stuCount++)
{
//Prompt user for student ID number
printf("\n Please enter student's ID number:");
scanf("%d", &studentID);
stuID[NUMSTU] = studentID;
}
//Call Function to print data
printdata();
return 0;
}//end main
void printdata(){
//This function will display collected data
//Input: Globals stuID[NUMSTU]
//Output: none
//Display column headers
printf("\n\n stuID\n");
//loop and display student ID numbers
for (stuCount = 0; stuCount <totStu; stuCount++){
printf("%d", stuID);
}
}
'stuID [NUMSTU] = studentID;'有未定義的行爲。你正在寫入一個超出界限的元素。 – melpomene
'printf(「%d」,stuID);'有未定義的行爲。 'printf''%d'接受一個'int',但你傳遞一個'int *'。 – melpomene
你有兩個名爲'totStu'的變量。其中只有一個具有非零值。 – melpomene