gpt4 book ai didi

c++ - 排序后奇怪的输出

转载 作者:太空宇宙 更新时间:2023-11-04 13:34:08 25 4
gpt4 key购买 nike

排序后我得到奇怪的输出

如果使用 scanf 提供输入,则该行会导致错误。输出以某种奇怪的方式排列。 (我已经评论了该行)

如果我使用 cin 输出就没问题。在线编译器中也不存在该问题。同样的事情发生在不同的计算机上。

例如,如果我输入

5
23 44 32 2 233

输出是

32 23 233 2 44

代码:

#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
#include <iomanip>


using namespace std;

int main()
{
unsigned long long int n=0,i=0;

// cin>>n;
scanf("%llu",&n);

unsigned long long int arr[n];

for(i=0;i<n;i++)
{
// cin>>arr[i]; //if use this no error but if use next line it is
scanf("%llu",&arr[i]); //causing error
}

sort(arr,arr+n);

for(i=0;i<n;i++)
{
// cout<<arr[i]<<" ";
printf("%llu ",arr[i]);
}
return 0;
}

最佳答案

如果使用 cin 有帮助,那么 %llu 可能是给定指针的错误标志。检查你的编译器的文档,看看 long long 对它意味着什么,并检查你的库的 printf/scanf 文档。

关于c++ - 排序后奇怪的输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30298590/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com