我遵循哈佛大學的CS50課程,我必須在C中創建一個程序,以查找信用卡號碼是否有效。例如,我從這個號碼378282246310005想要得到的所有其他數字像這樣7224300,所以我開始是這樣的:C從int獲取其他所有數字
printf("Number\n");
long long cardNum = GetLongLong();
我不知道我需要使用獲得的其他數字,使我的方法計算。
我遵循哈佛大學的CS50課程,我必須在C中創建一個程序,以查找信用卡號碼是否有效。例如,我從這個號碼378282246310005想要得到的所有其他數字像這樣7224300,所以我開始是這樣的:C從int獲取其他所有數字
printf("Number\n");
long long cardNum = GetLongLong();
我不知道我需要使用獲得的其他數字,使我的方法計算。
。利用簡單的除法(/)和%運算符來獲得這種做會是這樣
int number[20];
int count = 0;
long long cardNum = GetLongLong();
long long prevNum = cardNum;
while (cardNum < 10)
{
cardNum = prevNum/10;
number[count] = prevNum % 10;
prevNum = cardNum;
count++;
}
我明白非常感謝你 – Nick
方式一:
int digits[7]; // storage for odd digits
cardNum /= 10; // throw away the least significant digit
for (int i = 0; i < 7; ++i) // for each odd digit
{
digits[i] = cardNum %10; // extract the digit
cardNum /= 100; // throw away two digits
}
的GetLongLong();方法是從哈佛cs50庫它就像scanf – Nick