我需要製作一個程序,我可以在其中插入一行文字,程序將使所有文字像第一個一樣(大寫小寫)。大寫字母和小寫字母
例子:
插入線 - 利羣大廳fameee類
和程序的輸出應該是: - 利羣大廳FamEee類
如何檢查完整的單詞,並走出去,什麼符號是 - 上限還是下限?然後用相同的方案製作所有的單詞。
我需要製作一個程序,我可以在其中插入一行文字,程序將使所有文字像第一個一樣(大寫小寫)。大寫字母和小寫字母
例子:
插入線 - 利羣大廳fameee類
和程序的輸出應該是: - 利羣大廳FamEee類
如何檢查完整的單詞,並走出去,什麼符號是 - 上限還是下限?然後用相同的方案製作所有的單詞。
[評論] 創建一個布爾數組並捕獲第一個單詞的每個字符的大小寫信息。使用相同的布爾數組,格式化剩餘的單詞。這是我現在可以幫助你的一切。您可以嘗試編寫程序並返回論壇,以便獲得更多回復。因爲我沒有權限發表評論時加入我的評論在回答部分
[答案] 在這裏你去...
#include <stdio.h>
#include <string.h>
int main() {
char inputStr[] = "AbbA hall fameee class";
char bool_arr[50];
char *ptr;
int len = 0;
int loopcnt = 0;
int i = 0;
printf("Input Str: %s\n", inputStr);
ptr = strtok(inputStr, " ");
len = strlen(ptr);
for(i = 0; i < len; i++) {
if(toupper(ptr[i]) != ptr[i]) {
bool_arr[i] = 0; //Lower case
}
else {
bool_arr[i] = 1; //Upper case
}
}
while(ptr != NULL) {
if(strlen(ptr) < len) {
loopcnt = strlen(ptr);
}
else {
loopcnt = len;
}
for(i = 0; i < loopcnt; i++) {
if(bool_arr[i] == 0 &&
(tolower(ptr[i]) != ptr[i])) {
ptr[i] = tolower(ptr[i]);
}
if(bool_arr[i] == 1 &&
(toupper(ptr[i]) != ptr[i])) {
ptr[i] = toupper(ptr[i]);
}
}
printf("%s ", ptr);
ptr = strtok(NULL, " ");
}
}
謝謝。太棒了! – Yenots1
@ Yenots1:是的,現在你只需要複製它並粘貼到你的作業!你今天獲得了一項有用的技能! – usr2564301
哦,孩子........ –
這不是「爲我做作業」網站。請向我們展示您的努力以及您卡住的位置,並且我們非常樂意幫助 –
Yenots1,我相信英語不是您的第一語言,但您可以再試一次這種措辭嗎?另外,這個問題並不是現實話題,因爲你沒有說出你所嘗試過的東西,只是一個需要解決的問題。 – Gray