我想知道是否有辦法讓我在條件為真時在 foo 回圈之外獲取“j”的當前值。變數“totalvalid”將告訴我滿足條件的次數,但我還想知道條件為真時 j 的確切值,以便我可以在以后使用它。因此,每當“totalvalid = totalvalid 1”發生時,我都想提取“j”的值。對不起,如果它看起來很亂。我是編碼新手,仍然不知道如何使它更干凈。謝謝你。
for(int j = 0; j < stringnumber; j ){
int valid = 0;
if(str[j][10] == '\0'){
for(int k = 0; k < 10; k ){
if(str[j][k] >= 'A' && str[j][k] <= 'Z'){
valid ;
}
}
if (valid == 10){
totalvalid = totalvalid 1;
}
}
}
uj5u.com熱心網友回復:
似乎您想要一個通過條件的數字陣列。
我的建議是制作一個整數陣列,您將在其中保留這些數字。
回圈前:
int *array_of_valid_ints = (int *) calloc(stringnumber, sizeof(int)); // allocate the array
int number_of_valid_ints = 0;
在if陳述句中:
array_of_valid_ints[number_of_valid_ints] = j;
number_of_valid_ints ;
回圈結束后,您可以使用以下命令檢查好值:
printf("This are the good ints: ")
for (int i = 0; i < number_of_valid_ints; i ) {
printf("%d ", array_of_valid_ints[i]);
}
printf("\n");
uj5u.com熱心網友回復:
也許你可以在回圈之前定義一個變數為 int j=0; 然后使用while回圈而不是for。還記得在while回圈中寫j 。這樣你也可以在回圈外使用j的值!
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/361316.html
標籤:C
上一篇:重新啟動時在后臺啟動新螢屏
下一篇:c格式輸入為二進制然后輸出
