21xrx.com
2024-09-20 06:05:00 Friday
登录
文章检索 我的文章 写文章
C语言编程例题及解析
2023-06-16 10:50:02 深夜i     --     --
C语言 素数 循环

C语言是一种通用的、面向过程的计算机编程语言。因其简洁、高效、功能强大而广泛应用于系统软件、驱动、嵌入式系统等领域。但对于初学者而言,C语言的语法、控制流、函数等内容会显得比较复杂,因此例题演练是巩固和提高C语言编程的有效方法。

下面我们列举了一些C语言编程例题及解析,希望对大家的C语言学习有所帮助:

1.求解n以内的素数(质数):

代码实现:


#include

void main(){

  int n;

  printf("请输入要求解的素数最大值:");

  scanf("%d",&n);

  printf("2,");

  for(int i=3;i<=n;i++){

    int flag=1;

    for(int j=2;j

      if(i%j==0)

        flag=0;

        break;

      

    }

    if(flag==1){

      printf("%d,",i);

    }

  }

}

解析:

首先,素数是指只能被1和自身整除的正整数,比如2,3,5,7,11,13…… 我们可以通过枚举2~n之间的每个数字,判断其是否为素数,最后输出所有素数。

在上面的代码中,我们使用两重循环实现:

外层循环依次枚举2~n之间的每个数字

内层循环依次判断这个数字是否可以被2~这个数字本身-1之间的任何一个数字整除,如果能整除,则不是素数,退出内层循环。

最后,我们用flag来保存这个数字是否是素数,如果flag=1,就输出这个数字。

2.倒序输出字符串:

代码实现:


#include

#include

void main(){

  char str[100];

  printf("请输入一个字符串:");

  gets(str); //输入字符串,也可以用scanf("%s",str);

  int len=strlen(str);

  printf("倒序输出该字符串为:");

  for(int i=len-1;i>=0;i--){

    printf("%c",str[i]);

  }

}

解析:

我们可以定义一个字符型数组,输入一个字符串,利用字符串库中的strlen函数计算该字符串的长度,然后从尾到头依次输出每个字符。

需要注意的是,输入字符串时,gets函数可以读取一整行字符串,包括空格和换行符;而scanf("%s",str)只能读取到第一个空格为止。

关键词:C语言,字符串,gets函数,strlen函数

3.交换两个变量的值:

代码实现:


#include

void swap(int *a,int *b){

  int temp=*a;

  *a=*b;

  *b=temp;

}

void main(){

  int a=2,b=3;

  printf("交换前a=%d,b=%d\n",a,b);

  swap(&a,&b);

  printf("交换后a=%d,b=%d\n",a,b);

}

解析:

交换两个变量的值,经常使用到,可以使用中间变量实现,也可以使用函数传递指针实现。

上面的代码是使用函数传递指针实现的。swap函数中,a和b是指针变量,指向main函数中定义的变量a和b的地址。函数体中,我们利用中间变量temp交换a和b的值,最后,a和b的值已经被交换。

关键词:C语言,交换变量,指针

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复