-3

人のフルネーム(スペースで区切られた名と姓)をキーボードから読み取ると想定されるC ++コードを作成し、名前の最初の文字が大文字に変更されていない場合は大文字に変更し、名前を表示します画面上。

問題は、コードをコンパイルしようとするたびに、入力した名前が画面に表示されますが、名前のリストの最初の名前は含まれていませんが、入力した姓を取得します。たとえば、名前として「josh fred simon」を入力し、姓として「Pirch」を入力すると、プログラムは名前「josh」なしで「fred simon Pirch」のみを出力します。

もう一つは、大文字で入力されていない場合、入力された名前の最初の文字を大文字に変更する方法??

これは私のコードのコピーです >>

#include<conio.h>  
#include<cctype>
#include<iostream>
#include<stdio.h>
#include<string>

using namespace std;

// main entry point for the program  
void main() {

  char FirstName[20];
  char SurName[20];

  cout << "Program to read the information about a person";  
  cout << "\nEnter your First Names please\n";  

  cin >> FirstName;  

  gets(FirstName);

  cout << "\nEnter your Surname please\n";      
  cin >> SurName;

  //Now displaying the information      
  cout<<"Details of Person\n\n";

  cout<<"Full Name of the Person: "<< FirstName << " " << SurName << endl;

  getch();  
}      
4

1 に答える 1

2

最初に を使用し、次に を使用してFirstName2 回読み取ります。cingets

cin >> FirstName;  
gets(FirstName); // remove this line

また、コードで単一の IO ライブラリを使用します。<iostream>C++ コードに使用し、削除する<stdio.h>

于 2013-10-20T20:44:27.520 に答える