-6
誰かが私がここで間違っていると言うことができますか?C - 2番目の文字列以降を反復できません
問題の声明: https://practice.geeksforgeeks.org/problems/good-or-bad-string/0
マイコード:
#include <stdio.h>
#include<string.h>
int is_vowel(char a) {
if(a==97||a==101||a==105||a==111||a==117){
return(1);
}
return(0);
}
int main() {
//code
int t,i;
scanf("%d",&t);
for(i=0;i<t;i++){
char str[100];
scanf("%s",str);
printf("%s",str);
int c_cnsnt=0;
int c_vwl=0;
int g_b=1;//suppose good
for(int j=0;j<strlen(str);j++){
//("%c",str[j]);
int num=is_vowel(str[j]);
printf("Debug %c %d %d\n",str[j],num,strlen(str));
if(is_vowel(str[j])) {
c_vwl++;
}
else { c_cnsnt++;}
if(c_vwl==c_cnsnt){
c_cnsnt=0;
c_vwl=0;
}
else {
if(c_vwl>5||c_cnsnt>=3){
g_b=0;
break;
}
}
}
printf("%d\n",g_b);
}
return 0;
}
サンプル
入力:
2
aeioup??
bcdaeiou??
出力:
1
0
私のソリューションへのリンク:
https://code.hackerearth.com/9bca55K
はなぜループのための第二の文字列では動作しませんか?
私は自分のコードを改善しましたが、今は最初のtcに対して正しいansを与えていますが、ループは2番目の文字列に対して繰り返しませんか? – confused
https://code.hackerearth.com/9bca55K – confused
をご覧ください。ありがとうございました – confused