#include <
stdio.h>
int main(int argc, char *argv[])
{
int a[20] = {0};
int i = 0;
for (i = 0; i < 20; i++)
{
printf("输入第%d个数:\n", i+1);
scanf("%d", &a[i]);
}
for (i = 0; i < 20; i++)
{
if (0 == a[i]%2 && 0 == i%2)
{
printf("下标:%d 值:%d\n", i, a[i]);
}
}
return 0;
}
追问如果改成20个数一起输入 不用每个都显示:输入第%d个数 该怎么改?
追答#include <stdio.h>
#include <string.h>
int main(int argc, char *argv[])
{
int a[20] = {0};
char buff[256] = {0};
char *str = NULL;
int i = 0;
fgets(buff, 256, stdin);
str = strtok(buff, " ");
while(str)
{
str = strtok(NULL, " ");
if (str && i < 20)
{
sscanf(str, "%d", &a[i++]);
}
}
for (i = 0; i < 20; i++)
{
if (0 == a[i]%2 && 0 == i%2)
{
printf("下标:%d 值:%d\n", i, a[i]);
}
}
return 0;
}