2010-07-28 11 views
0

J'ai obtenu ce code .. maintenant la partie difficile est mon prof m'a demandé de faire un programme qui demande à l'utilisateur d'entrer un mot en majuscules. Le problème est, elle veut que le programme transforme automatiquement chaque lettre entrée en majuscule même si le clavier de l'utilisateur n'est pas en mode capslock .. donc je ne sais pas ce qui ne va vraiment pas avec mon programme ... quelqu'un ?? Aidez-moi?? je vraiment besoin .. merci ..convertir majuscules en minuscules en C .. (un défi)

#include<stdio.h> 
#include<ctype.h> 
#include<string.h> 
typedef char String[100]; 
main() 
{ 
    char Resp; 
    int l, x = 0, asc = 13; 
    String s, word1; 
    clrscr(); 
    do { 
     printf("\n1st uppercased word: "); 
     do { 
      s[0] = getch(); 
      word1[x++] = s[0]; 
      strupr(s); 
      strcat(s, "\0"); 
      puts(s); 
     } while (s[0] != (char) asc); 
     strcat(word1, "\0"); 

     printf("\n\n1st word in lowercase: "); 
     for (l = 0; l < strlen(word1); l++) 
      putchar(tolower(word1[l])); 

     printf("\nDo you want to continue?[Y/N]: "); 
     Resp = getche(); 
    } while (toupper(Resp) == 'Y'); 

    getch(); 
    return 0; 
} 
+0

Vous devriez dire à votre professeur ce qu'il voulait dire par cette affirmation parce que cela n'a aucun sens de dire quelque chose comme ça. De plus, votre code est vraiment difficile à lire avec indentation. –

+0

@thyrgle: C'était logique pour moi --- vérifiez ma réponse. – Jacob

+0

@Jacob: Ohh ... Ok ... Pourtant, j'ai interprété comme vous avez besoin de faire un programme qui convertit tout en majuscules. Maintenant, je veux que vous vous assuriez que tout cela fonctionne sans que l'utilisateur appuie sur le verrouillage. –

Répondre

11
  1. obtenir une lettre de l'utilisateur avec getch()
  2. Convertir en majuscules avec toupper()
  3. Affichage avec putch()
  4. Aller à 1

Vous pouvez ajouter un point d'arrêt --- vérifiez si le caractère est la touche de retour et quittez.

Questions connexes