Разрешить пользователю вводить имя и фамилию; отобразить полное имя обратно пользователю (первый + последний)

0

Я знаю, что это что-то очень простое, но я не могу понять, что мне не хватает или что-то не так. Я думаю, что это может быть что-то с переменными char. Это то, что у меня есть до сих пор:

#include<stdio.h> 
#include "stdafx.h"
#include<iostream>

using namespace std;

int main() 
{ 
char fname[20],lname[20];

cout<<"Please enter your First Name:";
cin>>"fname";
cout<<"Please enter your Last Name:";
cin>>"lname";

cout<<"Your full name is:"<<fname<<lname<<endl;

int a,b = 0;

for(a=0;a<=50;a++) 
{ 
if(a%3!=0&&a%4!=0&&a%5!=0) 
{ 
printf(" %d",a);
b++;
} 
} 
printf("\nNos of counts%d",b); 

} 
Теги:
arrays
char

2 ответа

1
Лучший ответ
cin>>"fname";

Вы пытаетесь извлечь в строковый литерал "fname". Кажется, вы хотели извлечь из переменной fname:

cin>>fname;
  • 0
    Geeenius! Спасибо, это сработало отлично.
  • 2
    Я в точности как Эйнштейн. Не забудьте принять ответ, когда сможете.
0

Просто собираюсь сделать пару предложений, поскольку Джозеф ответил на вопрос. Добавьте пробел между именем и фамилией, чтобы не печатать там имя как одно слово.

cout <<"Your full name is: "<< fname << ' '  << lname << endl;

при объявлении b в 0 вы ничего не назначали.

int a = 0, b = 0;

и cout намного мощнее, чем printf, вы не должны использовать синтаксис Си в C++, если нет другого варианта.

cout << a << ' ';

а также

cout  << "\nNos of counts " << b;
  • 0
    Спасибо, я вставил их. В конце программы есть 21, кто-нибудь знает, как от него избавиться? int main () {char fname [20], lname [20]; cout << "... тер ваше имя:"; CIN >> имя_файла; cout << "Пожалуйста, введите вашу фамилию:"; CIN >> LNAME; соиЬ << епсИ; cout << "Ваше полное имя:" << '' << fname << '' << lname << endl; соиЬ << епсИ; cout << "Ниже приведен список целых чисел от 1 до 50, который не содержит делимых на 3, 4 и 5 чисел:" << endl; соиЬ << епсИ; int a = 0, b = 0; for (a = 0; a <= 50; a ++) {if (a% 3! = 0 && a% 4! = 0 && a% 5! = 0) {cout << a << ''; б ++; }} cout << b << endl; }
  • 0
    Вы все еще сталкиваетесь с этой проблемой?

Ещё вопросы

Сообщество Overcoder
Наверх
Меню