查找词同第一个字符 [英] Finding words with the same first character

查看:153
本文介绍了查找词同第一个字符的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我做了一个数组,现在我想比较两个字符串的第一个符号,如果这是真的来打印字。但我有一个问题:

I've made an array and now I'm trying to compare first symbols of two strings and if it's true to print that word. But I got a problem:

不兼容的类型assignmentof诠释到字符[20]

Incompatible types in assignmentof "int" to "char"[20]"

下面是code:

for ( wordmas= 0; i < character; i++ )
{
  do {
    if (!strncmp(wordmas[i], character, 1)
  }
  puts (wordmas[i]);
}

也许你们能帮助我吗?

Maybe you guys could help me?

推荐答案

有您的code几个问题:

There are several issues with your code:


  • 您不需要 STRNCMP 来比较的第一个字符 - 你需要的是一个简单的 == !=

  • 使用不要没有,而是一个语法错误;你并不需要一个嵌套循环来解决问题。

  • 字符用于限制的进展我在外环,同时也比较第一在 wordmas字的字符[I] 。这很可能是一个错误。

  • 假设 wordmas 是一个数组,在循环头分配给 wordmas 是错误的。

  • You do not need strncmp to compare the first character - all you need is a simple == or !=.
  • Using a do without a while is a syntax error; you do not need a nested loop to solve your problem.
  • character is used to limit the progress of i in the outer loop, and also to compare to the first character of a word in wordmas[i]. This is very likely a mistake.
  • Assuming that wordmas is an array, assigning to wordmas in the loop header is wrong.

在code查找单词,在一个特定的字符开始应该是这样的:

The code to look for words that start in a specific character should look like this:

char wordmas[20][20];
... // read 20 words into wordmas
char ch = 'a'; // Look for all words that start in 'a'
// Go through the 20 words in an array
for (int i = 0 ; i != 20 ; i++) {
    // Compare the first characters
    if (wordmas[i][0] == ch) {
        ... // The word wordmas[i] starts in 'a'
    }
}

这篇关于查找词同第一个字符的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆