Postingan lainnya
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
4 Jawaban:
inputan "kode" nya apa? udah errornya kalo masuking angka, atau selalu ngeluarin error yang sama?
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)
coba pake %s aja sebagain string, bukan karakter%c di scanf nya
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 <stdio.h> #include<string.h> 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>