1) 有一行文字,要求將其中的每個單詞的首字母由小寫改為大寫,假定單詞之間以一個以上空格分隔。
補充:注意是用c語言來解答,不是c++的那種、你好!
這個題目不難,有以下幾個難點:
1、如何將第一個單詞的首字母變成一個大寫?
2、如何判斷下一個單詞的首字母?
3、如果兩個單詞之間有多個空格怎麼辦?
解決了這幾個問題,這個問題就迎刃而解了,呵呵,加油啊!
參考代碼:
#include "stdio.h"
#include "string.h"
int main()
{
char a[100];
int i,N;
printf("input some words:\n");
gets(a);
N=strlen(a);
a[0]-=32;
for(i=0;i<N;i++)
{
if(a[i]==' '&&a[i+1]!=' ')
a[i+1]-=32;
}
printf("the result is:\n");
puts(a);
return 0;
}
如有不解可以追問,謝謝!祝學習愉快!