小编Khu*_*boo的帖子

在Linux平台上声明c中的bool变量

如何在Linux平台上运行的C中声明bool数据类型的变量.我尝试了以下但它给出了一个错误:

#include<stdio.h>
#include<string.h>

bool factors[1000]
void main()
{
}
Run Code Online (Sandbox Code Playgroud)

c variables boolean declaration

14
推荐指数
2
解决办法
8万
查看次数

在c中显示字符的ASCII值

我接受了一个角色作为用户的输入.我想打印该字符的ASCII值作为输出.如果不使用任何预定义的函数(如果存在),我怎么能这样做呢?

c ascii

6
推荐指数
2
解决办法
3万
查看次数

在c中查找复合数的最大素数因子

我接受一个复合数作为输入.我想打印它的所有因素,也是这个数字的最大素数因子.我写了以下代码.它完全正常,直到数字51.但是如果输入任何大于51的数字,则显示错误的输出.我怎样才能纠正我的代码?

#include<stdio.h>
void main()
{
 int i, j, b=2, c;
 printf("\nEnter a composite number: ");
 scanf("%d", &c);
 printf("Factors: ");

 for(i=1; i<=c/2; i++)
 {
  if(c%i==0)
  {
   printf("%d ", i);
   for(j=1; j<=i; j++)
   {
    if(i%j > 0)
    {
     b = i;
    }
    if(b%3==0)
     b = 3;
    else if(b%2==0)
     b = 2;
    else if(b%5==0)
     b = 5;
   }
  }
 }
 printf("%d\nLargest prime factor: %d\n", c, b);
}
Run Code Online (Sandbox Code Playgroud)

c prime-factoring

3
推荐指数
1
解决办法
5864
查看次数

在c中检查回文串

我接受一个字符串作为命令行参数.我想检查输入的字符串是否是回文并打印结果.我写了以下代码.但它显示所有输入的结果"不是回文".

#include<stdio.h>
#include<string.h>

int main(int argc, char argv[20]) {
    int i;
    int l = strlen(argv);    
    char str[20];
    bzero(str, 20);

    for(i=0; i<l; i++)
    {
        str[i] = argv[i+2];
    } 
    int flag;
    int len = strlen(str);
    for(i=0; i< len/2; i++)
    {
        if(str[i] == str[len - (i+2)])
        {
            flag = 0;
        }
        else
        {
            flag = 1;
            break;
        }
    }

    if(flag == 0)
        printf("Palindrome\n");
    else
        printf("Not a palindrome\n");
}
Run Code Online (Sandbox Code Playgroud)

c palindrome

3
推荐指数
1
解决办法
1万
查看次数