Mau nanya seputar pemrograman C

Slmt malam,saya mengalami kesulitan pada saat saya ingin mengubah variabel kode yg telah diinput menjadi uppercase menggunakan fungsi strupr, dimanakah kesalahannya?

Berikut code dan error yg tampil :

 #include <stdio.h>
#include <string.h>
int main()
{
	char nama[20],kode;
	int jam_kerja,gaji;
	//user memasukan input
	printf("Masukan Nama karyawan\t:");
	scanf("%s",&nama);
	printf("\nMasukan jam kerja\t:");
	scanf("%d",&jam_kerja);
	printf("\nMasukan kode golongan [A/B/C/D]\t:");
	scanf(" %c",&kode);
	//ubah inout kode ke huruf kapital
	kode = strupr(kode);
	// input di proses dengan switch case dan if
	switch(kode){
		case 'A' : {
			if (jam_kerja <= 48)
			{
				//gaji tanpa jam lembur
				gaji = 5000 * jam_kerja;
			}else{
				//gaji jika ada jam lembur
				gaji = (48 * 5000) + ((jam_kerja - 48)*4000);
			}
			break;
		}
		case 'B' : {
			if (jam_kerja <= 48)
			{
				//gaji tanpa jam lembur
				gaji = 7000 * jam_kerja;
			}else{
				//gaji jika ada jam lembur
				gaji = (48 * 7000) + ((jam_kerja - 48)*4000);
			}
			break;
		}
		case 'C' : {
			if (jam_kerja <= 48)
			{
				//gaji tanpa jam lembur
				gaji = 8000 * jam_kerja;
			}else{
				//gaji jika ada jam lembur
				gaji = (48 * 8000) + ((jam_kerja - 48)*4000);
			}
			break;
		}
		case 'D' : {
			if (jam_kerja <= 48)
			{
				//gaji tanpa jam lembur
				gaji = 10000 * jam_kerja;
			}else{
				//gaji jika ada jam lembur
				gaji = (48 * 10000) + ((jam_kerja - 48)*4000);
			}
			break;
		}
	}
	//mencetak output
	printf("Nama karyawan\t: %s \n", nama );
	printf("Gaji \t: Rp.%d \n", gaji);
	// printf("%s\n", nama);
	// printf("%d\n", jam_kerja);
	// printf("%c\n", kode);
	return 0;
}

Error yang tampil saat di compile :

Mohon bantuannya , saya baru belajar bahasa c

avatar gusturama
@gusturama

3 Kontribusi 0 Poin

Diperbarui 6 tahun yang lalu

4 Jawaban:

inputan "kode" nya apa? udah errornya kalo masuking angka, atau selalu ngeluarin error yang sama?

avatar hilmanski
@hilmanski

2692 Kontribusi 2139 Poin

Dipost 6 tahun yang lalu

Inputan kode itu huruf gan, jadi saya tes input pke huruf kecil dia ga kebaca di switch, jadi saya pke fungsi strupr buat convert ke huruf kapital tapi error(seperti di gambar)

avatar gusturama
@gusturama

3 Kontribusi 0 Poin

Dipost 6 tahun yang lalu

coba pake %s aja sebagain string, bukan karakter%c di scanf nya

avatar hilmanski
@hilmanski

2692 Kontribusi 2139 Poin

Dipost 6 tahun yang lalu

strupr() bukan standard function dari C Library punya Microsoft. (Pengingat aja hehe) Kalau gak bisa pakai fungsi tsb bisa pakai ini, dibuat fungsi sendiri. Yaaa hasilnya sama kok pakai strupr() sekedar alternativ aja

<pre> #include &lt;stdio.h&gt; #include&lt;string.h&gt; int main() { char str[99] = "ini akan jadi huruf kapital", i; for(i=0; str[i]!='\0';i++) { if(str[i]!=32){ //filter spasi/blank space printf("%c",str[i]-32); }else printf(" "); } return 0; } </pre>

avatar markeronly
@markeronly

378 Kontribusi 230 Poin

Dipost 6 tahun yang lalu

Login untuk ikut Jawaban