gpt4 book ai didi

c - 如何在 switch-case 函数中使用数组?

转载 作者:行者123 更新时间:2023-11-30 20:30:03 27 4
gpt4 key购买 nike

我要求用户为数组 A1 提供 10 个整数值,然后将这些值打印到控制台屏幕上。我对另一个数组 B1 做了同样的事情。然后,我打印一个选项列表,例如选项 1:“按升序对 A1 值进行排序”。由于这是一项学校作业,我必须使用 switch-case 语句,但我在再次访问具有相同值的数组时遇到了麻烦,并且该程序没有为我提供甚至按 1 作为选项一的选项。

我尝试在网上理解一些代码,但没有成功,这就是我到目前为止所得到的。

  int option;

scanf("%d", &option);

switch (option)
{
case '1':

for( int i= 0; i<10; i++)
{
for(int x = i +1; x<10; x++)
{
if (a[x]<a[i])
{
int temp = a[i];
a[i]= a[x];
a[x] = temp;
}
}
{
printf("\n\n Ascending Order For A1: ");
for (int i = 0; i < 10; i++)
{
printf(" %d ", a[i]);

}

THIS IS HOW FAR I AM WITH THE OUTPUT <<

请为 A1 输入 10 个值:2 3 4 5 9 8 7 6 4 8

为 A1 选择的 10 个值:2 3 4 5 9 8 7 6 4 8

请为 B2 输入 10 个值:4 3 7 2 6 8 9 5 8 12

为 B2 选择的 10 个值:4 3 7 2 6 8 9 5 8 12

<小时/>
  • 请选择以下选项之一:*

  • 1:按升序对 A1 值进行排序 *

  • 2:将 B1 值降序排序 *
  • 3:计算 A1 和 B1 的元素之和 *
  • 4:从A1的元素中减去B1的元素*
  • 5:终止程序(退出)*
<小时/>

1 <<<<<<<<<< 这应该执行选项 1,并按升序输出 A1 的值。

程序以退出代码结束:0

最佳答案

您将输入存储在 int 值中,但在您的情况下您使用的是 char,因此 1(int) 是不等于 1(char),这就是 case '1': 未执行的原因。尝试一下

情况1:

之所以不要求输入进入 1 进行排序,可能是缓冲区中有以前输入的内容,没有其余代码很难帮助你与那部分。

关于c - 如何在 switch-case 函数中使用数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55427897/

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