void main(){int i;int num[35],order[35];char flag;float a[35][6]={0};input(num,a);count(a);sort(a,order);printf("該程序可以篩選用戶指定課程成績在90分(含90分)以上,并且總分為前五名的學生情況,是否需要查詢?(y/n)");scanf("%s",&flag);if(flag=='y')serch(num,a,order);getchar();getchar();getchar();}這是我的主函數,另外的子函數沒考過來,問題在于scanf那句,如果我用%c,運行有邏輯問題,你輸入y后,好像程序根本就沒有輸入數據,我把%c換成%s就可以了,絕對無誤。以前也遇到好多這種情況,這樣換屢試不爽,可是我不清楚到底怎么回事。還有如果我把前面的子函數都刪掉,上了就scanf,用%c是可以的,不知道這是怎么回事。高手給指點一二
幫忙看看這個問題,關于C語言scanf函數輸入單個字符%c用%s代替?
慕婉清6462132
2021-07-07 17:07:34