Je m en fiche
Hectopat
- Katılım
- 26 Aralık 2020
- Mesajlar
- 3.260
- Makaleler
- 1
- Çözümler
- 25
Daha fazla
- Cinsiyet
- Erkek
Kodum Online compilerlarda sorunsuz çalışırken VS Code da patlıyor aldığım hata ve kod ekte.
Koddaki amacım öğrenci numarasını ilk başına göre kontrol etmesi okulumuzda öğrenci numaraları giriş yılına göre ilk 2 haneyi alıyor 19-23 yılları arası için yaptım.
Koddaki amacım öğrenci numarasını ilk başına göre kontrol etmesi okulumuzda öğrenci numaraları giriş yılına göre ilk 2 haneyi alıyor 19-23 yılları arası için yaptım.
C:
#include <stdio.h>
#include <string.h>
int validateStudentNumber(char* studentNumber) {
int prefixes[5] = {19, 20, 21, 22, 23};
int length = strlen(studentNumber);
int isValid = 0;
// Checking for prefixes.
for (int i = 0; i < 5; i++) {
char prefix[3];
sprintf(prefix, "%02d", prefixes[i]);
if (strncmp(studentNumber, prefix, 2) == 0) {
isValid = 1;
break;
}
}
if (isValid && (length != 9 || strspn(studentNumber, "0123456789") != 9)) {
isValid = 0;
}
return isValid;
}
int main() {
char studentNumber[10];
printf("Enter the student number: ");
scanf("%s", studentNumber);
if (validateStudentNumber(studentNumber)) {
printf("Valid student number.\n");
} else {
printf("Invalid student number. Prefix does not match valid enrollment years.\n");
}
return 0;
}
Dosya Ekleri
Son düzenleme: