任何人都知道如何(幸运的话)搜索数组中的特定元素吗?我已经尝试了一切-除了正确的方法。
我的两个对应的字符数组看起来像这样:
char array1[10][10]={"Alpha","Bravo","Charlie","Delta","Alpha2"}; //room for some more here
char array2[10][10]={"123456","234567","345678","456789","567890"}; //room for some more here
我可以通过常规的for循环将它们全部打印出来:
for (i=0;i<10;i++){
printf("%s %s \n", &array1[i], &array2[i]);
}
但是,假设我要执行相同的循环,并且仅打印以'A'开头的两个元素(第一个和最后一个)。我以为这样的事情会起作用
do {
for (i=0;i<10;i++){
printf("Name: %s\nDate: %s\n\n", &array1[i][x], &array2[i]);
}
} while (x=='A');
这是相同的for循环,除了我在&array1后面加上了额外的[x]来告诉我'x'必须匹配array1的每个元素中的第一个字符(例如,它只会在(x =='A ')-这是我想要的元素中的第一个字母。
但这没有任何好处。
有人有更好的解决方案吗?我也尝试过for循环的其他变体,但是没有运气。我现在被困住了...
#include <stdio.h>
int main(void) {
char array1[10][10]={"Alpha","Bravo","Charlie","Delta","Alpha2"}; //room for some more here
char array2[10][10]={"123456","234567","345678","456789","567890"}; //room for some more here
int i;
for (i=0;i<10;i++){
if(array1[i][0]=='A') //add this statement in your code
printf("%s %s \n", &array1[i], &array2[i]);
}
return 0;
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句