#include int main () { char cardNo[17]; int sum; printf("Enter a 16-digit credit card number : "); scanf("%s",cardNo); sum = (cardNo[1] - '0') + (cardNo[3] - '0') + (cardNo[5] - '0') + (cardNo[7] - '0') + (cardNo[9] - '0') + (cardNo[11] - '0') + (cardNo[13] - '0') + (cardNo[15] - '0'); sum += 2 * (int)((cardNo[0] - '0') + (cardNo[2] - '0') + (cardNo[4] - '0') + (cardNo[6] - '0') + (cardNo[8] - '0') + (cardNo[10] - '0') + (cardNo[12] - '0') + (cardNo[14] - '0')); if (cardNo[0] >= '5') sum -= 9; if (cardNo[2] >= '5') sum -= 9; if (cardNo[4] >= '5') sum -= 9; if (cardNo[6] >= '5') sum -= 9; if (cardNo[8] >= '5') sum -= 9; if (cardNo[10] >= '5') sum -= 9; if (cardNo[12] >= '5') sum -= 9; if (cardNo[14] >= '5') sum -= 9; printf("Checksum = %d\n", sum); if (sum % 10 == 0) printf("This is a valid credit card number.\n"); else printf("This is an invalid credit card number.\n"); }