###実現したいこと
2つの文字列を入力して比較する。
###問題点
sは順調に入力できるのだがtをいれようと思ったら、入力できなくなる。
その原因を教えてください。
文字列を入力してください s: AbcDe t: <-ここで文字が打てなくなる
###コード
C
1//文字列の比較1 2 3#include<stdio.h> 4#include<ctype.h> 5 6int main(void) 7{ 8 char s[5],t[5]; 9 printf("文字列を入力してください\n"); 10 printf("s: "); 11 fgets(s,5,stdin); 12 printf("t: "); 13 fgets(t,5,stdin); 14 15 int cnt,cnsup,cnlow,cdiff=0; 16 int i; 17 while(1){ 18 if(s[i]==t[i]){ //小文字大文字もすべて一致 19 cnt++; 20 } 21 if(isupper(s[i])){ //s[i]が大文字でt[i]が小文字の時 22 if(islower(t[i])){ 23 cnsup++; 24 } 25 } 26 if(islower(s[i])){ //s[i]が小文字でt[i]が大文字の時 27 if(isupper(t[i])){ 28 cnlow++; 29 } 30 } 31 if(s[i]!=t[i]){ //もはや文字が違う時 32 cdiff++; 33 } 34 } 35 if(cnt==5){ 36 printf("same\n"); 37 }else if(cnsup>0||cnlow>0){ 38 printf("case-insensitive\n"); 39 }else if(cdiff>0){ 40 printf("differnt\n"); 41 } 42 43 return 0; 44}
回答3件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/15 12:44