题目:小林和小红在做一个匹配单词的小游戏,小林给出N个单词和一个字符串T,小红需要在给出的单词里面找出所有以T为前缀的单词,并按字典序进行排序。代码运行不出来,能帮忙看看哪里错了吗
#include<stdio.h>
#include<vector>
#include<string.h>
using namespace std;
int main(){
int N;
scanf("%d",&N);
char a[N]={};
char str[100];
for(int i=0;i<N;i++){
scanf("%s\n",&str);
a[i]=*str;
}
char str2[100];
scanf("%s",&str2);
int n = strlen(str2);
vector<char>v;
for(int i=0;i<N;i++){
int j=0;
while(j<n&&str2[j]==str[j]){
j++;
}
if(j==n){
v.push_back(a[i]);
}
}//选出满足条件的字符串
for(int k=0;k<v.size();k++){//字典序排序
strcmp((char*)v[k],(char*)v[k+1]);
if(1){
printf("%s\n",v[k]);
}
else if(-1){
printf("%s\n",v[k+1]);
}
else{
printf("No Result!");
}
}
}