1. 程式人生 > 實用技巧 >java異常處理的機制有哪些

java異常處理的機制有哪些

技術標籤:C語言函式scanf_s函式

疑難問題(8.8)

時間:2020/12/12

執行程式:VS2019

#include<stdio.h>
int main()
{
	int i=0, j=0, k=0, l=0, m=0, n=0;
	char str[20];
	printf("請輸入文字:\n");
	scanf_s("%s",str,sizeof(str));	
	while ((str[i] != '\n')&&(i<=20))
	{
		if ((str[i] >= 'A') && (str[i] <= 'Z'))
			n++;
		else if ((str[i] >= 'a') && (str[i] <= 'z'))
			j++;
		else if (str[i] == ' ')
			k++;
		else if ((str[i] >= '0') && (str[i] <= '9'))
			l++;
		else
			m++;
		i++;
	}
	printf("%d個大寫字母\n%d個小寫字母\n%d個空格\n%d個數字\n%d個特殊字元\n", n, j, k, l, m);
	return 0;
}

執行結果:

在這裡插入圖片描述

問題:將後面沒有字元的算成特殊字元且不接受空格符
解決:scanf無法接受空格符,改用gets函式,並加上str[i]!=’\0’條件

執行結果如圖
在這裡插入圖片描述