我需要输入两个字符串,第一个是任何单词,第二个字符串是前一个字符串的一部分,我需要输出第二个字符串出现的次数.例如:String 1 = CATSATONTHEMAT String 2 = AT.输出为3,因为AT在CATSATONTHEMAT中出现三次.这是我的代码:
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String word8 = sc.next();
String word9 = sc.next();
int occurences = word8.indexOf(word9);
System.out.println(occurences);
}
Run Code Online (Sandbox Code Playgroud)
它1在我使用此代码时输出.
例如,如果输入的字符串是INTERLEAVED,那么第一个字符串将是ITREVD,第二个字符串将是NELAE.我是否需要将用户输入的字符串放入字符数组并从中分配值?
我正在尝试创建一个switch语句,它将一个单词输入一个数组,然后通过switch语句抛出每个字母,并为每个字母分配一个点,具体取决于它是什么字母,并给出该单词的最终点值,我似乎无法使阵列部分正确.任何帮助,将不胜感激!
int main(){
int letter_points = 0;
char word[7];
int word_length = 7;
int i;
printf("Enter a Word\n");
scanf("%s", word);
for(i = 0; i < word_length; i++){
switch(word){
//1 point
case 'A':
case 'E':
case 'I':
case 'L':
case 'N':
case 'O':
case 'R':
case 'S':
case 'T':
case 'U':
letter_points++;
break;
//2 points
case 'D':
case 'G':
letter_points += 2;
break;
//3 points
case 'B':
case 'C':
case 'M':
case 'P':
letter_points += 3;
break;
//4 points
case 'F': …Run Code Online (Sandbox Code Playgroud) 我正在尝试在用户输入的字符串中找到最小的单词.这是我到目前为止:
import java.util.*;
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String myText = sc.next();
String[] myWords = myText.split(" ");
int shortestLength,shortestLocation;
shortestLength=(myWords[0]).length();
shortestLocation=0;
for (int i=1;i<myWords.length;i++) {
if ((myWords[i]).length() < shortestLength) {
shortestLength=(myWords[i]).length();
shortestLocation=i;
}
}
System.out.println(myWords[shortestLocation]);
}
Run Code Online (Sandbox Code Playgroud)
如果我输入"SMALLEST WORD SHOULD BE A",输出应该是,A但它只是给我字符串的第一个单词.有任何想法吗?
对于我正在编写的程序的一部分,我需要搜索文本文件以查看文件中是否存在某个单词,如果存在,我想将其打印到屏幕上.为什么使用for循环进行字符串比较,例如:
int in_dictionary(char dict[][8], char word[], int size) {
int i;
for (i = 0; i<size; i++)
if (strcmp(word, dict[i]) == 0){
return 0;
}
else{
return 1;
}
}
Run Code Online (Sandbox Code Playgroud)
不适合我吗?