在c++中,将整型变量附加到char变量后

visual append an integer variable to char variable in C++

本文关键字:char 变量 整型变量 c++      更新时间:2023-10-16

我是c++新手,我有一个小项目,我应该从用户那里得到10个数字,然后显示在结果中。

所以我写了这段代码:

#include<stdio.h>
int main() {
    int counter=1,
        allNumbers;
    float score;
    while(counter <= 10) {
        scanf("%f",&score);
        counter++;
    }
    printf("Your entered numbers are : %sn",allNumber);
}

例如user enter 2 3 80 50…我想看第2、3、80、50……在结果。

但我不知道该怎么办!

我不知道你在用什么书,但作者似乎在进入c++领域之前教你C。不讨论他们的动机,在讨论理想的c++解决方案之前,我将写一个类似于您的代码风格的答案。

  • 你需要一个数组来存储你的数字:double score[10]
  • 数组从0开始索引,因此将counter更改为从0开始并到9(而不是像现在这样从1开始并到10)
  • 由于score是一个数组,所以在scanf
  • 的调用中使用&score[count]
  • 要打印十个数字,还需要一个循环。你需要一个标志来告诉你是否需要在你打印的数字后面加一个逗号。在循环后添加一个printf("n")

就"理想的"c++解决方案而言,它应该接近于这个:

istream_iterator<double> eos;
istream_iterator<double> iit(cin); 
vector<double> score;
copy(iit, eos, back_inserter(score));
ostream_iterator<double> oit (cout, ", ");
copy(score.begin(), score.end(), oit);
但是,在您学习c++标准库及其迭代器的使用之前,讨论它仍然是困难的。

可以通过声明一个包含十个数字的数组来实现。你的代码在这里:

#include <stdio.h>
int main() {
int counter=0;
float allNumbers[10];
while(counter < 10) {
    scanf("%f",&allNumbers[counter]);
    counter++;
        }
printf("Your entered numbers are : n");
counter=0;
while(counter < 10) {
    printf("%f , ",allNumbers[counter]);
    counter++;
        }
}