gpt4 book ai didi

C编程数组有帮助吗?

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

编写 C 程序,其中用户获取一个包含 n 个元素的数组,并查找其值是数字 5 的倍数的元素。这些元素及其值显示在屏幕上,如下所示:V[i]=a,V[j]=b,......我的代码:

#include <stdio.h>
int main ()

{
int n,i,sh=0;
int v[100];
printf ("Please write n:");
scanf("%d",&n);
for (i=0;i<n;i++)
{ printf ("\n Write the element %d",i);
scanf("%d",&v[i]);
}
if (v[i] %5)
printf("The element is a multiple of 5",&sh);

return 0;
}

它编译完美,但是当我运行它并编写元素时,它什么也没做......我错在哪里?

编辑:

Yes,here it is :
Please write n: 4
Enter value 0: 10
Enter value 1 : 9
Enter value 2 : 20
Enter value 3:14

V[0]=10,V[2}=20

最佳答案

您的代码中有三个错误。

  • 第一if ( v[i] % 5 )在最后的循环之外,它只会尝试一次 i = n+1 。您将拥有out-of-bound problem .

  • 您搜索 5 的倍数所以条件应该是if ( v[i] % 5 == 0 ) .

  • 之后,您的printf也是错误的。

    printf("The element is a multiple of 5",&sh);
    // ^^^^

什么是sh ?为什么要在printf中使用它?您格式化字符串似乎不需要参数。

您的代码应如下所示:

for ( i=0; i < n; i++ )
{
printf( "\n Write the element %d", i );
scanf( "%d", &v[i] );
if ( v[i] % 5 == 0 )
printf( "The element is a multiple of 5" );
}

编辑:

对于输出示例,也许您应该执行另一个循环:

#include <stdio.h>

int main ()
{
int n, i, sh = 0; // I still don't for what sh is used ...
int v[100];

printf ("Please write n:");
scanf("%d",&n);

// Get the values
for ( i=0; i < n; i++ )
{
printf( "\n Write the element %d", i );
scanf( "%d", &v[i] );
}

// Print the values multiple of 5
for ( i=0; i < n; i++ )
{
if ( v[i] % 5 == 0 )
printf( "V[%d]=%d\n", i, v[i] );
}

return 0;
}

HERE该示例是否有效。

关于C编程数组有帮助吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18249367/

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