日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

puts遇到空格无法输出_输入一句英文,只包含字母和空格,如何输出这句英文中.....-黑马程序员技术交流社区...

發布時間:2024/9/19 编程问答 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 puts遇到空格无法输出_输入一句英文,只包含字母和空格,如何输出这句英文中.....-黑马程序员技术交流社区... 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

//輸入一句英文,只包含字母和空格,如何輸出這句英文中的最長單詞?再把每個單詞的首字母轉換成大寫!

#include

#include

int main(int argc, const char * argv[])

{

//讓用戶輸入一段英文,

printf("請輸入一段英文:\n");

char chr[50]={'a'};

fgets(chr, 50, stdin);

if (chr[strlen(chr)-1]=='\n')

{

chr[strlen(chr)-1]=' ';

}

//聲明一個二維字符數組用來保存字符單詞

char ch[10][20]={'a'};

//聲明一個數組用來保存/n的位置

int num[10] ={0};

//這里的思路是:讓num[0]=0,方便下一步,將英文段中的空格下標全部找出來給整形數組賦值,通過空格的下標來將英文段的每個字母賦值給字符二維數組;

int j = 0;

for (int i = 0; i < 50; i++)

{

if (chr[i]==' ')

{

num[++j]=i;

}

}

//將一段英文中的內容賦值到二維數組中

for (int i = 1; i <= 10; i++)

{

int k = 0;//定義一個變量,每次讓k從0開始

for (int j = num[i-1]; j

{

if (chr[j]!=' ')

{

ch[i-1][k++]=chr[j];

}

}

}

//聲明一個指針變量用來指向二維數組的第0個元素,找出整個二維數組中的最長

char *t = ch[0];//因為字符數組的地址是常量無法改變,聲明一個字符指針,首先指向第0行和其他行的字符串作比較,如果大于第0行就將長的字符串地址賦值給指針變量,輸出指針變量就是最長字符串

for (int i = 1; i< 10; i++)

{

if (strlen(t)

{

t = ch[i];

}

}

printf("最長單詞為:%s\n",t);

//轉換為大寫的思路就簡單了,找到每一行的每一列的第一個元素,將他們減去32,就得到他們大寫,再打印出來;

for (int i = 0; i < 10; i++)

{

*ch[i]=*ch[i]-32;

}

//循環輸出時,會打印出其他代碼,可以選擇性的打印

for (int i = 0; i< 10; i++)

{

if (*ch[i]!='\340')

{

printf("%s ",ch[i]);

}

}

printf("\n");

return 0;

}

總結

以上是生活随笔為你收集整理的puts遇到空格无法输出_输入一句英文,只包含字母和空格,如何输出这句英文中.....-黑马程序员技术交流社区...的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。