#include<stdio.h>
#include<string.h>
int main(){
int n, a = 0;
char str[300];
scanf("%d\n", &n);
for(int i = 0; i < n; i++){
scanf("%s", str);
printf("Case %d: ", ++a);
int temp = 0;//印出英文字母個數
char ch; //儲存英文字母
for(int i = 0; i < strlen(str); i++){
if(str[i] >= 'A' && str[i] <= 'Z'){
for(int k = 0; k < temp; k++){
printf("%c", ch);
}
ch = str[i];
}
if(str[i] >= '0' && str[i] <= '9'){
temp = temp * 10 + str[i] - '0';
}
}
for(int k = 0; k < temp ; k++){
printf("%c", ch);
}
printf("\n");
}
}
當測資的字串只有一種英文字母或是字串中開頭第一個英文字母時,可以印出正確英文字母數量,
但如果要印出字串中的第二個開始的英文字母時就會出錯,請問如何修改?
for(int k = 0; k < temp; k++){
printf("%c", ch);
}
當測資的字串只有一種英文字母或是字串中開頭第一個英文字母時,可以印出正確英文字母數量,
但如果要印出字串中的第二個開始的英文字母時就會出錯,請問如何修改?
輸出連續相同的字母後要把temp設為0
for(int k = 0; k < temp; k++){
printf("%c", ch);
}
當測資的字串只有一種英文字母或是字串中開頭第一個英文字母時,可以印出正確英文字母數量,
但如果要印出字串中的第二個開始的英文字母時就會出錯,請問如何修改?
輸出連續相同的字母後要把temp設為0
謝謝你,我搞定了